Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "SevSeg.h"
- SevSeg sevseg; //Инициализация объекта библиотеки
- void setup() {
- byte numDigits = 4;//количество цифр
- byte digitPins[] = {2, 3, 4, 5}; // пины к которым подключены цифры
- byte segmentPins[] = {6, 7, 8, 9, 10, 11, 12, 13}; //пины к которым подключены пины сегментов
- bool resistorsOnSegments = false; // 'false' означает, что резисторы находятся на цифровых выводах
- byte hardwareConfig = COMMON_ANODE; // используем дисплей с общим анодом
- bool updateWithDelays = false; // Рекомендуется использовать false.
- bool leadingZeros = true; // Все не занятые значения заполняются нулями(true) или остаются пустыми(false)
- bool disableDecPoint = false; // выключение десятичной точки(false) или включение десятичной точки (true)
- sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments,
- updateWithDelays, leadingZeros, disableDecPoint);
- sevseg.setBrightness(90);
- }
- void loop() {
- static unsigned long timer = millis(); //в переменную timer сохраняем текущее время жизни проекта
- static int deciSeconds = 0;//создаём переменную для хранения десятых секкунды
- if (millis() - timer >= 100) { //каждые 100 милисекунд выполяем нижепрописанный код
- timer += 100;//запоминаем, сколько времени уже прошло с момента запуска проекта
- deciSeconds++; // запоминаем сколько десятых секунды прошло
- if (deciSeconds == 10000) { //после одной тысячи секунд обнуляем счётчик(больше не влезет в дисплей)
- deciSeconds=0;//обнуляем число
- }
- sevseg.setNumber(deciSeconds, 2);//Указываем какое число нужно вывести на экран(первый аргумент, и какая разрядность у числа должна быть(второй аргумент))
- }
- sevseg.refreshDisplay(); // постоянное обновление экрана. Любые функции delay мешают этому
- }
Add Comment
Please, Sign In to add comment