Arduino Project 034 - TM1637 4Digital 7Segment Display Module
A standard 4-digit 7-segment display is needed for clock, timer and counter projects, but it usually requires 12 connections. The TM1637 module makes it easier by only requiring 4 connections: 2 for power and 2 for controlling the segments.
A TM1637 module typically consists of four 7-segment LEDs and a colon-shaped LED in the middle: It is ideal for displaying time in hours and minutes, or minutes and seconds, or scores of two teams.
Project 34 Interfacing TM1637 4 Digital 7 Segment Display Module
4 Digital 7 Segment Display
TM1637 4 Digital 7 Segment Display Circuit
TM1637 4 Digital 7 Segment Display Schematic
/* Coding Ron Wang Nov.27th 2024 Autaba support for coding hardware Project 034 TM1637 4 digit 7 segment display with Arduino. */ #include "TM1637Display.h" #define CLK 2 #define DIO 3 TM1637Display display = TM1637Display(CLK, DIO); // Create display object of type TM1637 Display const uint8_t data[] = {0xff, 0xff, 0xff, 0xff}; // Create array that turns all segments on const uint8_t blank[] = {0x00, 0x00, 0x00, 0x00}; // Create array that turns all segments off // You can set the individual segments per digit to spell words or create other symbols const uint8_t DONE[] = { SEG_B | SEG_C | SEG_D | SEG_E | SEG_G, // d SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // O SEG_C | SEG_E | SEG_G, // n SEG_A | SEG_D | SEG_E | SEG_F | SEG_G // E }; // Create degree Celsius symbol: const uint8_t celsius[] = { SEG_A | SEG_B | SEG_F | SEG_G, // Circle SEG_A | SEG_D | SEG_E | SEG_F // C }; void setup() { // Clear the display: display.clear(); delay(1000); } void loop() { // Set the brightness: display.setBrightness(7); // All segments on: display.setSegments(data); delay(1000); display.clear(); delay(1000); // Show counter: int i; for (i = 0; i < 101; i++) { display.showNumberDec(i); delay(50); } delay(1000); display.clear(); delay(1000); // Print number in different locations, loops 2 times: int j; for (j = 0; j < 2; j++) { for (i = 0; i < 4; i++) { display.showNumberDec(i, false, 1, i); delay(500); display.clear(); } } delay(1000); display.clear(); delay(1000); // Set brightness (0-7): int k; for (k = 0; k < 8; k++) { display.setBrightness(k); display.setSegments(data); delay(500); } delay(1000); display.clear(); delay(1000); // Print 1234 with the center colon: display.showNumberDecEx(1234, 0b11100000, false, 4, 0); delay(1000); display.clear(); delay(1000); int temperature = 24; display.showNumberDec(temperature, false, 2, 0); display.setSegments(celsius, 2, 2); delay(1000); display.clear(); delay(1000); display.setSegments(DONE); while(1); }
版权声明:本文为原创文章,版权归donstudio所有,欢迎分享本文,转载请保留出处!