подключить LCD3410
- Войдите на сайт для отправки комментариев
Вс, 07/08/2016 - 06:48
Поскольку разрешение LCD 3410 по более чем у LCD3310, захотелось заменить 3410 на 3310. Но не все так просто как оказалось. Экран печатает, но все мелко, а остальная часть экрана засыпается точками-"мусором". Поиски в инете не помогли. Может у кого-то есть опыт работы с 3410.
Выяснилось, что Adafruit библиотека не очень подходит для 3410. Нужно использовать библиотеку U8glib, где нужно выбрать контроллер PCF8812.
Вот рабочий скетч для 3410:
[code] #include "U8glib.h" U8GLIB_PCF8812 u8g(3, 4, 6, 5, 7); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 void draw(void) { u8g.setFont(u8g_font_unifont); // graphic commands to redraw the complete screen should be placed here u8g.drawStr( 0, 22, "Hello World!"); //u8g.setFont(u8g_font_osb21); } void setup(void) { // u8g.setRot180(); // flip screen, if required //u8g.setHardwareBackup(u8g_backup_avr_spi); // set SPI backup if required if ( u8g.getMode() == U8G_MODE_R3G3B2 ) // assign default color value { u8g.setColorIndex(255); // white } else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) { u8g.setColorIndex(3); // max intensity } else if ( u8g.getMode() == U8G_MODE_BW ) { u8g.setColorIndex(1); // pixel on } else if ( u8g.getMode() == U8G_MODE_HICOLOR ) { u8g.setHiColorByRGB(255,255,255); } } void loop(void) { // picture loop u8g.firstPage(); do { draw(); } while( u8g.nextPage() ); delay(50); // rebuild the picture after some delay } [/code]Добрый день, спасибо за рабочий скетч для 3410, работает, но мало только вывести текст, подскажете как в arduino с U8glib
выводить переменые значения - минуты, секунды, данные сенсоров и тому подобное. Если у вас нет рабочего скетча, то где об этом можго найти? Хотелось бы побольше разобраться с работай arduino LCD (Nokia, Samsung и т.д.)
Вот здесь я выкладывал скетч метеостанции с часами пост 13 : http://arduino.ru/forum/programmirovanie/bme280