Grove - LED マトリックスドライバー (HT16K33)
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
LEDマトリックスは低コストで、通常は簡単な数字や画像を表示するために使用されます。Grove - LED マトリックスドライバーはI2Cベースの製品で、準備された使いやすいライブラリを使用してLEDマトリックスを制御することができます。また、独自のライブラリを作成してニーズに合わせて制御することも可能です。この8×8 LEDマトリックスは、ドライバーボードから簡単に組み立てたり分解したりすることができるため、必要に応じて異なる色のLEDマトリックスディスプレイに変更するのが便利です。
バージョン
製品バージョン | 変更点 | リリース日 |
---|---|---|
Grove - LED マトリックスドライバー (HT16K33) | 初期リリース | 2018年9月 |
特徴
- 統合型RCオシレーター
- R/Wアドレス自動インクリメント
- 最大8×8パターン
- I2Cバスインターフェース
仕様
項目 | 値 |
---|---|
供給電圧 | 3.3V / 5V |
LEDマトリックスドット数 | 8 × 8 |
動作温度 | -40~85℃ |
保管温度 | -50~125℃ |
インターフェース | I2C |
I2Cアドレス | 0x70 (デフォルト) 0x71~0x77 (設定可能) |
サイズ | L: 40mm W: 40mm H: 17mm |
重量 | 8.8g |
パッケージサイズ | L: 140mm W: 90mm H: 18mm |
総重量 | 15g |
このGroveには、0x70から0x77までの8つの可能なI2Cアドレスがあります。デフォルトのI2Cアドレスは0x77です。以下の表に従って、いくつかのはんだ付けを行うことでI2Cアドレスを変更することができます。
I2Cアドレス | 接続 |
---|---|
0x70 | 切断: A0 A1 A2 |
0x71 | 切断: A1 A2, 接続: A0 |
0x72 | 切断: A0 A2, 接続: A1 |
0x73 | 切断: A2, 接続: A1 A0 |
0x74 | 切断: A0 A1, 接続: A2 |
0x75 | 切断: A1, 接続: A0 A2 |
0x76 | 切断: A0, 接続: A1 A2 |
0x77 | 接続: A0 A1 A2 |
例えば、アドレスを0x73に変更したい場合、パッドA1とA0を接続し、パッドA2を切断する必要があります。これにより、アドレスは0b01110011、つまり0x73になります。
主な用途
- 産業用制御インジケーター
- デジタル時計、温度計、カウンター、マルチメーター
- コンボセット
- VCRセット
- 計測器の表示
- その他の消費者向けアプリケーション
- LEDディスプレイ
ハードウェア概要
ピンアウト
対応プラットフォーム
Arduino | Raspberry Pi |
---|---|
はじめに
Arduinoで遊ぶ
必要な材料
Seeeduino V4.2 | Base Shield | Grove-LED Matrix Driver | matrix LED - Red |
---|---|---|---|
今すぐ購入 | 今すぐ購入 | 今すぐ購入 | 今すぐ購入 |
ステップ1. 赤いスクエアマトリックスLEDをGrove-LED Matrix Driverに接続します。
ステップ2. Grove-LED Matrix DriverをGrove-Base ShieldのI2Cポートに接続します。
ステップ3. Grove-Base ShieldをSeeeduinoに差し込みます。
ステップ4. USBケーブルを使用してSeeeduinoをPCに接続します。
ソフトウェア
Arduinoを初めて使用する場合は、開始前にArduinoの使い方を参照することを強くお勧めします。
ステップ1. GithubからGrove_LED_Matrix_Driver_HT16K33ライブラリをダウンロードします。
ステップ2. ライブラリのインストール方法を参照して、Arduino用のライブラリをインストールします。
ステップ3. Arduino IDEを再起動します。例を開きます。以下の3つの方法で開くことができます:
- Arduino IDEで直接開きます。パスは次の通りです:File --> Examples --> Grove - LED Matrix Driver(HT16K33 with 8*8 LED Matrix) --> display_bars。
- Arduino IDEで直接開きます。パスは次の通りです:File --> Examples --> Grove - LED Matrix Driver(HT16K33 with 8*8 LED Matrix) --> display_bars。
basic_demo.ino を開きます。これは XXXX\Arduino\libraries\Grove_LED_Matrix_Driver_HT16K33\examples\display_bars\display_bars.ino フォルダ内にあります。XXXX は Arduino IDE をインストールした場所です。
または、コードブロックの右上にあるアイコンをクリックして以下のコードをコピーし、Arduino IDE の新しいスケッチに貼り付けることもできます。
#include <Wire.h>
#include "Grove_LED_Matrix_Driver_HT16K33.h"
#include "SoftI2C.h"
#include "I2Cdev.h"
Default_IIC_Adapter hard_ware_iic;
Matrix_8x8 matrix;
void setup() {
hard_ware_iic.begin();
matrix.init(&hard_ware_iic,0x70);
matrix.setBrightness(0);
matrix.setBlinkRate(BLINK_OFF);
}
void loop() {
for (int i = 0; i < 33; i++) {
// writeBar の入力範囲は [0-32] です
matrix.writeBar(i);
matrix.display();
delay(150);
}
}
ライブラリファイルが更新される可能性があります。このコードは更新されたライブラリファイルには適用されない場合がありますので、最初の2つの方法を使用することをお勧めします。
すべてが正常に動作すれば、LEDマトリックスにさまざまなバーが表示されるのを見ることができます。
他の例を実行したい場合は、同様の手順を行うことで異なる表示を見ることができます。
DIY
LEDマトリックスに絵文字を表示させたいですか?今度はあなたがデザインする番です。上記のハードウェアとソフトウェアの要件を準備してください。
ステップ 1. オンラインの LED Matrix Editor を使用して、8×8 LEDマトリックス用のアニメーションを編集および作成します。
ステップ 2. 右上のLEDの色を選択します。私の場合、赤色LEDマトリックスを使用しているので「赤」を選択しました。
ステップ 3. 空白のドットをクリックするだけで独自のデザインを作成します。
ステップ 4. デザインに基づいて生成されたHEXファイルをコピーします。これには2つの方法があります:
- 左下のHEXボックス内のHEX値をコピーします。
- Arduino/Cコードセクション内の対応するコードをコピーします。
- ステップ 5. 他のLEDマトリックスの例と同じフォルダ内に新しい '.ino' ファイルを作成し、以下のコードをコピーします。
#include "Grove_LED_Matrix_Driver_HT16K33.h"
#include <Wire.h>
#include "SoftI2C.h"
#include "I2Cdev.h"
//独自のデザインHEXグループをここに記載してください。
const uint64_t Emoji[] = {
0x3c4299a581a5423c,
0x3c4281bd81a5423c,
0x3c42a59981a5423c,
};
Default_IIC_Adapter hard_ware_iic;
Matrix_8x8 matrix;
void setup() {
Wire.begin();
matrix.init(&hard_ware_iic, 0x70);
matrix.setBrightness(0);
matrix.setBlinkRate(BLINK_OFF);
/*************************************************************
* 説明
* マトリックスの点滅速度を設定します
* パラメータ
* blink_type: BLINK_OFF, BLINK_2HZ, BLINK_1HZ
* 戻り値
* なし。
*************************************************************/
}
void loop() {
for (int i = 0; i < 3; i++) {
matrix.writeOnePicture(Emoji[i]);
/*************************************************************
* 説明
* 表示バッファに画像を書き込みます。
* display() を呼び出して表示バッファを表示します。
* パラメータ
* pic: uint64_t 型の8×8マトリックス画像。以下のリンクで作成できます:
* https://xantorohara.github.io/led-matrix-editor/#
* 戻り値
* なし。
*************************************************************/
matrix.display();
/*************************************************************
* 説明
* 表示バッファをクリアします。
* この関数を呼び出した後、display() を呼び出すと8×8マトリックスには何も表示されません。
* パラメータ
* なし。
* 戻り値
* なし。
*************************************************************/
delay(500);
}
}
- ステップ 6. プロジェクトをSeeeduinoにアップロードします。
すべてが正常に動作すれば、以下のようにLEDマトリックスが表示されます。
回路図オンラインビューア
リソース
[PDF] HT16K33 データシート
技術サポートと製品ディスカッション
弊社製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、複数のコミュニケーションチャネルをご用意しています。