📄 lcd.lst
字号:
C51 COMPILER V7.06 LCD 12/23/2008 15:18:26 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN lcd.OBJ
COMPILER INVOKED BY: C:\Program Files\Keil\C51\BIN\C51.EXE lcd.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include<at89x51.h>
2 #define uint unsigned int
3 #define uchar unsigned char
4 #define line1 128
5 #define line2 192
6 uchar code num[]="0123456789";
7 sbit en=P3^3;
8 sbit rw=P3^4;
9 sbit rs=P3^5;
10 void delay(uint z)
11 {
12 1 uint x,y;
13 1 for(x=z;x>0;x--)
14 1 for(y=124;y>0;y--);
15 1 }
16 void write_lcd_com (uchar com)
17 {
18 1 rs=0;
19 1 rw=0;
20 1 P1=com;
21 1 delay(5);
22 1 en=1;
23 1 delay(5);
24 1 en=0;
25 1 }
26 void write_lcd_data (uchar date)
27 {
28 1 rs=1;
29 1 rw=0;
30 1 P1=date;
31 1 delay(5);
32 1 en=1;
33 1 delay(5);
34 1 en=0;
35 1 }
36 void init_lcd()
37 {
38 1 write_lcd_com(0x38);
39 1 write_lcd_com(0x0e);
40 1 write_lcd_com(0x06);
41 1 write_lcd_com(0x01);
42 1 write_lcd_com(0x01);
43 1 }
44 void display_lcd_string(char *p)
45 {
46 1 while(*p)
47 1 {
48 2 write_lcd_data(*p);
49 2 p++;
50 2 }
51 1 }
52 void display_lcd_number(char number)
53 {
54 1 uchar x,y;
55 1 x=number/10;
C51 COMPILER V7.06 LCD 12/23/2008 15:18:26 PAGE 2
56 1 y=number-10*x;
57 1 write_lcd_data(num[x]);
58 1 write_lcd_data(num[y]);
59 1 }
60 void gotoxy(uchar x,uchar y)
61 {
62 1 if(x==1)
63 1 write_lcd_com(line1+y);
64 1 else
65 1 write_lcd_com(line2+y);
66 1 }
67
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 154 ----
CONSTANT SIZE = 11 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -