Проблема ЖКИ128х64 на ST7920.
- Войдите на сайт для отправки комментариев
Вс, 24/04/2016 - 11:34
Всем привет. Столкнулся с таким экраном 128х64 на ST7920.
Библиотека U8glib
Экран вроде как работает, но что-то не так как должен. Если кто сталкивался с такой проблемой. Помогите пожалуйста.
А как он подключен?
RS на 17 ногу меги
R/W на 16 ногу меги
E на 18 ногу меги
PSB на землю
Ну и питание экрана 5В.
У меня похожая картина была при подключении на аппаратный SPI вместе с SD картой.
Прикол оказался в том, что при CS = 0 нельзя допускать изменений на RW(SID*) и E(SCLK*).
Что-то я Пина CS не могу найти.
RS(CS*) - http://pdf1.alldatasheet.com/datasheet-pdf/view/326219/SITRONIX/ST7920.html
Сейчас попробую.
А у вас случано нет куска кода. Что-то не могу сообразить где эти параменты ставить.
1
const
int
enLCD = 18;
2
const
int
csLCD = 17;
3
const
int
rwLCD = 16;
4
U8GLIB_ST7920_128X64_4X u8g(enLCD, rwLCD, csLCD);
Так я делал.
Это есть в примерах библиотеки.
U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17
Но все равно полосит экран.
Другие примеры так же отрабатывают?
Проверь землю, питание. Можно попробовать на другие выводы меги переключить.
Взял этот пример https://github.com/Porokhnya/GreenhouseProject
Там такой же экран. Схема подключения есть, все подключил. (Уже другие пины) все равно на экране полоска и некоторые символы как рассыпались.
Если кто использует эту библиотеку и результат хороший, то скорей всего у меня бракованный экран.
Я использую https://github.com/olikraus/u8glib
Ну да. Она. И с таким экраном все хорошо? Подключаете как я подключал?
Вы подключились правильно, иначе никакого изображения бы небыло.
Скорее всего мапинг строк в вашей библиотеке отличается от мапинга купленого экрана.
Обясняю:
Экран делится на 8 горизонтальных строк высотой по 8 пикселей. Скорее всего начальный адрес заливки в память экрана начинается с 3й строки. Первые две строки не заливаются и не очищаются.
Ищите другую библиотеку.
Я использую ST7565
Спасибо. Попробую отпишусь.
Проблема решилась. Всем спасибо.
Что я сделал? Снял рамку экрана, достал резинки (контакты) экрана, протер спиртом, собрал. Немного помучаясь выставлением всех дорожен :) и вуаля! Все заработало и по той распиновке что писал выше. И библиотека работает u8glib
Кому интресно, хороший пример меню http://itfap.ru/read/Realizaciya_mnogourovnevogo_menyu_dlya_Arduino_s_di...