📄 system.lst
字号:
C51 COMPILER V8.05a SYSTEM 03/18/2009 08:40:16 PAGE 5
240 1 dout=0;
241 1 Delay(180);
242 1 dout=1;
243 1 //总线由上拉电阻拉高 主机延时20us
244 1 Delay_10us();
245 1 Delay_10us();
246 1 Delay_10us();
247 1 Delay_10us();
248 1 //主机设为输入 判断从机响应信号
249 1 dout=1;
250 1 //判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行
251 1 if(!dout) //T !
252 1 {
253 2 U8FLAG=2;
254 2 //判断从机是否发出 80us 的低电平响应信号是否结束
255 2 while((!dout)&&U8FLAG++);
256 2 U8FLAG=2;
257 2 //判断从机是否发出 80us 的高电平,如发出则进入数据接收状态
258 2 while((dout)&&U8FLAG++);
259 2 //数据接收状态
260 2 COM();
261 2 U8RH_data_H_temp=U8comdata;
262 2 COM();
263 2 U8RH_data_L_temp=U8comdata;
264 2 COM();
265 2 U8T_data_H_temp=U8comdata;
266 2 COM();
267 2 U8T_data_L_temp=U8comdata;
268 2 COM();
269 2 U8checkdata_temp=U8comdata;
270 2 dout=1;
271 2 //数据校验
272 2
273 2 U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
274 2 if(U8temp==U8checkdata_temp)
275 2 {
276 3 U8RH_data_H=U8RH_data_H_temp;
277 3 U8RH_data_L=U8RH_data_L_temp;
278 3 U8T_data_H=U8T_data_H_temp;
279 3 U8T_data_L=U8T_data_L_temp;
280 3 U8checkdata=U8checkdata_temp;
281 3 }//fi
282 2 }//fi
283 1
284 1 }
285
286
287 void process(void)
288 {
289 1 if(U8RH_data_H==0)
290 1 { hh=0;
291 2 hl=0;
292 2 }
293 1 else
294 1 {
295 2 hh=U8RH_data_H/10;
296 2 hl=U8RH_data_H%10;
297 2 }
298 1
299 1 if(U8T_data_H==0)
300 1 { th=0;
301 2 tl=0;
C51 COMPILER V8.05a SYSTEM 03/18/2009 08:40:16 PAGE 6
302 2 }
303 1 else
304 1 {
305 2 th=U8T_data_H/10;
306 2 tl=U8T_data_H%10;
307 2 }
308 1 }
309
310 void Delay(U16 j)
311 { U8 i;
312 1 for(;j>0;j--)
313 1 {
314 2 for(i=0;i<27;i++);
315 2
316 2 }
317 1 }
318
319 void Delay_10us(void)
320 {
321 1 U8 i;
322 1 i--;
323 1 i--;
324 1 i--;
325 1 i--;
326 1 i--;
327 1 i--;
328 1 }
329 void winkling(void)
330 {
331 1 switch(mode_flag)
332 1 {
333 2 case 0:break;
334 2
335 2 case 1:
336 2 {
337 3 while(mode_flag==1)
338 3 {
339 4
340 4 send(0x05,0xf);
341 4 special(100);
342 4
343 4 if(mode_flag!=1) { send(0x05,th0); goto XX2; }
344 4
345 4
346 4 if(set_flag==1)
347 4 {
348 5 set_flag=0;
349 5 th0++;
350 5 if(th0>9) th0=0;
351 5
352 5 }
353 4
354 4 send(0x05,th0);
355 4 special(100);
356 4 if(set_flag==1)
357 4 {
358 5 set_flag=0;
359 5 th0++;
360 5 if(th0>9) th0=0;
361 5
362 5 }
363 4
C51 COMPILER V8.05a SYSTEM 03/18/2009 08:40:16 PAGE 7
364 4 }
365 3 }
366 2
367 2 case 2:
368 2 {
369 3 XX2: while(mode_flag==2)
370 3 {
371 4
372 4 send(0x06,0xf);
373 4 special(100);
374 4 if(mode_flag!=2){ send(0x06,tl0); goto XX3;}
375 4 if(set_flag==1)
376 4 {
377 5 set_flag=0;
378 5 tl0++;
379 5 if(tl0>9)tl0=0;
380 5
381 5 }
382 4 send(0x06,tl0);
383 4 special(100);
384 4 if(set_flag==1)
385 4 {
386 5 set_flag=0;
387 5 tl0++;
388 5 if(tl0>9)tl0=0;
389 5
390 5 }
391 4
392 4 }
393 3 }
394 2
395 2 case 3:
396 2
397 2 XX3: { while(mode_flag==3)
398 3 {
399 4
400 4 send(0x07,0xf);
401 4 special(100);
402 4 if(mode_flag!=3) { send(0x07,hh0); goto XX4;}
403 4
404 4 if(set_flag==1)
405 4 {
406 5 set_flag=0;
407 5 hh0++;
408 5 if(hh0>9)hh0=0;
409 5
410 5 }
411 4 send(0x07,hh0);
412 4 special(100);
413 4 if(set_flag==1)
414 4 {
415 5 set_flag=0;
416 5 hh0++;
417 5 if(hh0>9) hh0=0;
418 5 }
419 4 }
420 3 }
421 2
422 2 case 4:
423 2
424 2 XX4: { while(mode_flag==4)
425 3 {
C51 COMPILER V8.05a SYSTEM 03/18/2009 08:40:16 PAGE 8
426 4
427 4 send(0x08,0xf);
428 4 special(100);
429 4 if(mode_flag!=4) { send(0x08,hl0); goto XX5; }
430 4 if(set_flag==1)
431 4 {
432 5 set_flag=0;
433 5 hl0++;
434 5 if(hl0>9) hl0=0;
435 5 }
436 4
437 4
438 4 send(0x08,hl0);
439 4 special(100);
440 4 if(set_flag==1)
441 4 {
442 5 set_flag=0;
443 5 hl0++;
444 5 if(hl0>9) hl0=0;
445 5 }
446 4
447 4 }
448 3 }
449 2
450 2 case 5:
451 2 {
452 3 XX5: while(mode_flag==5)
453 3 {
454 4
455 4 s_seg(th0,tl0,hh0,hl0);
456 4
457 4
458 4 special(100);
459 4 if (mode_flag!=5) { s_seg(th0,tl0,hh0,hl0); goto XX6;}
460 4 s_seg(0xf,0xf,0xf,0xf);
461 4 special(100);
462 4
463 4
464 4 }
465 3 }
466 2 }
467 1 XX6: mode_flag=0;
468 1 s_seg(th,tl,hh,hl);
469 1
470 1
471 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1008 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 43 7
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -