GitHub - MaximAivazov/Arduino-TM1639
вывода цифр и точек на дисплеи, запуск и инициирование драйвера, включение/отключение дисплеев, регулировку яркости.
Используется 5 функций:
void initTM1639(byte dataPin1, byte clockPin1, byte strobePin1); //Инициализация драйвера TM1639, необходимо задать пины Ардуино в указанном порядке.
void printTM1639(byte a1, byte b1, byte a2, byte b2, byte a3, byte b3, byte a4, byte b4, byte a5, byte b5, byte a6, byte b6, byte a7, byte b7, byte a8, byte b8); //Вывод данных на дисплеи
а1, a2 и т.п. числа для вывода, начиная с первого разряда, если число больше 9, то индикатор остается пустым, b1, b2 и т.п. вывод точки, начиная с первого индикатора,
если вводим 0 - точка не горит, если любое другое число, то горит.
void lightTM1639(byte light1); //Регулирование уровня подсветки, яркость задается цифрами от 1 до 8
void controlTM1639(bool a); //Включение и выключения дисплея, если передаем 0 - отключение, если 1 - включение с яркостью отображения уставновленной по умолчанию.
byte buttonstatusTM1639(bool b); //Запрос состояния клавиатуры, передаем 0 - получаем значение первого байта, передаем 1 - получаем значение 2 байта*/
#include <masterTM1639.h> //Подключим библиотеку для управления TM1639
long previousMillis = 0; //Сохраним время последнего переключения светодиода
void setup() {
Serial.begin(9600); //Запустим порт со скоростью 9600 бод
initTM1639(A4, A3, A2); //Инициализация драйвера TM1639
printTM1639(1, 1, 2, 0, 3, 0, 4, 0, 5, 0, 6, 0, 7, 0, 5, 1); //Выведем "1 2 3 4 5 6 7 Х."
delay(500);
controlTM1639(0); //Отключим дисплей
}
void loop() {
Serial.print(buttonstatusTM1639(0), BIN); //Запросим 1 байт состояния клавиатуры
Serial.print(" ");
Serial.print(buttonstatusTM1639(1), BIN); //Запросим 2 байт состояния клавиатуры
Serial.println();
delay(500);
}