📄 8.4.lst
字号:
C51 COMPILER V7.09 8_4 08/24/2005 08:49:15 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE 8_4
OBJECT MODULE PLACED IN 8.4.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 8.4.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 //#include <reg8751.h>
3 #include <math.h>
4 #include <intrins.h>
5
6 sbit cd=P3^2;
7 sbit wr=P3^1;
8 sbit rd=P3^0;
9 sbit reset=P3^3;
10 sbit vee=P3^7;
11
12 sbit scl=P3^2;
13 sbit sda=P3^3;
14
15 unsigned int time;
16 unsigned char x,y;
17
18 /* 忙标志 */
19 #pragma disable
20 unsigned char busy(void) {
21 1 unsigned char dat;
22 1 cd=1;rd=1;wr=1;
23 1 P0=0xff;
24 1 rd=0;
25 1 dat=P0;
26 1 rd=1;
27 1 return(dat);
28 1 }
29 /* 数据,指令读写判别 */
30 #pragma disable
31 void p1(void) {
32 1 while ((busy()&3)!=3) {}
33 1 }
34 /* 数据自动读判别 */
35 #pragma disable
36 void p2(void) {
37 1 while ((busy()&4)!=4) {}
38 1 }
39 /* 数据自动写判别 */
40 #pragma disable
41 void p3(void) {
42 1 while ((busy()&8)!=8) {}
43 1 }
44 /* 控制指令 */
45 #pragma disable
46 void ctrl(unsigned char dat) {
47 1 p1();
48 1 cd=1;
49 1 wr=0;
50 1 P0=dat;
51 1 wr=1;
52 1 }
53 /* 写数据 */
54 #pragma disable
55 void write(unsigned char dat) {
C51 COMPILER V7.09 8_4 08/24/2005 08:49:15 PAGE 2
56 1 p1();
57 1 cd=0;
58 1 wr=0;
59 1 P0=dat;
60 1 wr=1;
61 1 cd=1;
62 1 }
63 /* 自动写 */
64 #pragma disable
65 void autowrite(unsigned char dat) {
66 1 p3();
67 1 cd=0;
68 1 wr=0;
69 1 P0=dat;
70 1 wr=1;
71 1 cd=1;
72 1 }
73 /* 读数据 */
74 #pragma disable
75 unsigned char read(void) {
76 1 unsigned char dat;
77 1 p1();
78 1 cd=0;
79 1 P0=0xff;
80 1 rd=0;
81 1 dat=P0;
82 1 rd=1;
83 1 cd=1;
84 1 return(dat);
85 1 }
86 /* 自动读数据 */
87 #pragma disable
88 unsigned char autoread(void) {
89 1 unsigned char dat;
90 1 p2();
91 1 cd=0;
92 1 P0=0xff;
93 1 rd=0;
94 1 dat=P0;
95 1 rd=1;
96 1 cd=1;
97 1 return(dat);
98 1 }
99 /* 显示图形和文本 */
100 #pragma disable
101 void disp(unsigned char d) { /*显示*/
102 1 write(d);ctrl(0xc0);
103 1 }
104 /* 设定图形x,y值*/
105 #pragma disable
106 void ag(unsigned char x,unsigned char y) { /*地址*/
107 1 unsigned int xy;
108 1 xy=y;
109 1 xy=xy*16+x+256;
110 1 write(xy&0xff);write(xy/256);ctrl(0x24);
111 1 }
112 /* 设定文本x,y值 */
113 #pragma disable
114 void at(unsigned char x,unsigned char y) { /*地址*/
115 1 write(y*16+x);write(0);ctrl(0x24);
116 1 }
117 /* 点亮一点 */
C51 COMPILER V7.09 8_4 08/24/2005 08:49:15 PAGE 3
118 #pragma disable
119 void setb(unsigned char d) {
120 1 ctrl(0xf8|d);
121 1 }
122 /* 清除一点*/
123 #pragma disable
124 void clrb(unsigned char d) {
125 1 ctrl(0xf0|d);
126 1 }
127 /* x,y处显示光标 */
128 #pragma disable
129 void ab(unsigned char x,unsigned char y) { /*光标*/
130 1 ctrl(0x97); /*光标开*/
131 1 write(x);write(y);ctrl(0x21);
132 1 }
133 /* 取消光标 */
134 #pragma disable
135 void noab(void) {
136 1 ctrl(0x9c);
137 1 }
138
139 /* lcd初始化 */
140 void init(void) {
141 1 unsigned int i;
142 1 reset=0;
143 1 reset=1;
144 1 write(0x0);write(0);ctrl(0x40); /*文本首址*/
145 1 write(0x10);write(0x0);ctrl(0x41); /*文本区域*/
146 1 write(0x0);write(0x1);ctrl(0x42); /*图形首址*/
147 1 write(0x10);write(0x0);ctrl(0x43); /*图形区域*/
148 1 ctrl(0x81); /*显示方式*/
149 1 ctrl(0x90); /*显示开关*/
150 1 ctrl(0xa0); /*光标形状*/
151 1 at(0,0);
152 1 ctrl(0xb0); /*自动写方式*/
153 1 for (i=0;i<1280;i++) {
154 2 autowrite(0x0);
155 2 }
156 1 ctrl(0xb2);/*结束自动写方式 */
157 1 ctrl(0x9c);
158 1 }
159
160
161
162
163
164
165
166 void wait10(void) {
167 1 time=0;
168 1 while (time<10) {}
169 1 }
170
171 unsigned char temp;
172
173
174 unsigned char code asc16[]={
175 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
176 0,0,126,129,165,129,129,189,153,129,129,126,0,0,0,0,
177 0,0,126,255,219,255,255,195,231,255,255,126,0,0,0,0,
178 0,0,0,0,108,254,254,254,254,124,56,16,0,0,0,0,
179 0,0,0,0,16,56,124,254,124,56,16,0,0,0,0,0,
C51 COMPILER V7.09 8_4 08/24/2005 08:49:15 PAGE 4
180 0,0,0,24,60,60,231,231,231,24,24,60,0,0,0,0,
181 0,0,0,24,60,126,255,255,126,24,24,60,0,0,0,0,
182 0,0,0,0,0,0,24,60,60,24,0,0,0,0,0,0,
183 255,255,255,255,255,255,231,195,195,231,255,255,255,255,255,255,
184 0,0,0,0,0,60,102,66,66,102,60,0,0,0,0,0,
185 255,255,255,255,255,195,153,189,189,153,195,255,255,255,255,255,
186 0,0,30,14,26,50,120,204,204,204,204,120,0,0,0,0,
187 0,0,60,102,102,102,102,60,24,126,24,24,0,0,0,0,
188 0,0,63,51,63,48,48,48,48,112,240,224,0,0,0,0,
189 0,0,127,99,127,99,99,99,99,103,231,230,192,0,0,0,
190 0,0,0,24,24,219,60,231,60,219,24,24,0,0,0,0,
191 0,128,192,224,240,248,254,248,240,224,192,128,0,0,0,0,
192 0,2,6,14,30,62,254,62,30,14,6,2,0,0,0,0,
193 0,0,24,60,126,24,24,24,126,60,24,0,0,0,0,0,
194 0,0,102,102,102,102,102,102,102,0,102,102,0,0,0,0,
195 0,0,127,219,219,219,123,27,27,27,27,27,0,0,0,0,
196 0,124,198,96,56,108,198,198,108,56,12,198,124,0,0,0,
197 0,0,0,0,0,0,0,0,254,254,254,254,0,0,0,0,
198 0,0,24,60,126,24,24,24,126,60,24,126,0,0,0,0,
199 0,0,24,60,126,24,24,24,24,24,24,24,0,0,0,0,
200 0,0,24,24,24,24,24,24,24,126,60,24,0,0,0,0,
201 0,0,0,0,0,24,12,254,12,24,0,0,0,0,0,0,
202 0,0,0,0,0,48,96,254,96,48,0,0,0,0,0,0,
203 0,0,0,0,0,0,192,192,192,254,0,0,0,0,0,0,
204 0,0,0,0,0,40,108,254,108,40,0,0,0,0,0,0,
205 0,0,0,0,16,56,56,124,124,254,254,0,0,0,0,0,
206 0,0,0,0,254,254,124,124,56,56,16,0,0,0,0,0,
207 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
208 0,0,24,60,60,60,24,24,24,0,24,24,0,0,0,0,
209 0,102,102,102,36,0,0,0,0,0,0,0,0,0,0,0,
210 0,0,0,108,108,254,108,108,108,254,108,108,0,0,0,0,
211 24,24,124,198,194,192,124,6,6,134,198,124,24,24,0,0,
212 0,0,0,0,194,198,12,24,48,96,198,134,0,0,0,0,
213 0,0,56,108,108,56,118,220,204,204,204,118,0,0,0,0,
214 0,48,48,48,96,0,0,0,0,0,0,0,0,0,0,0,
215 0,0,12,24,48,48,48,48,48,48,24,12,0,0,0,0,
216 0,0,48,24,12,12,12,12,12,12,24,48,0,0,0,0,
217 0,0,0,0,0,102,60,255,60,102,0,0,0,0,0,0,
218 0,0,0,0,0,24,24,126,24,24,0,0,0,0,0,0,
219 0,0,0,0,0,0,0,0,0,24,24,24,48,0,0,0,
220 0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,
221 0,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,
222 0,0,0,0,2,6,12,24,48,96,192,128,0,0,0,0,
223 0,0,56,108,198,198,214,214,198,198,108,56,0,0,0,0,
224 0,0,24,56,120,24,24,24,24,24,24,126,0,0,0,0,
225 0,0,124,198,6,12,24,48,96,192,198,254,0,0,0,0,
226 0,0,124,198,6,6,60,6,6,6,198,124,0,0,0,0,
227 0,0,12,28,60,108,204,254,12,12,12,30,0,0,0,0,
228 0,0,254,192,192,192,252,6,6,6,198,124,0,0,0,0,
229 0,0,56,96,192,192,252,198,198,198,198,124,0,0,0,0,
230 0,0,254,198,6,6,12,24,48,48,48,48,0,0,0,0,
231 0,0,124,198,198,198,124,198,198,198,198,124,0,0,0,0,
232 0,0,124,198,198,198,126,6,6,6,12,120,0,0,0,0,
233 0,0,0,0,24,24,0,0,0,24,24,0,0,0,0,0,
234 0,0,0,0,24,24,0,0,0,24,24,48,0,0,0,0,
235 0,0,0,6,12,24,48,96,48,24,12,6,0,0,0,0,
236 0,0,0,0,0,126,0,0,126,0,0,0,0,0,0,0,
237 0,0,0,96,48,24,12,6,12,24,48,96,0,0,0,0,
238 0,0,124,198,198,12,24,24,24,0,24,24,0,0,0,0,
239 0,0,0,124,198,198,222,222,222,220,192,124,0,0,0,0,
240 0,0,16,56,108,198,198,254,198,198,198,198,0,0,0,0,
241 0,0,252,102,102,102,124,102,102,102,102,252,0,0,0,0,
C51 COMPILER V7.09 8_4 08/24/2005 08:49:15 PAGE 5
242 0,0,60,102,194,192,192,192,192,194,102,60,0,0,0,0,
243 0,0,248,108,102,102,102,102,102,102,108,248,0,0,0,0,
244 0,0,254,102,98,104,120,104,96,98,102,254,0,0,0,0,
245 0,0,254,102,98,104,120,104,96,96,96,240,0,0,0,0,
246 0,0,60,102,194,192,192,222,198,198,102,58,0,0,0,0,
247 0,0,198,198,198,198,254,198,198,198,198,198,0,0,0,0,
248 0,0,60,24,24,24,24,24,24,24,24,60,0,0,0,0,
249 0,0,30,12,12,12,12,12,204,204,204,120,0,0,0,0,
250 0,0,230,102,102,108,120,120,108,102,102,230,0,0,0,0,
251 0,0,240,96,96,96,96,96,96,98,102,254,0,0,0,0,
252 0,0,198,238,254,254,214,198,198,198,198,198,0,0,0,0,
253 0,0,198,230,246,254,222,206,198,198,198,198,0,0,0,0,
254 0,0,124,198,198,198,198,198,198,198,198,124,0,0,0,0,
255 0,0,252,102,102,102,124,96,96,96,96,240,0,0,0,0,
256 0,0,124,198,198,198,198,198,198,214,222,124,12,14,0,0,
257 0,0,252,102,102,102,124,108,102,102,102,230,0,0,0,0,
258 0,0,124,198,198,96,56,12,6,198,198,124,0,0,0,0,
259 0,0,126,126,90,24,24,24,24,24,24,60,0,0,0,0,
260 0,0,198,198,198,198,198,198,198,198,198,124,0,0,0,0,
261 0,0,198,198,198,198,198,198,198,108,56,16,0,0,0,0,
262 0,0,198,198,198,198,214,214,214,254,238,108,0,0,0,0,
263 0,0,198,198,108,124,56,56,124,108,198,198,0,0,0,0,
264 0,0,102,102,102,102,60,24,24,24,24,60,0,0,0,0,
265 0,0,254,198,134,12,24,48,96,194,198,254,0,0,0,0,
266 0,0,60,48,48,48,48,48,48,48,48,60,0,0,0,0,
267 0,0,0,128,192,224,112,56,28,14,6,2,0,0,0,0,
268 0,0,60,12,12,12,12,12,12,12,12,60,0,0,0,0,
269 16,56,108,198,0,0,0,0,0,0,0,0,0,0,0,0,
270 0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,
271 48,48,24,0,0,0,0,0,0,0,0,0,0,0,0,0,
272 0,0,0,0,0,120,12,124,204,204,204,118,0,0,0,0,
273 0,0,224,96,96,120,108,102,102,102,102,124,0,0,0,0,
274 0,0,0,0,0,124,198,192,192,192,198,124,0,0,0,0,
275 0,0,28,12,12,60,108,204,204,204,204,118,0,0,0,0,
276 0,0,0,0,0,124,198,254,192,192,198,124,0,0,0,0,
277 0,0,56,108,100,96,240,96,96,96,96,240,0,0,0,0,
278 0,0,0,0,0,118,204,204,204,204,204,124,12,204,120,0,
279 0,0,224,96,96,108,118,102,102,102,102,230,0,0,0,0,
280 0,0,24,24,0,56,24,24,24,24,24,60,0,0,0,0,
281 0,0,6,6,0,14,6,6,6,6,6,6,102,102,60,0,
282 0,0,224,96,96,102,108,120,120,108,102,230,0,0,0,0,
283 0,0,56,24,24,24,24,24,24,24,24,60,0,0,0,0,
284 0,0,0,0,0,236,254,214,214,214,214,198,0,0,0,0,
285 0,0,0,0,0,220,102,102,102,102,102,102,0,0,0,0,
286 0,0,0,0,0,124,198,198,198,198,198,124,0,0,0,0,
287 0,0,0,0,0,220,102,102,102,102,102,124,96,96,240,0,
288 0,0,0,0,0,118,204,204,204,204,204,124,12,12,30,0,
289 0,0,0,0,0,220,118,102,96,96,96,240,0,0,0,0,
290 0,0,0,0,0,124,198,96,56,12,198,124,0,0,0,0,
291 0,0,16,48,48,252,48,48,48,48,54,28,0,0,0,0,
292 0,0,0,0,0,204,204,204,204,204,204,118,0,0,0,0,
293 0,0,0,0,0,102,102,102,102,102,60,24,0,0,0,0,
294 0,0,0,0,0,198,198,214,214,214,254,108,0,0,0,0,
295 0,0,0,0,0,198,108,56,56,56,108,198,0,0,0,0,
296 0,0,0,0,0,198,198,198,198,198,198,126,6,12,248,0,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -