#include <TM1637Display.h>
// define the connections pins
#define INPT_CLK 3
#define INPT_DIO 2
#define VOL_DIO 4
#define VOL_CLK 5
// create display object of type TM1637Display
TM1637Display inputDisplay = TM1637Display(INPT_CLK, INPT_DIO);
TM1637Display volumeDisplay = TM1637Display(VOL_CLK, VOL_DIO);
// Hi Text
const uint8_t hello[] = {
SEG_B | SEG_C | SEG_E | SEG_F | SEG_G, // H
SEG_A | SEG_D | SEG_E | SEG_F | SEG_G, // E
SEG_D | SEG_E | SEG_F, // L
SEG_D | SEG_E | SEG_F, // L
SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // O
0x00,
0x00,
0x00,
0x00
};
// Chintu text
const uint8_t chintu[] = {
SEG_A | SEG_D | SEG_E | SEG_F, // C
SEG_B | SEG_C | SEG_E | SEG_F | SEG_G, // H
SEG_B | SEG_C, // I
SEG_A | SEG_B | SEG_C | SEG_E | SEG_F, // N
SEG_D | SEG_E | SEG_F | SEG_G, // t
SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // U
0x00,
0x00,
0x00,
0x00
};
// Blue Text
const uint8_t blue[] = {
SEG_C | SEG_D | SEG_E | SEG_F | SEG_G, // b
SEG_D | SEG_E | SEG_F, // L
SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // U
SEG_A | SEG_D | SEG_E | SEG_F | SEG_G // E
};
// blank Text
const uint8_t blank[] = {
SEG_G, // -
SEG_G, // -
SEG_G, // -
SEG_G // -
};
// Optl Text
const uint8_t optl[] = {
SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // O
SEG_A | SEG_B | SEG_E | SEG_F | SEG_G, // P
SEG_D | SEG_E | SEG_F | SEG_G, // t
SEG_D | SEG_E | SEG_F // L
};
// CH:01 text
const uint8_t ch01[] = {
SEG_A | SEG_D | SEG_E | SEG_F, // C
0b11110110, // H:
SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // 0
SEG_B | SEG_C // 1
};
// CH:02 text
const uint8_t ch02[] = {
SEG_A | SEG_D | SEG_E | SEG_F, // C
0b11110110, // H:
SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // 0
SEG_A | SEG_B | SEG_D | SEG_E | SEG_G // 2
};
void setup() {
pinMode(11, INPUT);
pinMode(10, INPUT);
pinMode(9, INPUT);
pinMode(8, INPUT);
// Serial.begin(9600);
inputDisplay.clear();
inputDisplay.setBrightness(7); // set the brightness to 7 (0:dimmest, 7:brightest)
volumeDisplay.clear();
volumeDisplay.setBrightness(7); // set the brightness to 7 (0:dimmest, 7:brightest)
delay(100);
inputDisplay.clear();
for (int i = 0; i < 6; i++) {
inputDisplay.setSegments(hello + i);
if (i == 0) {
delay(800);
} else {
delay(200);
}
}
// delay(500);
volumeDisplay.clear();
delay(50);
for (int i = 0; i < 7; i++) {
volumeDisplay.setSegments(chintu + i);
if (i == 0) {
delay(800);
} else {
delay(200);
}
}
delay(1000);
inputDisplay.clear();
volumeDisplay.clear();
}
void loop() {
int value = map(analogRead(A0), 0, 1023, 0, 100);
volumeDisplay.showNumberDec(value, true, 3, 1);
// Read Switch Value
if (digitalRead(11) == HIGH) {
inputDisplay.setSegments(blue);
}
if (digitalRead(10) == HIGH) {
inputDisplay.setSegments(optl);
}
if (digitalRead(9) == HIGH) {
inputDisplay.setSegments(ch01);
}
if (digitalRead(8) == HIGH) {
inputDisplay.setSegments(ch02);
}
if (digitalRead(11) == LOW && digitalRead(10) == LOW && digitalRead(9) == LOW && digitalRead(8) == LOW) {
inputDisplay.setSegments(blank);
}
delay(100);
// Serial.print("BLUE = ");
// Serial.println(digitalRead(11));
// Serial.print("OPTL = ");
// Serial.println(digitalRead(10));
// Serial.print("CH:01 = ");
// Serial.println(digitalRead(9));
// Serial.print("CH:02 = ");
// Serial.println(digitalRead(8));
}