📄 test140.lst
字号:
186
187 /**********************写汉字子程序(文本)函数***********************/
188 void CCW1_PR(uint O_X,uint O_Y,uchar code_1)
189 {
*** WARNING C235 IN LINE 189 OF .\TEST140.C: parameter 1: different types
*** WARNING C235 IN LINE 189 OF .\TEST140.C: parameter 2: different types
190 1 uint i,j;
191 1 i=PARA;
192 1 j=i*O_Y+O_X;
193 1 wcadd1=0x4f; //CSRDIR 代码(下移)
194 1 wcadd1=0x46; //CSRW 代码
195 1 wdadd1=j%256; //设置光标地址
196 1 wdadd1=j/256;
197 1 wcadd1=0x42; //MWRITE 代码
198 1 wdadd1=code_1; // 写入汉字代码
199 1 wdadd1=code_1+1; // 写入汉字代码
200 1 j++;
201 1 wcadd1=0x46; // CSRW 代码
202 1 wdadd1=j%256; // 设置光标地址
203 1 wdadd1=j/256;
204 1 wcadd1=0x42; // MWRITE 代码
205 1 wdadd1=code_1+2; // 写入汉字代码
206 1 wdadd1=code_1+3; // 写入汉字代码
207 1 }
208
209 /**************************黑白阴影显示子程序**********************/
210 void display1(void)
211 {
212 1 uint z;
213 1 uchar w=0;
214 1 uchar i,j,n=0;
215 1 uchar O_X,O_Y;
216 1 wcadd1=0x4C; //CSRDIR 代码(右移)
217 1
218 1 while(n<=30)
219 1 {
220 2 for(i=0;i<30-n;i++)
221 2 {
222 3 w=i%2;
223 3 // w=w+(i%2);
224 3 O_X=0;
225 3 O_Y=i;
226 3 z=PARA*O_Y+O_X;
227 3
228 3 wcadd1=0x46; //CSRW 代码
229 3 wdadd1=z%256; //设置光标地址
230 3 wdadd1=z/256;
231 3 wcadd1=0x42; //MWRITE 代码
232 3 for(j=0;j<20;j++)
233 3 {
234 4 if(n%2==0)
235 4 {
236 5 if(w==0)
237 5 {
238 6 wdadd1=0x90;
239 6 wdadd1=0x91;
C51 COMPILER V6.12 TEST140 03/15/2005 11:37:03 PAGE 5
240 6 }
241 5 else
242 5 {
243 6 wdadd1=0x91;
244 6 wdadd1=0x90;
245 6 }
246 5 }
247 4 else
248 4 {
249 5 if(w!=0)
250 5 {
251 6 wdadd1=0x90;
252 6 wdadd1=0x91;
253 6 }
254 5 else
255 5 {
256 6 wdadd1=0x91;
257 6 wdadd1=0x90;
258 6 }
259 5 }
260 4
261 4 }
262 3 }
263 2 // for(i=30-n;i<30;i++)
264 2 {
265 3 O_X=0;
266 3 O_Y=30-n;
267 3 z=PARA*O_Y+O_X;
268 3
269 3 wcadd1=0x46; //CSRW 代码
270 3 wdadd1=z%256; //设置光标地址
271 3 wdadd1=z/256;
272 3 wcadd1=0x42; //MWRITE 代码
273 3 for(j=0;j<40;j++)
274 3 {
275 4 wdadd1=0x90;
276 4 }
277 3 }
278 2 delay_s(200);
279 2 delay_s(200);
280 2 delay_s(200);
281 2 delay_s(200);
282 2 delay_s(200);
283 2
284 2 n++;
285 2 }
286 1 }
287 /*************************数字,英文显示子函数*********************/
288 void display2(void)
289 {
290 1 uint z;
291 1 uchar i;
292 1 uchar O_X,O_Y;
293 1
294 1 O_X=0x0f; //显示数字0~9
295 1 O_Y=0x0c;
296 1 z=PARA*O_Y+O_X;
297 1 wcadd1=0x46; //CSRW 代码
298 1 wdadd1=z%256; //设置光标地址CSR
299 1 wdadd1=z/256;
300 1 wcadd1=0x4c; //CSRDIR 代码
301 1 wcadd1=0x42; //MWRITE 代码
C51 COMPILER V6.12 TEST140 03/15/2005 11:37:03 PAGE 6
302 1 for(i=0;i<10;i++)
303 1 {
304 2 wdadd1=CTAB1[i]; //写入数据
305 2 }
306 1
307 1 O_X=0x07; //显示英文A~Z
308 1 O_Y=0x0e;
309 1 z=PARA*O_Y+O_X;
310 1 wcadd1=0x46; //CSRW 代码
311 1 wdadd1=z%256; //设置光标地址CSR
312 1 wdadd1=z/256;
313 1 wcadd1=0x4c; //CSRDIR 代码
314 1 wcadd1=0x42; //MWRITE 代码
315 1 for(i=0;i<26;i++)
316 1 {
317 2 wdadd1=CTAB2[i]; //写入数据
318 2 }
319 1
320 1 O_X=0x0d;
321 1 O_Y=0x08;
322 1 z=PARA*O_Y+O_X;
323 1 wcadd1=0x46; //CSRW 代码
324 1 wdadd1=z%256; //设置光标地址CSR
325 1 wdadd1=z/256;
326 1 wcadd1=0x4c; //CSRDIR 代码
327 1 wcadd1=0x42; //MWRITE 代码
328 1 wdadd1=0x54;
329 1 wdadd1=0x45;
330 1 wdadd1=0x4c;
331 1 wdadd1=0x3a;
332 1 wdadd1=0x30;
333 1 wdadd1=0x32;
334 1 wdadd1=0x33;
335 1 wdadd1=0x2d;
336 1 wdadd1=0x36;
337 1 wdadd1=0x33;
338 1 wdadd1=0x35;
339 1 wdadd1=0x33;
340 1 wdadd1=0x35;
341 1 wdadd1=0x32;
342 1 wdadd1=0x39;
343 1 wdadd1=0x32;
344 1
345 1 }
346 /***************************延时子函数*****************************/
347 void delay_s(uchar x)
348 {
349 1 uchar i;
350 1
351 1 while(x>0)
352 1 {
353 2 for(i=200;i>0;i--)
354 2 {}
355 2 x--;
356 2 }
357 1 }
358
359
360
361
C51 COMPILER V6.12 TEST140 03/15/2005 11:37:03 PAGE 7
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 922 ----
CONSTANT SIZE = 128 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 80 19
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 2 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -