Цитата:
Сообщение от Murkur
ОК, спасибо. Эти страницы уже по несколько раз перечитывал, но, видно, не дано понять и времени не хватает.
Ладно, буду искать того, кто разбирается.
|
Поймите правильно. Это все равно, что лечить по телефону.
Не видя фоток дорожек понять что-то сложно.
Это была нетривиальная задача даже для меня, а я уже лет 30 этим занимаюсь.
Чтобы браться за такие вещи нужен навык общения с подобным железом.
На самом то деле почти все уже сделано, в документе расписан порядок байтов в посылке, которую микруха жрет. Это скрипт уже делает. Вам всего лишь надо поиграться с начальным набором байт, которые правильно конфигурят микруху для работы с вашим конкретным индикатором.
Так как тоже однострочный у Вас, конфигурация не должна сильно отличаться.
Микруха довольно тупая, она просто отображает то, что ей скажут.
в моем скрипте Вам надо поиграться с вот этим
buffer[0] = 0xE0;
buffer[1] = 0xCB;
buffer[2] = 0xF0;
на странице 23 есть формат команды по байтам
Мы отправляем сами только Command и Display Data, первый байт отправляет библиотека Wire в Ардуине
вот Command и есть
buffer[0] = 0xE0;
buffer[1] = 0xCB;
buffer[2] = 0xF0;
назначение каждого байта в Command расписано на странице 24 и 25
Вам надо поиграться со значениями битов B, M1, M0, так как они зависят от конкретного LCD, который подключен к микрухе.
Мы всегда посылаем пакеты данных по 17 байт - первых 3 байта - конфигурация, остальные - данные.
То есть Ваша задача методом тыка меняя
buffer[0] = 0xE0;
buffer[1] = 0xCB;
buffer[2] = 0xF0;
заставить показывать хоть что-то, дальше пойдет легче.
Это значения шестнадцатиричные, можно подставлять бинарные, так будет легче менять отдельные байты.
Вот бинарный эквивалент
buffer[0] = B11100000;
buffer[1] = B11001011;
buffer[2] = B11110000;
Если будет показывать что-нить, то потом нужно сделать свой знакогенератор - таблицу соответствия байтов данных символам на экране.
Тут сильно ускорит работу мой скрипт.
Если дойдете до этого шага - скину как пример мой знакогенератор, там все довольно просто.