我们课上做的1602例程,大家可以借鉴一下。
单片机源程序如下:
- #include "1602_driver.h"
- void delay (int m)
- {
- unsigned char i,j;
- for (i=0;i<m;i++)
- for (j=0;j<253;j++);
- }
- BOOL lcd_bz()
- {
- BOOL result;
- rs=0;
- rw=1;
- ep=1;
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- result = (BOOL)(P0&0x80);
- ep=0;
- return result ;
- }
- void lcd_wcmd (uchar cmd)
- {
- while (lcd_bz());
- rs=0;
- rw=0;
- ep=0;
- _nop_();
- _nop_();
- P0=cmd ;
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- ep=1;
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- ep=0;
- }
- void lcd_pos (uchar pos)
- {
- lcd_wcmd (pos|0x80);
- }
- void lcd_wdat (uchar dat)
- {
- while (lcd_bz());
- rs=1;
- rw=0;
- ep=0;
- _nop_();
- _nop_();
- P0=dat ;
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- ep=1;
- _nop_();
- _nop_();
- _nop_();
- _nop_();
- ep=0;
- }
- void lcd_init ()
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
1602显示例程.zip
(239.84 KB, 下载次数: 9)
|