Sunset_Pro Thành viên chính thức
Tổng số bài gửi : 55 Điểm : 97 Danh tiếng : 11 Ngày tham gia : 25/12/2010 Đến từ : UNETI
| Tiêu đề: LCD 8 bit Sun May 08, 2011 7:13 am | |
| #include
#define RS P3_0 #define RW P3_1 //RW=0 => ghi #define EN P3_2 //RW=1 => doc //RS=0 => code //RS=1 => data #define LCD_PORT P1
void delay_5ms(){ int i,j; for(i=0;i<250;i++) for(j=0;j<4;j++){} }
void delay_15ms(){ int i,j; for(i=0;i<250;i++) for(j=0;j<100;j++){} } void LCDWriteCmd(unsigned char c) { RS=0; RW=0; LCD_PORT=c; EN=1; EN=0; delay_5ms(); }
void LCDWriteData(unsigned char c) { RS=1; RW=0; LCD_PORT=c; EN=1; EN=0; delay_5ms(); }
void LCD_init() { delay_15ms(); LCDWriteCmd(0x30); LCDWriteCmd(0x30); LCDWriteCmd(0x30);
LCDWriteCmd(0x38); LCDWriteCmd(0x0C); // LCDWriteCmd(0x06); LCDWriteCmd(0x01); // Xoa man hinh LCD }
void LCD_clear() { LCDWriteCmd(0x01); }
void LCD_home() { LCDWriteCmd(0x80); }
void LCD_putstr(unsigned char *s) { while (*s) { LCDWriteData(*s); s++; } }
void main() {
LCD_init(); LCDWriteCmd(0x01); LCDWriteCmd(0x80); LCDWriteData('A'); LCDWriteData('B'); LCDWriteData('C'); LCDWriteData('D');
LCDWriteCmd(0xC0); LCD_putstr("dien-dien tu"); while (1) {} } | |
|
huudotb Thành viên đặc biệt
Tổng số bài gửi : 397 Điểm : 1334 Danh tiếng : 63 Ngày tham gia : 30/11/2010 Tuổi : 35 Đến từ : Thái Bình
| Tiêu đề: Re: LCD 8 bit Sun May 08, 2011 10:11 am | |
| Bạn có thể nói được nguyên lý hoạt động của việc hiển thị LCD ko ? Thank ! | |
|