นี่คือไลบรารีชิปอนุกรม TM1637 แบบ 2 พินสำหรับ Arduino ซึ่งได้รับการปรับให้เหมาะสมกับขนาดและความเร็ว รองรับคอนโทรลเลอร์ไดรเวอร์ LED แบบรวมและอินเทอร์เฟซการสแกนปุ่มเพื่อตรวจจับการกดปุ่มเพียงครั้งเดียว
เชื่อมต่อพลังงานและพินข้อมูล 2 อันเข้ากับพิน DIGITAL ของบอร์ด Arduino:
พิน TM1637 ต่อไปนี้ควรเชื่อมต่อกับ LED และปุ่มในเมทริกซ์:
เข็มหมุด | TM1637 | Arduino UNO / นาโน / ไมโคร / โปรไมโคร / เลโอนาร์โด / Mega2560 | WeMos D1 & R2 / โหนด MCU | วีมอส โลลิน32 |
---|---|---|---|---|
1 | วีซีซี | 5V (หรือ 3.3V) | 3V3 | 3V3 |
2 | จีเอ็นดี | จีเอ็นดี | จีเอ็นดี | จีเอ็นดี |
3 | ซีแอลเค | 2 (พินดิจิตอล) | D2 | 0 |
4 | ดีโอ | 3 (พินดิจิตอล) | D3 | 4 |
TM1637 สื่อสารกับอนุกรม 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() เริ่มต้น
ตัวอย่างเกณฑ์มาตรฐานเอาต์พุต:
กระดาน | ซีแอลเค | อ่านคีย์ | เขียนไบต์ | เขียนบัฟเฟอร์ 16 ไบต์ | จอแสดงผลที่ชัดเจน |
---|---|---|---|---|---|
โปรมินิ 8MHz | 84กิโลเฮิร์ตซ์ | 352us | 344us | 1,080us | 1,072us |
อูโน่ 16MHz | 170กิโลเฮิร์ตซ์ | 156us | 152us | 496us | 480us |
WeMos D1 และ R2 80MHz | 205กิโลเฮิร์ตซ์ | 261us | 137us | 396us | 396us |
WeMos D1 และ R2 160MHz | 300กิโลเฮิร์ตซ์ | 233us | 96us | 275us | 271us |
โปรดดูที่หน้าวิกิ