以前、つまづいて出来なかったadafruit社の「I2C通信の7セグメント4桁ディスプレイ」に再チャレンジです。
配線4本は魅力的で、ここで諦めるわけにはいきません。
もう一度最初から見直します。
※2022年3月追記
現在、すでに情報が古く、サンプルスケッチをダウンロードしてコンパイルすると、エラーが出る可能性があります。
はんだ付けと配線
adafruit社のサイトに写真付きで丁寧にはんだ付けの仕方が掲載されています。
配線は図解はないものの、記載があります。
Connect CLK to the I2C clock – on Arduino UNO thats Analog #5, on the Leonardo it’s Digital #3, on the Mega it’s digital #21
Connect DAT to the I2C data – on Arduino UNO thats Analog #4, on the Leonardo it’s Digital #2, on the Mega it’s digital #20
Connect GND to common ground
Connect VCC+ to power – 5V is best but 3V also seems to work for 3V microcontrollers.
Arduino UNOの場合、アナログ入力4番、5番を使うようです。
出力ではないのがちょっと違和感・・・。
一応、fritzingで回路を描きます。
ここから日本語情報を求め、スイッチサイエンスの資料ページに行くと、つまづきます。
掲載されているライブラリが足りないためです。
adafruit社の説明ページを最後まで頑張って読むべきでした。
ライブラリのダウンロード
7セグメントディスプレイに数字を出すには、最低2つのライブラリが必要です。
それぞれ、GitHubからダウンロードします。
zipでダウンロードされます。
ライブラリをインクルード
2つのzipは、そのまま圧縮された状態でIDEへインクルードできます。
(Windows10 Arduino IDE 1.8.1環境)
IDEのメニューから
スケッチ > ツール >ライブラリをインクルード >.ZIP形式のライブラリをインストール
の順番で選びます。
サンプルスケッチで確認
環境の準備が整ったので、サンプルスケッチを使って、動作確認をします。
IDEのメニューから
ファイル > スケッチ例 >Adafruit LED Backpack Library >sevenseg
を選びます。
後はArduinoに書き込めば、数字が表示されます。
配線が4本、スッキリです。
任意の数字を表示させるプログラムも簡単です。
matrix.println(val); // valに表示させたい数字を入れる matrix.writeDisplay();
Arduinoで簡単に7セグメントディスプレイを使いたい場合、重宝とするでしょう。
反面、ライブラリの中身は私にとってブラックボックスなので、イレギュラーな対応では苦労することになります。
Arduino Unoではなく、ESPr Developerで使いたいのですが・・・きっと苦難の道のりになるでしょう。