Для Arduino есть несколько типов светодиодных модулей для вывода чисел.
Например, вот такой 8-значный цифровой индикатор на микросхеме MAX7219:
В данном примере элементы соединены вот так:
Здесь DIN, CS и CLK соединены с пинами 7, 9 и 8.
На сайте Arduino есть большая статья LedControl, в которой рассказывается о принципе управления светодиодными матрицами. Однако там нет простого примера показывающего, как вывести на дисплей не цифру, а число.
Код ниже рализует обычный счётчик, который увеличивает своё значение раз в секунду и выводит его на цифровой дисплей:
В данном примере для вывода числа используется функция displayNumber, которая записывает значение каждого десятичного разряда в соответствующий цифровой сегмент.
Для работы этого кода необходима библиотека LedControl.
Электронные компоненты, используемые в этом примере:
Например, вот такой 8-значный цифровой индикатор на микросхеме MAX7219:
Он подсоединяется к плате Arduino пятью пинами:
|
В данном примере элементы соединены вот так:
Здесь DIN, CS и CLK соединены с пинами 7, 9 и 8.
На сайте Arduino есть большая статья LedControl, в которой рассказывается о принципе управления светодиодными матрицами. Однако там нет простого примера показывающего, как вывести на дисплей не цифру, а число.
Код ниже рализует обычный счётчик, который увеличивает своё значение раз в секунду и выводит его на цифровой дисплей:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
#include <LedControl.h> #define dinPin 7 #define clkPin 8 #define csPin 9 LedControl display = LedControl(dinPin, clkPin, csPin); void setup() { display.clearDisplay(0); display.shutdown(0, false); display.setIntensity(0, 10); } void displayNumber(int number) { display.clearDisplay(0); for (int i = 0; i < 8; i++) { int digit = number % 10; number /= 10; display.setDigit(0, i, digit, false); if (number == 0) { break; } } } int number = 9995; void loop() { displayNumber(number++); delay(1000); } |
В данном примере для вывода числа используется функция displayNumber, которая записывает значение каждого десятичного разряда в соответствующий цифровой сегмент.
Для работы этого кода необходима библиотека LedControl.
Электронные компоненты, используемые в этом примере:
8-значный LED дисплей | Arduino Nano | Макетная плата |
цифры в сегментах исчезают
ОтветитьУдалить