Современный общественный транспорт это не только возможность добраться из точки А в Б, но и возможность по пути получить своевременную и актуальную информацию о погоде, маршруте следования… По крайней мере это стандартная опция уже для автобусов в крупных городах и для метрополитена, когда в каждом пассажирском салоне можно увидеть электронную бегущую строку с информационными материалами. В некоторых случаях такие бегущие строки можно увидеть даже на частных машинах, в проеме заднего стекла… Итак, на счет использования таких бегущих строк все понятно, осталось обсудить где их можно взять. Собственно варианта два, - купить или сделать самому. Что на счет купить, то пожалуйста, я же вам предлагаю к реализации самодельный вариант, хотя составляющие части все равно придется покупать!
Что необходимо для бегущей строки на транспорте
Так вот, раз комплектующие все равно нужны, то пришло самое время рассказать о них. В первую очередь понадобятся светодиодные табло разрешением 8*8 светодиодов. Выполнены он на базе микросхем MAX7219, поэтом и именуются также. (можно купить на Али, примерно по 1$ за штуку) Количество элементов выбираем такое, чтобы оно нас удовлетворяло по длине нашей строки. Это может быть 5,6,7…15 и более элементов.
Еще нам потребуется Arduino Uno или любая другая Ардуинка, будь то Нано, Мини, Мега… Ардуино и станет нашим контроллером, который будет хранить в себе не только скетч, но и ту самую информацию, которую мы собрались выводить
Само собой если у нас есть радиокомпоненты, о необходимо будет обеспечить их питание. Это может быть понижающий стабилизатор напряжения на 5 вольт. Более подробно о применяемых компонентах для питания и примерах реализации понижения напряжения бортовой сети ТС я уже рассказывал!
Теперь самое время перейти к описанию схемы подключения всех элементов.
Схема (электрическая) бегущей строки
Начну с последовательного соединения LED блоков. Каждый блок кроме питания GND и VCC имеет еще и пины CLK, Data in, Data out, CS. Так вот, там где маркировка IN, туда подключаем входящие сигналы, а к OUT исходящие. Все понятно и просто.
Осталось лишь обеспечить питание для Ардуинки и индикаторов. Здесь надо обязательно учитывать, что ток питания должен обеспечивать работу индикаторов по их мощности! Впрочем, это умозаключение не претендующее на эксцентричность, оно скорее само собой разумеющееся!
Теперь к программной части, ведь это Ардуино, а кто знаком с этой платформой, тот в курсе, что без скетча это все равно, что гараж без машины. Для тех кто совсем не знаком с Ардуинкой необходимо вначале подключить ее впервые, а потом можно и залить тот самый скетч о котором я расскажу сейчас.
Скетч для бегущей строки имеет библиотеку, которую необходимо залить в нашу программную и одноименную с Ардуникой среду, среда Ардуино! Библиотеку бросаем примерно по следующему пути (C:\Program Files (x86)\Arduino\libraries\...) Возможны вариации в зависимости от ваших переменных, но интуитивно все понятно куда и что.
Пару слов о том, что вам возможно придется править под себя. Во-первых, выставляем нужное количество индикаторов. У меня их было 7. int maxInUse = 7
Далее в строках char string1[] = "… прописываем тот текст, который нам нужен.
В-третьих, можно менять скорость бегущей строки вот здесь - shift_speed=100;.
В-четвертых, на счет возможности выводить свои значки и буквы. На самом деле это сделать весьма легко, надо просто взять и исправить любую букву под PROGMEM, какую вы захотите. В итоге, набирая то, что было раньше буквой, будет выводиться не буква, а ваша иконка, символ. Здесь важно не менять общее количество букв в этом массиве, а заменить уже имеющуюся!
Собственно на этом и все, будут вопросы, задавайте в комментариях!