سلام
خیلی وقت بود که یهLCD گرافیکیخریده بودم و متاسفانه وقت نمی شد تستش کنمو خلاصه هر طور بود فرصتی پیش اومد تا اون رو تست کنم و با توجه به جستجوهایی که داشتم مطلب فارسی خوبی ندیدم و گفتم اینجا بزارم تا کسی خواست همه چیز رو یکجا داشته باشه.
ابتدا توضیحی رو درمورد روش های راه اندازی این نمایشگر بدم. خوشبختانه این درایور می تونه در سه حالت راه اندازی بشه:
1- ارتباط سریال
2- ارتباط موازی 4 سیمه
3- ارتباط موازی 8 سیمه
خب اتصال پایه ها در این پروژه به این صورت هست:
اینم از کدهای برنامه
موفق باشید...
خیلی وقت بود که یهLCD گرافیکیخریده بودم و متاسفانه وقت نمی شد تستش کنمو خلاصه هر طور بود فرصتی پیش اومد تا اون رو تست کنم و با توجه به جستجوهایی که داشتم مطلب فارسی خوبی ندیدم و گفتم اینجا بزارم تا کسی خواست همه چیز رو یکجا داشته باشه.
ابتدا توضیحی رو درمورد روش های راه اندازی این نمایشگر بدم. خوشبختانه این درایور می تونه در سه حالت راه اندازی بشه:
1- ارتباط سریال
2- ارتباط موازی 4 سیمه
3- ارتباط موازی 8 سیمه
خب اتصال پایه ها در این پروژه به این صورت هست:
PIN 1 on LCD [VSS] to Ground
(PIN 2 on LCD [VDD] to 5V (via ardiuno
PIN 3 on LCD [VO] to PIN2 Variable Resistor
(PIN 4 on LCD [RS] to D10 (arduino
(PIN 5 on LCD [R/W] to D11 (arduino
(PIN 6 on LCD [E] to D13 (arduino
PIN 15 on LCD [PSB] to Ground
PIN 18 on LCD [Vout] to PIN1 Variable Resistor
PIN 19 on LCD [LEDA] to 5V
PIN 20 on LCD [LEDK] to Ground
PIN 3 on Variable Resistor to Ground
در این پروژه من ازآردوینو Uno استفاده کردم و پیشنهاد می کنم حتما یکی بخرین (PIN 2 on LCD [VDD] to 5V (via ardiuno
PIN 3 on LCD [VO] to PIN2 Variable Resistor
(PIN 4 on LCD [RS] to D10 (arduino
(PIN 5 on LCD [R/W] to D11 (arduino
(PIN 6 on LCD [E] to D13 (arduino
PIN 15 on LCD [PSB] to Ground
PIN 18 on LCD [Vout] to PIN1 Variable Resistor
PIN 19 on LCD [LEDA] to 5V
PIN 20 on LCD [LEDK] to Ground
PIN 3 on Variable Resistor to Ground
اینم از کدهای برنامه
کد:
#include "U8glib.h" // setup u8g object, please remove comment from one of the following constructor calls U8GLIB_ST7920_128X64 u8g(13, 11, 10, U8G_PIN_NONE); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 0 void draw(void) { // graphic commands to redraw the complete screen should be placed here u8g.setFont(u8g_font_unifont); u8g.drawStr( 20, 20, "Hello ECA!"); u8g.drawStr( 0, 50, "** S.Arasteh **"); } void setup(void) { // flip screen, if required // u8g.setRot180(); // set SPI backup if required //u8g.setHardwareBackup(u8g_backup_avr_spi); // assign default color value if ( u8g.getMode() == U8G_MODE_R3G3B2 ) 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 } void loop(void) { // picture loop u8g.firstPage(); do { draw(); } while( u8g.nextPage() ); // rebuild the picture after some delay delay(500); }
و اینم تصویری از نمایشگر راه اندازی شده
امیدوارم مفید باشه.موفق باشید...
دیدگاه