ErriezTM1637
v1.1.0
これは、サイズと速度が最適化された Arduino 用の 2 ピン シリアル TM1637 チップ ライブラリです。 LED ドライバー コントローラーとキー スキャン インターフェイスの組み合わせをサポートし、1 回のキー押下を検出します。
電源ピンと 2 本のデータ ピンを Arduino ボードのデジタル ピンに接続します。
次の TM1637 ピンは、マトリクス内の LED とボタンに接続する必要があります。
ピン | TM1637 | Arduino UNO / Nano / Micro / Pro Micro / Leonardo / Mega2560 | WeMos D1 & R2 / ノード MCU | WeMos LOLIN32 |
---|---|---|---|---|
1 | VCC | 5V(または3.3V) | 3V3 | 3V3 |
2 | グランド | グランド | グランド | グランド |
3 | CLK | 2 (デジタルピン) | D2 | 0 |
4 | ディオ | 3 (デジタルピン) | D3 | 4 |
TM1637 は、2 本のワイヤを使用して MCU シリアルと通信します。
注:読み取り/書き込みビットを持つデバイス アドレスが使用されないため、シリアル インターフェイスは I2C または TWI と互換性がありません。
Arduino IDE |例 | Erriez TM1637 ボタンと LED ドライバー:
エリーズTM1637
初期化
// Include TM1637 library
# include < ErriezTM1637.h >
// Connect display pins to the Arduino DIGITAL pins
# define TM1637_CLK_PIN 2
# define TM1637_DIO_PIN 3
// Create tm1637 object
TM1637 tm1637 (TM1637_CLK_PIN, TM1637_DIO_PIN);
void setup ()
{
// Initialize TM1637
tm1637. begin ();
}
表示のオン/オフ
// Turn display off
tm1637.displayOff();
// Turn display on
tm1637.displayOn();
すべての LED をオフにします
// Turn all LED's off
tm1637.clear();
キーを取得する
// Get 8-bit key-scan
uint8_t keys = tm1637.getKeys();
表示レジスタへのバイトの書き込み
// Write segment LED's to the first display registers 0x00..0x0F with value 0x00..0xff to
// display numbers and characters. Just an example which depends on the hardware:
tm1637.writeData( 0x01 , 0x01 );
バッファを表示レジスタに書き込む
// Creat buffer with LED's
uint8_t buf[] = { 0b10000110 , 0b00111111 , 0b00111111 , 0b00111111 , 0b00111111 , 0b00111111 };
// Write buffer to TM1637
tm1637.writeData( 0x00 , buf, sizeof (buf));
このライブラリは、AVR ターゲット用に最適化されたピン制御を使用します。他のターゲットは、デフォルトのdigitalRead()およびdigitalWrite()ピン制御関数を使用します。
出力ベンチマークの例:
ボード | CLK | キーの読み取り | 書き込みバイト | 16バイトのバッファを書き込みます | 鮮明な表示 |
---|---|---|---|---|---|
プロミニ8MHz | 84kHz | 352μs | 344μs | 1080us | 1072us |
UNO 16MHz | 170kHz | 156μs | 152μs | 496us | 480μs |
WeMos D1 & R2 80MHz | 205kHz | 261μs | 137μs | 396us | 396us |
WeMos D1 & R2 160MHz | 300kHz | 233μs | 96μs | 275μs | 271μs |
Wikiページを参照してください。