подключить LCD3410

Genri5
Offline
Зарегистрирован: 31.05.2016

Поскольку разрешение LCD 3410 по более чем у  LCD3310, захотелось заменить 3410 на 3310. Но не все так просто как оказалось. Экран печатает, но все мелко, а остальная часть экрана засыпается точками-"мусором". Поиски в инете не помогли. Может у кого-то есть опыт работы с 3410.

Genri5
Offline
Зарегистрирован: 31.05.2016






  

 Выяснилось, что 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]

 













   






































 
  
wakum
Offline
Зарегистрирован: 03.01.2017

Добрый день, спасибо за рабочий скетч для 3410, работает, но мало только вывести текст, подскажете как в arduino с U8glib

выводить переменые значения - минуты, секунды, данные сенсоров и тому подобное. Если у вас нет рабочего скетча, то где об этом можго найти? Хотелось бы побольше разобраться с работай arduino LCD (Nokia, Samsung и т.д.)

Genri5
Offline
Зарегистрирован: 31.05.2016

Вот здесь я выкладывал скетч метеостанции с часами пост 13 : http://arduino.ru/forum/programmirovanie/bme280