Бегущяя строка на max7219 и Arduino

Аватара
Автор темы
Дим
Администратор
Администратор
Сообщения: 1051
Зарегистрирован: 5 апреля 2013
Репутация: 66
С нами: 4 года 9 месяцев

Бегущяя строка на max7219 и Arduino

Сообщение #1 Дим » 16 декабря 2017, 0:09

Для реализации данной идеи будем использовать max7219 и Arduino Nano. Собираем схему как показано на рисунке и заливаем скетч.


Бегущяя строка на max7219 и Arduino.png
Бегущяя строка на max7219 и Arduino
Бегущяя строка на max7219 и Arduino.png (153.06 КБ) 47 просмотров

Код: Выделить всё

#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Max72xxPanel.h>

int pinCS = 10; // Attach CS to this pin, DIN to MOSI and CLK to SCK (cf http://arduino.cc/en/Reference/SPI )
int numberOfHorizontalDisplays = 1;
int numberOfVerticalDisplays = 4; //указывают количество матриц, в нашем случае 4

Max72xxPanel matrix = Max72xxPanel(pinCS, numberOfHorizontalDisplays, numberOfVerticalDisplays);

String tape = "Hello World!"; //надпись, выводимую на дисплей
int wait = 100; // В миллисекундах

int spacer = 1;
int width = 5 + spacer; // Ширина шрифта 5 пикселей.

void setup() {
  matrix.setRotation(matrix.getRotation()+3); //1 - 90  2 - 180   3 - 270 
  matrix.setIntensity(1); // Используйте значение от 0 до 15 для яркости
}

void loop() {

  for ( int i = 0 ; i < width * tape.length() + matrix.width() - 1 - spacer; i++ ) {

    matrix.fillScreen(LOW);

    int letter = i / width;
    int x = (matrix.width() - 1) - i % width;
    int y = (matrix.height() - 8) / 2; // центрировать текст по вертикали

    while ( x + width - spacer >= 0 && letter >= 0 ) {
      if ( letter < tape.length() ) {
        matrix.drawChar(x, y, tape[letter], HIGH, LOW, 1);
      }

      letter--;
      x -= width;
    }

    matrix.write(); // Отправить растровое изображение для отображения

    delay(wait);
  }
}
i love you mxIni Mysql
Изображение

! ! !


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Программирование»

Кто сейчас на форуме

Сейчас этот раздел просматривают: 1 гость

Яндекс.Метрика
:: Часовой пояс: UTC+03:00