Заказал поиграться пару вот таких светодиодных индикаторов (8x8, RGB). И заодно Ардуино-шилды (ColorShield) к ним.
Особо не разбирался во внутренностях, нашёл библиотеку Colorduino, с которой всё сразу заработало. С библиотекой поставляется пример Plasma (переливающиеся разноцветные полосы).
API Colorduino чрезвычайно простое. Используется два буфера: один в данный момент отображается, во втором (внеэкранном) можно рисовать. Затем можно поменять местами буферы. Таким образом осуществляется двойная буферизация. Поддерживаются следующие функции:
Взяв за основу пример с "плазмой" я написал простенький скетч, который перебирает цифры 0-9, отображая их разными цветами. Для этого я использовал шрифты размером 8x8 пикселей из проекта font8x8, просто скопировав "кусочек" с цифрами:
Чтобы рисовать символы я написал такую функцию:
Вот что получилось:
Полные исходники скетча можно посмотреть в GitHub.
![]() |
Индикатор и Shield-драйвер |
Особо не разбирался во внутренностях, нашёл библиотеку Colorduino, с которой всё сразу заработало. С библиотекой поставляется пример Plasma (переливающиеся разноцветные полосы).
Пример "Плазма" |
API Colorduino чрезвычайно простое. Используется два буфера: один в данный момент отображается, во втором (внеэкранном) можно рисовать. Затем можно поменять местами буферы. Таким образом осуществляется двойная буферизация. Поддерживаются следующие функции:
Взяв за основу пример с "плазмой" я написал простенький скетч, который перебирает цифры 0-9, отображая их разными цветами. Для этого я использовал шрифты размером 8x8 пикселей из проекта font8x8, просто скопировав "кусочек" с цифрами:
Чтобы рисовать символы я написал такую функцию:
Вот что получилось:
Остальные цифры тоже показываются :) |
Полные исходники скетча можно посмотреть в GitHub.
Комментариев нет:
Отправить комментарий