📄 text2.lst
字号:
C51 COMPILER V6.12 TEXT2 06/02/2004 11:05:04 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE TEXT2
OBJECT MODULE PLACED IN .\Text2.obj
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE ..\液晶屏\Text2.c DEBUG OBJECTEXTEND PRINT(.\Text2.lst) OBJECT(.\Text2.obj)
-
stmt level source
1 /*液晶串行程序(适合1602)
2 /*======型号:SYM1602M-1===========================*/
3 #include <AT89X51.H>
4 #include<intrins.h>
5 //变量类型标识的宏定义,大家都喜欢这么做
6 #define uchar unsigned char
7 #define uint unsigned int
8 //------------------数据表--------------------------
9 uchar lcd1[33]={0X20,0X41,0X42,0X43,0X44,0X45,0X46,0X47,0X48,0X49,
10 0X4A,0X4B,0X4C,0X4D,0X4E,0X4F,0X50,0X51,0X52,0X53,
11 0X54,0X55,0X56,0X57,0X58,0X59,0X5A,0X3A,0X23,0X2A,
12 0X21,0X3F,0X2E};
13 /* 空 A B C D E F G H I
14 O 1 2 3 4 5 6 7 8 9
15 J K L M N O P Q R S
16 10 11 12 13 14 15 16 17 18 19
17 T U V W X Y Z : # *
18 20 21 22 23 24 25 26 27 28 29
19 ! ? .
20 30 31 32 */
21 uchar lcd2[16]={0X20,0X30,0X31,0X32,0X33,0X34,0X35,0X36,0X37,0X38,0X39
22 };
23 // 空 0 1 2 3 4 5 6 7 8 9
24 //---- 控制引脚定义,不同的连接必须修改的部分-----
25 sbit E=P3^5;
26 sbit SID=P3^0;
27 sbit CLK=P3^1;
28 sbit key=P3^7;
29 sbit led=P3^4;
30 //-------------延时子程序----------------
31 void delay(uchar x)
32 {uchar i;
33 1 for(i=0;i<x;i++);
34 1 }
35 //------------发送数据------------------
36 void fss(uchar l)
37 {uchar a,ll=0x02;
38 1 E=1; //打开数据传输
39 1 for(a=0;a<8;a++)
40 1 {ll=ll>>1;
41 2 SID=CY;
42 2 CLK=1;CLK=0;
43 2 }
44 1 for(a=0;a<8;a++)
45 1 {l=l>>1;
46 2 SID=CY;
47 2 CLK=1;CLK=0;
48 2 }
49 1 delay(200); // 延时110ns
50 1 E=0;
51 1 }
52 //-----------发送命令子程序--------------
53 void fs(uchar i)
54 {uchar a,k=0;;
C51 COMPILER V6.12 TEXT2 06/02/2004 11:05:04 PAGE 2
55 1 E=1; //打开数据传输
56 1 for(a=0;a<8;a++)
57 1 { k=k>>1;
58 2 SID=CY;
59 2 CLK=1;CLK=0;
60 2 }
61 1 for(a=0;a<8;a++)
62 1 { i=i>>1;
63 2 SID=CY;
64 2 CLK=1;CLK=0;
65 2 }
66 1 delay(200); // 延时110ns
67 1 E=0;
68 1 }
69 void csh(void)
70 {
71 1 delay(3000); //稳定电压
72 1 fs(0x01); //清除显示
73 1 delay(200);
74 1 fs(0x38);
75 1 delay(200);
76 1 fs(0x08);
77 1 delay(200);
78 1 fs(0x06);
79 1 delay(200);
80 1 fs(0x0C); //显示方式开显示,光标显示,闪烁禁止
81 1 delay(200);
82 1 }
83 //------------D1:XXXXXXXXXXXX------------------
84 //------------D2:XXXXXXXXXXXX------------------
85 void D1(void)
86 {
87 1 fs(0x01); //清除显示
88 1 delay(200);
89 1 fs(0x80); //第一行地址
90 1 delay(200);
91 1 fss(lcd1[4]); //D
92 1 delay(200);
93 1 fss(lcd2[1]); //1
94 1 delay(200);
95 1 fss(lcd1[27]); //:
96 1 delay(200);
97 1 fss(lcd1[24]); //X
98 1 delay(200);
99 1 fss(lcd1[24]); //X
100 1 delay(200);
101 1 fss(lcd1[24]); //X
102 1 delay(200);
103 1 fss(lcd1[24]); //X
104 1 delay(200);
105 1 fss(lcd1[24]); //X
106 1 delay(200);
107 1 fss(lcd1[24]); //X
108 1 delay(200);
109 1 fss(lcd1[24]); //X
110 1 delay(200);
111 1 fss(lcd1[24]); //X
112 1 delay(200);
113 1 fss(lcd1[24]); //X
114 1 delay(200);
115 1 fss(lcd1[24]); //X
116 1 delay(200);
C51 COMPILER V6.12 TEXT2 06/02/2004 11:05:04 PAGE 3
117 1 fss(lcd1[24]); //X
118 1 delay(200);
119 1 fss(lcd1[24]); //X
120 1 delay(200);
121 1 fs(0xC0); //第二行地址
122 1 delay(200);
123 1 fss(lcd1[4]); //D
124 1 delay(200);
125 1 fss(lcd2[2]); //2
126 1 delay(200);
127 1 fss(lcd1[27]); //:
128 1 delay(200);
129 1 fss(lcd1[24]); //X
130 1 delay(200);
131 1 fss(lcd1[24]); //X
132 1 delay(200);
133 1 fss(lcd1[24]); //X
134 1 delay(200);
135 1 fss(lcd1[24]); //X
136 1 delay(200);
137 1 fss(lcd1[24]); //X
138 1 delay(200);
139 1 fss(lcd1[24]); //X
140 1 delay(200);
141 1 fss(lcd1[24]); //X
142 1 delay(200);
143 1 fss(lcd1[24]); //X
144 1 delay(200);
145 1 fss(lcd1[24]); //X
146 1 delay(200);
147 1 fss(lcd1[24]); //X
148 1 delay(200);
149 1 fss(lcd1[24]); //X
150 1 delay(200);
151 1 fss(lcd1[24]); //X
152 1 delay(200);
153 1 }
154 //--------------BT:XX-----------------
155 //--------------CT:XX-----------------
156 void D2(void)
157 {fs(0x01); //清除显示
158 1 delay(200);
159 1 fs(0x80); //第一行地址
160 1 delay(200);
161 1 fss(lcd1[2]); //B
162 1 delay(200);
163 1 fss(lcd1[20]); //T
164 1 delay(200);
165 1 fss(lcd1[27]); //:
166 1 delay(200);
167 1 fss(lcd1[24]); //X
168 1 delay(200);
169 1 fss(lcd1[24]); //X
170 1 delay(200);
171 1 fs(0xC0); //第二行地址
172 1 delay(200);
173 1 fss(lcd1[3]); //C
174 1 delay(200);
175 1 fss(lcd1[20]); //T
176 1 delay(200);
177 1 fss(lcd1[27]); //:
178 1 delay(200);
C51 COMPILER V6.12 TEXT2 06/02/2004 11:05:04 PAGE 4
179 1 fss(lcd1[24]); //X
180 1 delay(200);
181 1 fss(lcd1[24]); //X
182 1 delay(200);
183 1 }
184 //--------------SD:XX-----------------
185 void D3(void)
186 {fs(0x01); //清除显示
187 1 delay(200);
188 1 fs(0x80); //第一行地址
189 1 delay(200);
190 1 fss(lcd1[19]); //S
191 1 delay(200);
192 1 fss(lcd1[4]); //D
193 1 delay(200);
194 1 fss(lcd1[27]); //:
195 1 delay(200);
196 1 fss(lcd1[24]); //X
197 1 delay(200);
198 1 fss(lcd1[24]); //X
199 1 delay(200);
200 1 }
201 //--------------TONE:XX-----------------
202 void D4(void)
203 {fs(0x01); //清除显示
204 1 delay(200);
205 1 fs(0x80); //第一行地址
206 1 delay(200);
207 1 fss(lcd1[20]); //T
208 1 delay(200);
209 1 fss(lcd1[15]); //O
210 1 delay(200);
211 1 fss(lcd1[14]); //N
212 1 delay(200);
213 1 fss(lcd1[5]); //E
214 1 delay(200);
215 1 fss(lcd1[27]); //:
216 1 delay(200);
217 1 fss(lcd1[24]); //X
218 1 delay(200);
219 1 fss(lcd1[24]); //X
220 1 delay(200);
221 1 }
222 //--------------REC BEGIN...-----------------
223 void D5(void)
224 {fs(0x01); //清除显示
225 1 delay(200);
226 1 fs(0x80); //第一行地址
227 1 delay(200);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -