Банально: термометр + часы.. Но есть нюансы..
- Войдите на сайт для отправки комментариев
Приветствую всякого сюда заглянувшего!
Действительно, решил сделать банальную вещь (первую в этом роде) - термометр + часы + давление +д.влажности + д.освещенности на Arduino Nano v3 + готовые LED matrix (4*8*8) RED. Вроде всё просто, но.. "мы не ищем лёгких путей!".. У меня 5 планок (сами матрицы - LD-1088AS). Захотелось сделать на них 2 экрана: 2 строки (32*16) и 3 строки (32*24). И самое интересное - чтобы информация на них дублировалась. Бегущая строка тут не нужна, только цифры (по-крайней мере пока). Такая была идея.. Когда стал пробовать - столкнулся с тем, что матрицы что попало выводят - развёрнуты! Помучился - бегущая строка получилась.. но это не то что нужно было.. Пришлось мучиться дальше - всё-таки удалось сделать экран на две строки высотой. Удалось это сделать только с помощью библиотеки Max72xxPanel. Но у неё скудный функционал - не хватает возможности подключить другой шрифт, т.к. стандартный при 2-ом размере получается слишком широкий, мало цифр влезет на экран. Пилить стандартный - а другие проекты??? Использовать массивы символов - опять же не хватает или мозгов или функционала.. drawChar - только стандартные выводит, остаётся только по пиксельно - как-то грамоздко, но можно.. Вот и решил обратиться за помощью, может кто посоветует нормальное решение.. Пробовал другие библиотеки (Parola, LedControl), но либо зависает (ничего не выводит), либо экран не собирается нужным образом, либо мозгов не хватает.. казалось, всё просто.. только шрифт свой подпихнуть.. а вышло вон как..
На Радиокоте видел подобный проект
На Радиокоте видел подобный проект
Привет! Помоги найти, кинь ссылкой.. попробовал бегло поискать - не нашёл. Что за проект? или какие ключевые фразы для поиска?
Действительно, решил сделать банальную вещь (первую в этом роде) - термометр + часы + давление +д.влажности + д.освещенности на Arduino Nano v3 + готовые LED matrix (4*8*8) RED. Вроде всё просто, но.. "мы не ищем лёгких путей!".. У меня 5 планок (сами матрицы - LD-1088AS).
Не понял, что значит 5 планок? На рисунках их там больше
Действительно, решил сделать банальную вещь (первую в этом роде) - термометр + часы + давление +д.влажности + д.освещенности на Arduino Nano v3 + готовые LED matrix (4*8*8) RED. Вроде всё просто, но.. "мы не ищем лёгких путей!".. У меня 5 планок (сами матрицы - LD-1088AS).
Не понял, что значит 5 планок? На рисунках их там больше
Вы путаете понятия "планки" и "модуль".. В планке по 4 модуля 8*8.. Сборка заводская, и они получаются перевернуты.. Самопальные сборки можно собрать правильно..
Вы путаете понятия "планки" и "модуль".. В планке по 4 модуля 8*8.. Сборка заводская, и они получаются перевернуты.. Самопальные сборки можно собрать правильно..
Теперь понял ... а библиотеку LedControl пробовали? Имхо для вывода удобнее использовать массив байтов, тогда можно придумать любой шрифт ... дайте ссылку на такую планку
Вы путаете понятия "планки" и "модуль".. В планке по 4 модуля 8*8.. Сборка заводская, и они получаются перевернуты.. Самопальные сборки можно собрать правильно..
Теперь понял ... а библиотеку LedControl пробовали? Имхо для вывода удобнее использовать массив байтов, тогда можно придумать любой шрифт ... дайте ссылку на такую планку
Вот здесь интересная статья про них : http://zlitos.com/publ/ehlektronika/arduino_i_t_p/arduino_i_svetodiodnye_matricy_8kh8_max7219/12-1-0-35
Я брал https://ru.aliexpress.com/item/Free-Shipping-MAX7219-Dot-Matrix-Module-For-Arduino-Microcontroller-4-In-One-Display-with-5P-Line/32683042114.html?spm=2114.13010608.0.0.vsvmuJ&aff_platform=link-c-tool&cpt=1496512537672&sk=uR7uBY3Rz&aff_trace_key=234c3bddbc634763bd8ed78fbc98b18f-1496512537672-08074-uR7uBY3Rz
Ну так и в чем дело? У этих планок тот же интерфейс, что и у отдельных модулей. Используй библиотеку LedControl. Шрифты и знаки можно делать какие угодно, двигать куда угодно. Единственное ограничение - 8 модулей, но его, по-видимому, можно обойти, используя разные выводы ардуины
Ну и как там создать экран, а не строку?
Ну и как там создать экран, а не строку?
Вы установили библиотеку? Там есть примеры, посмотрите. Заполнение всей, допустим планки из 4-х модулей - это будет цикл вывода заранее созданного массива символов в нужную позицию
Ну и как там создать экран (высотой 2 строки), а не строку?
Последовательное подключение до 8 устройств. Про количество строк - нигде. Других настроек не увидел..
Вот здесь человек добился нужного эффекта! https://www.drive2.ru/b/456796504879792647/
в библилтеке PAROLA есть готовый пример метеостанции.
как менять шрифт я делал видео
пример шрифта английские и русские.(я не художник)
поэтому редактируйте под себя.
02.06.2017 в библиотеку PAROLA был добавлен этот шрифт.
Ну и как там создать экран (высотой 2 строки), а не строку?
Последовательное подключение до 8 устройств. Про количество строк - нигде. Других настроек не увидел..
Вот здесь человек добился нужного эффекта! https://www.drive2.ru/b/456796504879792647/
Первая планка будет первой строкой (верхней), вторая планка - второй строкой. Первая планка соответственно будет иметь адресацию модулей от 0 до 3-х, вторая от 4 до 7-ми.
Теперь, допустим, вам нужно вывести вертикальную черту высотой в две планки, в позицию 3, считая от начала строки. Соответственно выводите 0хff в 3-ю позицию 0-го модуля и 0xff в 3-ю позицию 4-го модуля. Для вывода в библиотеке есть функция myLed.setColumn(НомерИндикатора, НомерКолонкиВПределахИндикатора,Байт);
Вот и все. Единственное, что нужно будет создать - это массив ваших символов и продумать, как его выводить соответсвенно в первую и вторую строки
Я обдумывал уже такой вариант, на крайний случай.. он более трудоемкий, и, по сути, это подгонка строк под столбцы.. Т.е. для экрана в 3 строки, это нужно три массива символов.
Следующий вариант более удобный! Я пробовал раньше его, но видел только "чёрный экран". Но этот вариант, вдруг, запустился! Чему я очень рад!
в библилтеке PAROLA есть готовый пример метеостанции.
как менять шрифт я делал видео
пример шрифта английские и русские.(я не художник)
поэтому редактируйте под себя.
02.06.2017 в библиотеку PAROLA был добавлен этот шрифт.
Только остается вопрос про экран в 3 строки.. Взлетит???
Я обдумывал уже такой вариант, на крайний случай.. он более трудоемкий, и, по сути, это подгонка строк под столбцы.. Т.е. для экрана в 3 строки, это нужно три массива символов.
Только остается вопрос про экран в 3 строки.. Взлетит???
То, что более трудоемкий - это да, зато гибкий ... Для двух строк достаточно одного массива, можно принять, что нечетные элементы - это первая планка, четные - вторая. 3 строки с библиотекой LedControl?
Я обдумывал уже такой вариант, на крайний случай.. он более трудоемкий, и, по сути, это подгонка строк под столбцы.. Т.е. для экрана в 3 строки, это нужно три массива символов.
Только остается вопрос про экран в 3 строки.. Взлетит???
То, что более трудоемкий - это да, зато гибкий ... Для двух строк достаточно одного массива, можно принять, что нечетные элементы - это первая планка, четные - вторая. 3 строки с библиотекой LedControl?
Буду пробовать оба варианта, выберу .. тот что взлетит .. на 3 строки. Ведь мне нужно будет использовать одновременно на разные экраны разные шрифты..
Буду пробовать оба варианта, выберу .. тот что взлетит .. на 3 строки. Ведь мне нужно будет использовать одновременно на разные экраны разные шрифты..
Удачи
набросал на скорую руку. Весь алфавит не делал -только две цыфры.
вот скетч
Старт библтотек MD.PAROLA более одной высоты проходит ооочень плохо.
если напишете в другой библиотеке, будет лучше.
MD.PAROLA меня замучила стартом. А так хороша примерами и возможностями.
набросал на скорую руку. Весь алфавит не делал -только две цыфры.
вот скетч
Старт библтотек MD.PAROLA более одной высоты проходит ооочень плохо.
если напишете в другой библиотеке, будет лучше.
MD.PAROLA меня замучила стартом. А так хороша примерами и возможностями.
Спасибо! Неожиданно.. я как раз думал как 3-этажные буквы выводить!
По поводу старта.. Действительно проблема какая-то.. Загрузил (кстати, пример из библиотеки, часы с 2-шрифтом)- работает, отключил USB, включил - не работает, тёмный экран.. Загружаю Ваш "обезжиренный" кусок:
А затем пример - и всё опять работает, но до перезагрузки..
И ещё один вопрос в догонку: реально сделать дублирующиеся экраны разных размеров с одной Arduin-ой?
С библиотекой LedControl можно, два объекта создаются.. А с Porol-ой зонами управлять?
я много писал автору библиотеки, и не только я о "холодном старте".
ответ один -это ваш БП виноват!
А он не виноват.Косяк в библиотеке. У меня ума не хватит найти проблему.
Я приспособился так.
1.питание ардуино через VIN
2.прописываю в сетуп паразитную функфию delay(1000);
3 меняю время в delay пока не запустится.
4.добовляю или убираю строку Serial.begin(57600);
так и мучаюсь.
форум тут
Странно, но ваш трёхстрочный пример кода работает и после перезагрузки! Здорово! Спасибо!
А есть идеи как два экрана сделать? На другие выводы Arduinы или просто две суперзоны сделать?
Немножко изменил код, и всё, перестал загружаться после рестарта
запуск анимации 1 вариант
if ( P.displayAnimate()){....}
запуск анимации 2 вариант
P.displayAnimate();
if (P.getZoneStatus(ZONE_LOWER) && P.getZoneStatus(ZONE_MIDDL) && P.getZoneStatus(ZONE_UPPER) {....}
displayReset();// эта строка у меня всегда вела к краху. НЕ используйте ее.
так как ниже писать нельзя.
P.displayZoneText(ZONE_LOWER, szTimeL, PA_LEFT, 75, 0, PA_PRINT, PA_PRINT);
szTimeL недопустимо тут вставлять. Здесь указатель на массив должен быть.
переменная типа
char
*msg
в Parola ecть альтернативное подключение табло ,
// SOFTWARE SPI
//MD_Parola P = MD_Parola(DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);
но не 2 табло. кроме того альтернатива работает ооочень медлено. это не SPI
Это из примера библиотеки..
Закоментил (//P.displayReset();) - никаких изменений..