📄 lcdqd.lst
字号:
C51 COMPILER V8.02 LCDQD 10/22/2008 11:10:33 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE LCDQD
OBJECT MODULE PLACED IN LCDQD.OBJ
COMPILER INVOKED BY: D:\Program Files\keil\C51\BIN\C51.EXE LCDQD.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <AT89X51.h>
2 #define Data P0
3
4 sbit RS=P1^7;
5 sbit RW=P1^6;
6 sbit E=P2^6;
7
8 void delay(unsigned int k)
9 {
10 1 unsigned int i,j;
11 1 for(i=k;i>0;i--)
12 1 for(j=50;j>0;j--) ;
13 1 }
14
15 unsigned char ReadStatus(void)
16 {
17 1 Data = 0xFF;
18 1 RS = 0;
19 1 RW = 1;
20 1 E = 1;
21 1 while (Data & 0x80);
22 1 return(Data);
23 1 delay(2);
24 1 E = 0;
25 1 }
26
27 void wr_com(unsigned char com)
28 {
29 1 ReadStatus();
30 1 Data=com;
31 1 RS=0;
32 1 RW=0;
33 1 E=1;
34 1 delay(2);
35 1 E = 0;
36 1 }
37
38 void wr_dat(unsigned char dat)
39 {
40 1 ReadStatus();
41 1 Data = dat;
42 1 RS = 1;
43 1 RW = 0;
44 1 E = 1;
45 1 delay(2);
46 1 E = 0;
47 1 }
48
49 void LCD_Init(void)
50 {
51 1 Data =0x0;
52 1 wr_com(0x38);
53 1 delay(5);
54 1 wr_com(0x38);
55 1 delay(5);
C51 COMPILER V8.02 LCDQD 10/22/2008 11:10:33 PAGE 2
56 1 wr_com(0x38);
57 1 delay(5);
58 1 wr_com(0x38);
59 1 wr_com(0x08);
60 1 wr_com(0x01);
61 1 wr_com(0x06);
62 1 wr_com(0x0C);
63 1 }
64
65 void GotoXY(unsigned char x,unsigned char y)
66 {
67 1 x&=0x01;
68 1 y&=0x0F;
69 1 y|=(x==0)?0x80:0xC0;
70 1 wr_com(y);
71 1 do{
72 2 y=ReadStatus();
73 2 }while((y&0x80)==0x80);
74 1 }
75
76 void disp(unsigned char x,unsigned char y,unsigned char _char)
77 {
78 1 GotoXY(x,y);
79 1 wr_dat(_char);
80 1 }
81
82 void main(void)
83 { LCD_Init();
84 1 while(1)
85 1 {disp(0,0,'6');
86 2 disp(1,7,'8');}
87 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 202 ----
CONSTANT SIZE = ---- ----
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 + -