Category : Arduino

Arduino Zero / M0 用タイマー割り込みライブラリ

Arduino Zero M0 用タイマー割り込みライブラリ

Arduino Zero や Arduino M0 が出てだいぶ経ちますが、未だに使いこなせていません。
というよりも資料が少なく、ライブラリも対応していないものがあったりまだまだ使いづらいのが現状です。

そんな中、最近になってようやく Arduino Zero 用のタイマー割り込みライブラリを見つけました。
なんとAdafruitが出しているじゃありませんか。

「これを使えば・・・!」と思ってダウンロードしてみるも、エラーを吐いて使えないという。
そんなわけで「じゃあ作っちゃおう」ということで自分なりに作ってみました。

Arduinoでソフトウェアからリセットをかける方法

No Image

Arduinoは大抵の基板に搭載されているボタンを押したり、RESETピンをGNDに落としたりすることでリセットをかけることができます。
また、Arduinoにはオートリセット機能があり、プログラムを書き込むときやシリアル通信を開始したときにもリセットされます。

リセットがかかればスケッチの一番最初から実行されますし、変数も初期状態になります。
それをハードウェア上のボタンを押さずにソフトからリセットできるなら便利だと思いませんか?
ここではArduinoでソフトウェアリセットをかける様々な方法を紹介していきます。

ArduinoでFRAMを使ってみる

No Image

FRAMは日本語では強誘電体メモリと言います。
「RAM」とついていますが、不揮発性メモリの一種です。
FeRAMと呼ぶのが一般的らしいですが、FRAMなどとも呼ばれます。(サイプレスの商標です)

EEPROMよりも圧倒的に書き換え可能回数が多く、書き込み速度も速いのが特徴です。
そんなFRAMをArduinoで使ってみました。

TM1637のArduinoライブラリを6桁7セグに対応させる

No Image

TM1637は思った以上に便利で簡単に7セグを動かすことが出来ました。
7セグ+DPの6桁をこのIC1つで動かせるなんてすごい!と思っていたのですが、紹介したArduinoのライブラリでは4桁までしか対応できないことがわかりました。

また、DPを点灯させるのもちょっと苦労したのでそれらに対応できるように改造してみました。