📄 lcm16864zk.lst
字号:
337 ////////////////
338 void ShowTimes(uchar i)
339 {
340 1 uchar m,n;
341 1 m=i>>4;
342 1 m=m+0x30;
343 1 n=i&0x0f;
344 1 n=n+0x30;
345 1 WritData(m);
346 1 WritData(n);
347 1 }
348
349 ////////////////////////////////////////////////////////////////// 进入系统设置画面
350
351 void ShScreen1(void)
352 {
353 1 uchar i,j=0,k=0;
354 1 uchar CodeNum1[4];
355 1 while(1) {if(LKEY==1) break; }
356 1 //整体显示开 游标位置开
357 1 WritCommand(0x0e);
358 1 WritCommand(0x01);
359 1 ShowPart1();
360 1 WritCommand(0x90);
361 1 WritData(0xcf);WritData(0xb5);WritData(0xcd);WritData(0xb3); //显示系统密码:0
362 1 WritData(0xc3);WritData(0xdc);WritData(0xc2);WritData(0xeb);
363 1 WritData(0x3a);WritData(0x20);WritData(0x20);WritData(0x20);
364 1 WritData(0x20);WritData(0x20);
C51 COMPILER V7.06 LCM16864ZK 11/15/2006 18:43:11 PAGE 7
365 1 WritCommand(0x94);
366 1 WritData(0xa3);
367 1 WritData(0xb0);
368 1 WritCommand(0x10);
369 1 while(k<4)
370 1 {
371 2 if(LKEY==0)
372 2 {
373 3 Delay_ms(10);
374 3 if(LKEY==0)
375 3 {
376 4 while(1){if(LKEY==1) break;}
377 4 CodeNum1[k]=j;
378 4 k++;
379 4 for(i=0;i<4;i++) //判断密码是否正确
380 4 {
381 5 j=CodeNum[i];
382 5 if(CodeNum1[i]!=j)
383 5 {
384 6 WritCommand(0x01);
385 6 WritCommand(0x91);
386 6 WritData(0xc3);WritData(0xdc);WritData(0xc2);WritData(0xeb); //密码错误
387 6 WritData(0xb4);WritData(0xed);WritData(0xce);WritData(0xf3);
388 6 Delay_s(3);
389 6 k=0;
390 6 ShScreen1();
391 6 break;
392 6 }
393 5 }
394 4 RobSet();
395 4 StealSet();
396 4 FireSet();
397 4 CalenSet();
398 4 }
399 3 break;
400 3 }
401 2 if(MKEY==0)
402 2 {
403 3 Delay_ms(10);
404 3
405 3 if(MKEY==0)
406 3 {
407 4 j++;
408 4 if(j>9) j=0;
409 4 i=0xb0+j;
410 4 WritData(0xa3);
411 4 WritData(i); //显示下个数
412 4 WritCommand(0x10);
413 4 while(1){ if(MKEY==1) break; }
414 4 }
415 3 }
416 2 if(RKEY==0)
417 2 {
418 3 Delay_ms(10); //延时去抖动
419 3 if(RKEY==0)
420 3 {
421 4
422 4 CodeNum1[k]=j;
423 4 WritCommand(0x14);
424 4 k++;
425 4 if(k>3) {k=0; WritCommand(0x94);}
426 4 WritData(0xa3);
C51 COMPILER V7.06 LCM16864ZK 11/15/2006 18:43:11 PAGE 8
427 4 WritData(0xb0);
428 4 WritCommand(0x10);
429 4 j=0;
430 4 while(1)
431 4 {
432 5 if(RKEY==1) break;
433 5 }
434 4 }
435 3 }
436 2 ShowTime();
437 2 WritCommand(0x94+k);
438 2 Delay_ms(10);
439 2 }
440 1
441 1 }
442 ////////////////////////////////////////////////////////////////////////////////显示画面
443 void ShowPart1(void)
444 {
445 1 WritCommand(0x98);
446 1 WritData(0xc8);WritData(0xb7);WritData(0xc8);WritData(0xcf); //显示确认 选数 移动
447 1 WritData(0x20);WritData(0x20);WritData(0xd1);WritData(0xa1);
448 1 WritData(0xca);WritData(0xfd);WritData(0x20);WritData(0x20);
449 1 WritData(0xd2);WritData(0xc6);WritData(0xb6);WritData(0xaf);
450 1
451 1 }
452
453 void ShowPart2(void)
454 {
455 1 WritCommand(0x90);
456 1 WritData(0xb7);WritData(0xa2);WritData(0xc9);WritData(0xe4); //发射器编号:0
457 1 WritData(0xc6);WritData(0xf7);WritData(0xb1);WritData(0xe0);
458 1 WritData(0xba);WritData(0xc5);WritData(0x3a);WritData(0x20);
459 1 WritData(0xa3);WritData(0xb0);WritData(0xa3);WritData(0xb0);
460 1 WritData(0xa3);WritData(0xb0);
461 1 }
462 void ShowPart3(void)
463 {
464 1 WritCommand(0x90);
465 1 WritData(0xb5);WritData(0xe7);WritData(0xbb);WritData(0xb0); //电话报警:Y
466 1 WritData(0xb1);WritData(0xa7);WritData(0xbe);WritData(0xaf);
467 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
468 1 }
469 void ShowPart4(void)
470 {
471 1 WritCommand(0x98);
472 1 WritData(0xc8);WritData(0xb7);WritData(0xc8);WritData(0xcf); //确认 选择
473 1 WritCommand(0x9e);
474 1 WritData(0xd1);WritData(0xa1);WritData(0xd4);WritData(0xf1);
475 1 }
476 void ShowPart5(void)
477 {
478 1 WritCommand(0x98);
479 1 WritData(0xbd);WritData(0xf8);WritData(0xc8);WritData(0xeb); //进入
480 1 WritCommand(0x9e);
481 1 WritData(0xc1);WritData(0xed);WritData(0xd1);WritData(0xa1); //另选
482 1 }
483 void ShowPart6(void)
484 {
485 1 WritCommand(0x91);
486 1 WritData(0xc3);WritData(0xf9);WritData(0xbe);WritData(0xaf);
487 1 WritData(0xb5);WritData(0xd1); //鸣警笛 :Y
488 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
C51 COMPILER V7.06 LCM16864ZK 11/15/2006 18:43:11 PAGE 9
489 1 }
490 void ShowPart7(void)
491 {
492 1 WritCommand(0x90);
493 1 WritData(0xbd);WritData(0xd3);WritData(0xc1);WritData(0xa6); //接力报警:Y
494 1 WritData(0xb1);WritData(0xa7);WritData(0xbe);WritData(0xaf);
495 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
496 1 }
497 void ShowPart8(void)
498 {
499 1 WritCommand(0x90);
500 1 WritData(0xb7);WritData(0xe2);WritData(0xcb);WritData(0xf8); //封锁现场:Y
501 1 WritData(0xcf);WritData(0xd6);WritData(0xb3);WritData(0xa1);
502 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
503 1 }
504 void ShowPart9(void)
505 {
506 1 WritCommand(0x90);
507 1 WritData(0xc5);WritData(0xe7);WritData(0xc9);WritData(0xe4); //喷射眠雾:Y
508 1 WritData(0xc3);WritData(0xdf);WritData(0xce);WritData(0xed);
509 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
510 1 }
511
512 void ShowPart10(void)
513 {
514 1 WritCommand(0x90);
515 1 WritData(0xd4);WritData(0xb1);WritData(0xb9);WritData(0xa4); //员工编码:0
516 1 WritData(0xb1);WritData(0xe0);WritData(0xba);WritData(0xc5);
517 1 WritData(0xa3);WritData(0xb0);WritData(0xa3);WritData(0xb0);
518 1 WritData(0xa3);WritData(0xb0);WritData(0xa3);WritData(0xb0);
519 1 }
520 void ShowPart11(void)
521 {
522 1 WritCommand(0x90);
523 1 WritData(0xd7);WritData(0xee);WritData(0xc9);WritData(0xd9); //最少与数:0
524 1 WritData(0xd3);WritData(0xeb);WritData(0xca);WritData(0xfd);
525 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xb0);
526 1 }
527 void ShowPart12(void)
528 {
529 1 WritCommand(0x90);
530 1 WritData(0xc2);WritData(0xde);WritData(0xbc);WritData(0xad); //逻辑关系:A
531 1 WritData(0xb9);WritData(0xd8);WritData(0xcf);WritData(0xb5);
532 1 WritData(0x3a);WritData(0x20);WritData(0xa6);WritData(0xa1);
533 1 }
534 void ShowPart13(void)
535 {
536 1 WritCommand(0x90);
537 1 WritData(0xd3);WritData(0xeb);WritData(0xb5);WritData(0xc8); // 与等时间000S
538 1 WritData(0xca);WritData(0xb1);WritData(0xbc);WritData(0xe4);
539 1 WritData(0xa3);WritData(0xb0);WritData(0xa3);WritData(0xb0);
540 1 WritData(0xa3);WritData(0xb0);WritData(0xa3);WritData(0xd3);
541 1
542 1 }
543 void ShowPart14(void)
544 {
545 1 WritCommand(0x01);
546 1 WritCommand(0x98);
547 1 WritData(0xcc);WritData(0xee);WritData(0xd0);WritData(0xb4); //填写 继续
548 1 WritCommand(0x9b);
549 1 WritData(0xb2);WritData(0xbb);WritData(0xcc);WritData(0xee);
550 1 WritCommand(0x9e);
C51 COMPILER V7.06 LCM16864ZK 11/15/2006 18:43:11 PAGE 10
551 1 WritData(0xbc);WritData(0xcc);WritData(0xd0);WritData(0xf8);
552 1 }
553 void ShowPart15(void)
554 {
555 1 WritCommand(0x90);
556 1 WritData(0xd7);WritData(0xd4);WritData(0xb6);WritData(0xaf); //自动喷水:Y
557 1 WritData(0xc5);WritData(0xe7);WritData(0xcb);WritData(0xae);
558 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
559 1 }
560 void ShowPart16(void)
561 {
562 1 WritCommand(0x90);
563 1 WritData(0xd7);WritData(0xd4);WritData(0xb6);WritData(0xaf); //自动喷沙:Y
564 1 WritData(0xc5);WritData(0xe7);WritData(0xc9);WritData(0xb3);
565 1 WritData(0x3a);WritData(0x20);WritData(0xa3);WritData(0xd9);
566 1 }
567
568 void ShowPart17(void)
569 {
570 1 WritCommand(0x92);
571 1 WritData(0xc8);WritData(0xd5);WritData(0xc0);WritData(0xFa); //日历设置
572 1 WritData(0xc9);WritData(0xe8);WritData(0xd6);WritData(0xc3);
573 1 }
574 /*void ShowPart18(void)
575 {
576
577 }
578 */
579 ////////////////////////////////////报警
580
581
582
583 //////////////////////////////////////////////////////////////////
584 void RobSet(void) //防抢设置
585 {
586 1 WritCommand(0x01); //清零
587 1 WritCommand(0x0c);
588 1 WritCommand(0x92);
589 1 WritData(0xb7);WritData(0xc0);WritData(0xc7);WritData(0xc0); //防抢设置
590 1 WritData(0xc9);WritData(0xe8);WritData(0xd6);WritData(0xc3);
591 1 ShowPart5(); //进入 另选
592 1 while(1)
593 1 {
594 2 if(RKEY==0)
595 2 {
596 3 Delay_ms(10);
597 3 if(RKEY==0)
598 3 {
599 4 while(1){if(RKEY==1) break; }
600 4 }
601 3 break;
602 3 }
603 2 if(LKEY==0)
604 2 {
605 3 Delay_ms(10);
606 3 if(LKEY==0)
607 3 {
608 4 while(1) {if(LKEY==1)break;}
609 4 RobData=0x00;
610 4 TeleAlarm(); //报警处警设置
611 4 WhistleAlarm();
612 4 AlarmRelay();
C51 COMPILER V7.06 LCM16864ZK 11/15/2006 18:43:11 PAGE 11
613 4 BlankLocal();
614 4 EjectFog();
615 4 pdx=0x0101;
616 4 *pdx=RobData;
617 4 AnlTime(); //与等待时间
618 4 AnlNum(); //最少与数
619 4 RobSetNext();
620 4 break;
621 4 }
622 3 }
623 2 ShowTime();
624 2 }
625 1 }
626 void RobSetNext(void)
627 {
628 1 uchar i;
629 1 WritCommand(0x0e);
630 1 i=EjectorNum(); //发射器编号
631 1 EmployeeNum(); //员工编号
632 1 AnlSet(); //逻辑关系
633 1 RobSet1(); //继续 填写
634 1 }
635 void TeleAlarm(void)
636 {
637 1 bit i=1;
638 1 WritCommand(0x01);
639 1 WritCommand(0x0e);
640 1 ShowPart3(); //电话报警:Y
641 1 ShowPart4();
642 1 while(1)
643 1 {
644 2 if(LKEY==0)
645 2 {
646 3 Delay_ms(10);
647 3 if(LKEY==0)
648 3 {
649 4 while(1)
650 4 {if(LKEY==1) break;}
651 4 if(i==1)
652 4 {
653 5 RobData=RobData|0x01;
654 5 }
655 4 else
656 4 {
657 5 RobData=RobData&0xfe;
658 5 }
659 4 }
660 3 break;
661 3 }
662 2 if(RKEY==0)
663 2 {
664 3 Delay_ms(10);
665 3 if(RKEY==0)
666 3 {
667 4 while(1)
668 4 {if(RKEY==1) break;}
669 4 i=~i;
670 4 if(i==1)
671 4 {
672 5 WritCommand(0x95);
673 5 WritData(0xa3);WritData(0xd9);
674 5 WritCommand(0x10);
C51 COMPILER V7.06 LCM16864ZK 11/15/2006 18:43:11 PAGE 12
675 5 }
676 4 else
677 4 {
678 5 WritCommand(0x95);
679 5 WritData(0xa3);WritData(0xce);
680 5 WritCommand(0x10);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -