📄 setup.lst
字号:
461 3 if(keynumber==ENTER)
462 3 {
463 4 submenuflag=0;
464 4 ram_writep0(DURESSMODE,setcount);
465 4
466 4 if(setcount)setduresspwdisp();
467 4 else setduressdisp(); //setduress(0xff);
468 4
469 4 }
470 3 else if(keynumber==CANCEL)
471 3 {
472 4 //submenuflag=0;
473 4 clearsetup();
474 4 setduressdisp();
475 4 }
476 3 else if(keynumber==NUMBER6)
477 3 {
478 4 setcount++;
479 4 if(setcount>=MAXDURESSSEL)setcount=0;
480 4 setduressdisp();
481 4 }
482 3 else if(keynumber==NUMBER4)
483 3 {
484 4 setcount--;
485 4 if(setcount>=MAXDURESSSEL)setcount=MAXDURESSSEL-1;
486 4 setduressdisp();
487 4 }
488 3 }
C51 COMPILER V7.01 SETUP 03/08/2007 12:09:38 PAGE 9
489 2 }
490 1 }
491 /////////////////////////////////////////////////////////////////////////////////
492 /*void displaybcd(unsigned char * pbcddata,unsigned char count,unsigned char startposi)
493 {
494 unsigned char i,line;
495 if(startposi>=32)return;
496
497 if(startposi>=16)
498 {
499 line=LINE2;
500 startposi-=16;
501 }
502 else line=LINE1;
503
504 for(i=0;i<count;i++)
505 {
506 if(i&1)dispbuff[line][i+startposi]=*(pbcddata+i/2)&0xf+0x30;
507 else dispbuff[line][i+startposi]=*(pbcddata+i/2)>>4+0x30;
508 }
509 }*/
510 /////////////////////////////////////////////////////////////////////////////////
511 void setduresspwdisp()
512 {
513 1 if(!submenuflag)
514 1 {
515 2 setupitem=SETDURESSPW;
516 2 displaymessage(LMSETDURESSPW,LINE1);
517 2 displaymessage(LMBLANK,LINE2);
518 2 //here display the password
519 2 displayshort(readduresspw(),2,23);
520 2 }
521 1 else
522 1 { //here display the edited password
523 2 display(LINE2);
524 2 }
525 1 }
526 /////////////////////////////////////////////////////////////////////////////////
527 void setduresspw()
528 {
529 1 unsigned char tempdata;
530 1
531 1 if(keynumber==0xff)setduresspwdisp();
532 1 else
533 1 {
534 2 if(!submenuflag)
535 2 {
536 3 if(keynumber==ENTER)
537 3 {
538 4 submenuflag=1;
539 4 setcount=0;
540 4 lcdcuron(DURESSPWSTARTP,LINE2);
541 4 }
542 3 else if(keynumber==CANCEL)terminatesetup();
543 3 else if(keynumber==NUMBER6)setbaudratedisp();
544 3 else if(keynumber==NUMBER4)setduressdisp();
545 3 }
546 2 else
547 2 {
548 3 if(keynumber==ENTER)
549 3 {
550 4 //submenuflag=0;
C51 COMPILER V7.01 SETUP 03/08/2007 12:09:38 PAGE 10
551 4 //here save the new duress password
552 4 //setduresspw(0xff);
553 4 //ram_write(DURESSPASS,0,dispbuff[1][7]*10+dispbuff[1][8]);
554 4 //setduresspwdisp();
555 4 }
556 3 else if(keynumber==CANCEL)
557 3 {
558 4 //submenuflag=0;
559 4 clearsetup();
560 4 //setduresspw(0xff);
561 4 setduresspwdisp();
562 4 }
563 3 else
564 3 {
565 4 dispbuff[LINE2][DURESSPWSTARTP+setcount]=keynumber+0x30;
566 4 setcount++;
567 4 display(LINE2);
568 4 lcdcuron(setcount+DURESSPWSTARTP,LINE2);
569 4 if(setcount>=2)
570 4 {
571 5 tempdata=( dispbuff[LINE2][DURESSPWSTARTP]-0X30)*10+dispbuff[LINE2][DURESSPWSTARTP+1]-0x30;
572 5 if(tempdata<MAXDURESSPASS)
573 5 {
574 6 ram_writep0(DURESSPW,tempdata);
575 6 }
576 5 submenuflag=0;
577 5 setduresspwdisp();
578 5 }
579 4
580 4 }
581 3 }
582 2 }
583 1 }
584 /////////////////////////////////////////////////////////////////////////////////
585 unsigned char code tblbaud[]={LM9600,LM19200,LM38400,LM4800};
586 /////////////////////////////////////////////////////////////////////////////////
587 void setbaudratedisp()
588 {
589 1 if(!submenuflag)
590 1 {
591 2 setupitem=SETBAUDRATE;
592 2 displaymessage(LMSETBAUDRATE,LINE1);
593 2 displaymessage(tblbaud[readbaudrate()],LINE2);
594 2 }
595 1 else
596 1 {
597 2 dispselectmessage(tblbaud[setcount]);
598 2 }
599 1 }
600 /////////////////////////////////////////////////////////////////////////////////
601 unsigned char code baudratetimer[4]={244,250,253,232};
602 /////////////////////////////////////////////////////////////////////////////////
603 void changebaudrate(unsigned char baudrate)
604 {
605 1
606 1 TR1=0;
607 1 delayTimerl(T5MS);
608 1 //TH1=253;
609 1 TH1=baudratetimer[baudrate];
610 1 delayTimerl(T5MS);
611 1 TR1=1;
612 1
C51 COMPILER V7.01 SETUP 03/08/2007 12:09:38 PAGE 11
613 1 delayTimerl(T5MS);
614 1 delayTimerl(T5MS);
615 1 delayTimerl(T5MS);
616 1 delayTimerl(T5MS);
617 1 init_modem();
618 1 }
619 /////////////////////////////////////////////////////////////////////////////////
620 void setbaudrate() //ok
621 {
622 1 if(keynumber==0xff)setbaudratedisp();
623 1 else
624 1 {
625 2 if(!submenuflag)
626 2 {
627 3 if(keynumber==ENTER)
628 3 {
629 4 submenuflag=1;
630 4 setcount=readbaudrate();
631 4 //setbaudrate(0xff);
632 4 dispselectmessage(tblbaud[setcount]);
633 4 }
634 3 else if(keynumber==CANCEL)terminatesetup();
635 3 else if(keynumber==NUMBER6)seteventcleardisp();
636 3 else if(keynumber==NUMBER4)setduressdisp();
637 3 }
638 2 else
639 2 {
640 3 if(keynumber==ENTER)
641 3 {
642 4 submenuflag=0;
643 4 ram_writep0(BAUDRATE,setcount);
644 4 changebaudrate(setcount);
645 4 setbaudratedisp();
646 4
647 4 }
648 3 else if(keynumber==CANCEL)
649 3 {
650 4 //submenuflag=0;
651 4 clearsetup();
652 4 setbaudratedisp();
653 4 }
654 3 else if(keynumber==NUMBER6)
655 3 {
656 4 setcount++;
657 4 if(setcount>=MAXBAUDRATESEL)setcount=0;
658 4 setbaudratedisp();
659 4 }
660 3 else if(keynumber==NUMBER4)
661 3 {
662 4 setcount--;
663 4 if(setcount>=MAXBAUDRATESEL)setcount=MAXBAUDRATESEL-1;
664 4 setbaudratedisp();
665 4 }
666 3 }
667 2 }
668 1 }
669 //////////////////////////////////////////////////////////////////////////////
670 void seteventcleardisp()
671 {
672 1 if(!submenuflag)
673 1 {
674 2 setupitem=SETEVENTCLEAR;
C51 COMPILER V7.01 SETUP 03/08/2007 12:09:38 PAGE 12
675 2 displaymessage(LMEVENTCLEAR,LINE1);
676 2 displaymessage(LMBLANK,LINE2);
677 2 }
678 1 else
679 1 {
680 2 displaymessage(LMYESNO,LINE2);
681 2 }
682 1 }
683 //////////////////////////////////////////////////////////////////////////////
684 void seteventclear()
685 {
686 1 if(keynumber==0xff)seteventcleardisp();
687 1 else
688 1 {
689 2 if(!submenuflag)
690 2 {
691 3 if(keynumber==ENTER)
692 3 {
693 4 submenuflag=1;
694 4 seteventcleardisp();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -