📄 lcd2.lst
字号:
C51 COMPILER V7.50 LCD2 10/06/2007 20:44:48 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE LCD2
OBJECT MODULE PLACED IN lcd2.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE lcd2.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*-------------------------------------八线lcd1602驱动程序------------------------------------------------
--*/
2 #include"lcd2.H"
3
4 void delay (uchar ms)//延时函数
5 {
6 1 uchar i;
7 1 while(ms--)
8 1 {for(i=0;i<100;i++); //24m 延时1ms
9 2 _nop_();
10 2 _nop_();
11 2 _nop_();
12 2 _nop_();
13 2 _nop_();
14 2 _nop_();
15 2 _nop_();
16 2 _nop_();
17 2 }
18 1 }
19 BOOL lcd_bz(void)//读忙
20 {
21 1 BOOL result;
22 1 rs=0;
23 1 rw=1;
24 1 ep=1;
25 1 delay(1);
26 1 result=(BOOL)(P1&0x80);
27 1 ep=0;
28 1 return result;
29 1 }
30
31 void lcd_wcmd(uchar cmd) //写指令
32 {
33 1 while(lcd_bz());
34 1 rs=0;
35 1 rw=0;
36 1 ep=0;
37 1 delay(1);
38 1 P1=cmd;
39 1 delay(1);
40 1 ep=1;
41 1 delay(1);
42 1 ep=0;
43 1 }
44
45 void lcd_pos(uchar pos)//设显示位置
46 {
47 1 lcd_wcmd(pos |0x80);
48 1 }
49
50 void lcd_wdat(uchar dat) //写数据
51 {
52 1 while(lcd_bz());
53 1 rs=1;
54 1 rw=0;
C51 COMPILER V7.50 LCD2 10/06/2007 20:44:48 PAGE 2
55 1 ep=0;
56 1 P1=dat;
57 1 delay(1);
58 1 ep=1;
59 1 delay(1);
60 1 ep=0;
61 1 }
62
63 void lcd_init(void) //初始化
64 {
65 1 lcd_wcmd(0x38);
66 1 delay (10);
67 1 lcd_wcmd(0x0c);
68 1 delay(1);
69 1 lcd_wcmd(0x06);
70 1 delay(1);
71 1 lcd_wcmd(0x01);
72 1 delay(1);
73 1 }
74
75 void lcd_wchar(uchar x,uchar y,uchar dat)//写字符
76 { if(y==2)
77 1 { lcd_pos(x|0x40 );
78 2 }
79 1 if(y==1)
80 1 { lcd_pos(x);
81 2 }
82 1 lcd_wdat(dat);}
83
84 void lcd_wdata(uchar x,uchar y,uint dat)// 写四位数字
85 { uchar ge,shi;
86 1 //qian=dat/1000;
87 1 //bai=(dat/100)%10;
88 1 //shi=(dat/10)%10;
89 1 //ge=dat%10;
90 1 shi=dat/10;
91 1 ge=dat%10;
92 1 //qian|=0x30;
93 1 //bai|=0x30;
94 1 shi|=0x30;
95 1 ge|=0x30;
96 1 //lcd_wchar(x,y,qian);
97 1 //lcd_wchar(x+1,y,bai);
98 1 //lcd_wchar(x+2,y,shi);
99 1 //lcd_wchar(x+3,y,ge);
100 1 lcd_wchar(x,y,shi);
101 1 lcd_wchar(x+1,y,ge);
102 1 }
103
104
105
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 228 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 4
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILER V7.50 LCD2 10/06/2007 20:44:48 PAGE 3
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -