1602驱动代码C

时间:2017-09-17 10:24:40
【文件属性】:

文件名称:1602驱动代码C

文件大小:3KB

文件格式:C

更新时间:2017-09-17 10:24:40

1602

#include //51敵湔恅璃 #include #include"1602.h" /****************晊奀滲杅************************/ void delay1(int ms) { //晊奀赽最唗 int i; while(ms--) { for(i = 0; i< 250; i++) { _nop_(); //諾硒俴 _nop_(); _nop_(); _nop_(); } } } /****************耜疆滲杅************************/ BOOL lcd_bz() { BOOL result; LCD_RS = 0; LCD_RW = 1; LCD_EP = 1; _nop_(); _nop_(); _nop_(); _nop_(); result = (BOOL)(P0 & 0x80); //潰聆P0郔詢弇岆瘁峈1 LCD_EP = 0; return result;//殿隙耜疆賦彆 } /****************迡韜鍔滲杅************************/ void lcd_wcmd_8bit(int cmd) { // 迡硌鍔杅擂善LCD while(lcd_bz()); LCD_RS = 0; LCD_RW = 0; LCD_EP = 0; _nop_(); _nop_(); P0 = cmd; //蔚詢4弇弇硌鍔籵徹P0諳換跤1602 _nop_(); _nop_(); //蚚衾莉汜珨跺闕喳遵僅 _nop_(); _nop_(); LCD_EP = 1; _nop_(); _nop_(); _nop_(); _nop_(); LCD_EP = 0; } void lcd_wcmd(int cmd) { // 迡硌鍔杅擂善LCD while(lcd_bz()); LCD_RS = 0; LCD_RW = 0; LCD_EP = 0; _nop_(); _nop_(); P0 = cmd; //蔚詢4弇弇硌鍔籵徹P0諳換跤1602 _nop_(); _nop_(); //蚚衾莉汜珨跺闕喳遵僅 _nop_(); _nop_(); LCD_EP = 1; _nop_(); _nop_(); _nop_(); _nop_(); LCD_EP = 0; P0 = (cmd&0x0f)<<4; //蔚腴4弇硌鍔籵徹P0諳換跤1602 _nop_(); _nop_(); //蚚衾莉汜珨跺闕喳遵僅 _nop_(); _nop_(); LCD_EP = 1; _nop_(); _nop_(); _nop_(); _nop_(); LCD_EP = 0; } void lcd_pos(BYTE pos) { //扢隅珆尨弇离 lcd_wcmd(pos | 0x80); } /****************迡杅擂滲杅************************/ void lcd_wdat(BYTE dat) { //迡趼睫珆尨杅擂善LCD while(lcd_bz()); LCD_RS = 1; LCD_RW = 0; LCD_EP = 0; P0 = dat ; //蔚詢4弇杅擂籵徹P0諳換跤1602 _nop_(); _nop_(); //蚚衾莉汜珨跺闕喳遵僅 _nop_(); _nop_(); LCD_EP = 1; _nop_(); _nop_(); _nop_(); _nop_(); LCD_EP = 0; LCD_RS = 1; LCD_RW = 0; LCD_EP = 0; _nop_(); _nop_(); _nop_(); _nop_(); P0 = (dat&0x0f)<<4; //蔚腴4弇弇杅擂籵徹P0諳換跤1602 _nop_(); _nop_(); //蚚衾莉汜珨跺闕喳遵僅 _nop_(); _nop_(); LCD_EP = 1; _nop_(); _nop_(); _nop_(); _nop_(); LCD_EP = 0; } void lcd_init() //LCD場宎趙扢隅 { lcd_wcmd_8bit(0x38); //16*2珆尨ㄛ5*7萸淝ㄛ8弇杅擂 delay1(1); lcd_wcmd_8bit(0x38); //16*2珆尨ㄛ5*7萸淝ㄛ8弇杅擂 delay1(1); lcd_wcmd_8bit(0x28); //16*2珆尨ㄛ5*7萸淝ㄛ8弇杅擂 delay1(1); lcd_wcmd(0x28); delay1(1); lcd_wcmd(0x0c); //珆尨羲ㄛ壽嫖梓 delay1(1); lcd_wcmd(0x02); //珆尨羲ㄛ壽嫖梓 delay1(1); lcd_wcmd(0x01); //壺LCD腔珆尨囀 delay1(1); /* lcd_wcmd(0x38); //16*2珆尨ㄛ5*7萸淝ㄛ8弇杅擂 delay(1); lcd_wcmd(0x08); //珆尨羲ㄛ壽嫖梓 delay(1); // lcd_wcmd(0x04); //痄雄嫖梓 delay(1); lcd_wcmd(0x02); // 4弇恁寁 delay(1); lcd_wcmd(0x01); //壺LCD腔珆尨囀 delay(1); */ }


网友评论