Max7219 Бегущая строка. Helpните начинающему !
- Войдите на сайт для отправки комментариев
Сб, 15/03/2014 - 23:44
Доброго Времени суток!
Неделю назад приобрел Arduino Mega 2560 и Max7219 Led Matrix 8х8, нашел в сети готовую программу подключил матрицу к ардуино загрузил скетч все работает но не могу разобраться в скетче.
Мне нужно создать бегущюю строку с надписью Arduino mega 2560 Max7219.
Если кому не трудно помогите и с подробным пояснением кода программы пожалуйсто !
вам нужно загнать всю строку в память в двумерный массив, по которому уже двигать "окно" - то что будет на матрице в данный момент времени.
Допустим сторока 25 символов значит размер думерного массива будет [25*5][8](бит)=25*5 байт (при шрифте 5*8) в который будет записана вся картинка целиком.
Потом вы делаете процедуру записи всего этого в матрицу 8*8 или 16*8(окно) - с смещением меняющимся от 0 до 25*5 - 1 - тоесть картинка отрисовывается не сначала а пропуская несколько пикселей. Если подходим к концукартинки то берем данные с начала, можно добавить зазор, или ничего не добавлять чтобы получить эфект "что строка убежала".
Второй вариант заведомо сложнее - но экономнее по памяти - когда расчитывается всего лишь длина строки в пикселях а все данные берутся прямо из шрифта который в PROGMEM
Шрифт тоже можно по рпзному организовать:
1) можно сделать все буквы одинаковыми 5х8
2) можно сделать разные буквы разной ширины - текст будет смотреться лучше, но реализация сложнее.
думаю лучше начать с простого варианта, а потом попробовать сложные.