#include<reg51.h> //#include"lcd8.h" #define lcd_data P0 sbit RS=P2^0; sbit RW=P2^1; sbit EN=P2^2; void write_lcd(unsigned char dat) { lcd_data=dat; RW=0; EN=1; EN=0; //delay_ms(2); } void cmd_lcd(unsigned char cmd) { RS=0; write_lcd(cmd); } void disp_lcd(unsigned char c) { RS=1; write_lcd(c); } void init_lcd(void) { cmd_lcd(0x01); cmd_lcd(0x02); cmd_lcd(0x06); cmd_lcd(0x0e); cmd_lcd(0x38); cmd_lcd(0x80); } void str_lcd(char *s) { while(*s) disp_lcd(*s++); } void int_lcd(unsigned int n) { char a[5]={0},i=0; if(n==0) { disp_lcd('0'); return; } else { while(n>0) { a[i++]=((n%10)+48); n=n/10; } for(--i;i>=0;i--) { disp_lcd(a[i]); } } } void float_lcd(float f) { int i; unsigned char j; i=f; int_lcd(i); disp_lcd('.'); for(j=0;j<3;j++) { f=(f-i)*10; i=f; int_lcd(i); } } main() { init_lcd(); disp_lcd('v'); str_lcd("hello"); cmd_lcd(0xc0); int_lcd(1234); float_lcd(56.34); while(1); { } }
Saturday, 6 December 2014
Embedded C code for LCD display
Posted by Madan
Posted on 23:57