📄 keyboard.lst
字号:
627 3 rs232_send_command();
628 3 }
629 2 return ;
630 2 }
631 1 //分机已经准备好状态
632 1 if((current_state&0x07) == STATE_FOURTHFUNC_GUESTREADY){
633 2 //取消键处理
634 2 if(key_codec == KEY_CANCLE){
635 3 open_buzzer(); //BEEP
636 3 buzzer_timer = 225;
637 3 buzzer_timer_trigger = 1;
638 3 display_buffer[0]=10; //
639 3 display_buffer[1]=10;
640 3 display_buffer[2]=10;
641 3 display_buffer[3]=10;
642 3 current_state = STATE_FREE|STATE_FREE_NOCALL;
643 3 send_buffer[0] = COMMAND_HEADER;
644 3 send_buffer[1] = FOURTHFUNC_CANCLE;
645 3 send_buffer[2] = display_buffer[1];
646 3 send_buffer[3] = display_buffer[3];
647 3 rs232_send_command();
648 3 }
649 2 //数字键处理
650 2 if((key_codec >= 0x11)&&(key_codec <0x63)){
651 3 open_buzzer(); //BEEP
652 3 buzzer_timer = 225;
653 3 buzzer_timer_trigger = 1;
654 3 display_buffer[0]=0; //
655 3 display_buffer[1]=key_codec>>4;
656 3 display_buffer[2]=0;
657 3 display_buffer[3]=key_codec&0x0f;
658 3 }
659 2 //确认的处理
660 2 if(key_codec == KEY_SURE){
661 3 open_buzzer(); //BEEP
662 3 buzzer_timer = 225;
663 3 buzzer_timer_trigger = 1;
664 3 if(display_buffer[0] != SYMBLE_SUBM){
665 4 send_buffer[0] = COMMAND_HEADER;
666 4 send_buffer[1] = FOURTHFUNC_NEW;
667 4 send_buffer[2] = display_buffer[1];
668 4 send_buffer[3] = display_buffer[3];
669 4 rs232_send_command();
670 4 current_state = STATE_FOURTHFUNC|STATE_FOURTHFUNC_WAITDONE; }
671 3
672 3 }
673 2 return ;
C51 COMPILER V8.08 KEYBOARD 05/25/2008 20:21:42 PAGE 12
674 2 }
675 1 //四号功能等待完成态
676 1 if((current_state&0x07) == STATE_FOURTHFUNC_WAITDONE){;}
677 1 return;
678 1 }
679 //--------------------
680 //呼叫中心处理程序
681 //--------------------
682 void callingcenter_process(unsigned char key_coded)
683 {
684 1
685 1 if(key_coded == KEY_CANCLE){
686 2 open_buzzer(); //BEEP
687 2 buzzer_timer = 225;
688 2 buzzer_timer_trigger = 1;
689 2 display_buffer[0]=10; //
690 2 display_buffer[1]=10;
691 2 display_buffer[2]=10;
692 2 display_buffer[3]=10;
693 2 current_state = STATE_FREE|STATE_FREE_NOCALL;
694 2
695 2 send_buffer[0] = COMMAND_HEADER;
696 2 send_buffer[1] = CALLCENTER_CANCLE;
697 2 send_buffer[2] = display_buffer[1];
698 2 send_buffer[3] = display_buffer[3];
699 2 rs232_send_command();
700 2 }
701 1 return ;
702 1 }
703 //--------------------------------------------
704 //EIGHTEENTH FUNCTION STATE KEY PROCESS
705 //----------------------------------------------
706 void eighteenthfunc_process(unsigned char key_codee)
707 {
708 1 if(key_codee == KEY_NULL){return; }
709 1 //验证前状态处理
710 1 if((current_state&0x07) == STATE_EIGHTEENTHFUNC_PREIDENTY){
711 2 if((key_codee >= 0x11)&&(key_codee < 0x63)) {
712 3 open_buzzer(); //BEEP
713 3 buzzer_timer = 225;
714 3 buzzer_timer_trigger = 1;
715 3 psw_buffer[psw_index] = key_codee;
716 3 psw_index++;
717 3 if(psw_index >= 6)psw_index = 0;
718 3
719 3 }
720 2 if(key_codee == KEY_SURE){
721 3 open_buzzer(); //BEEP
722 3 buzzer_timer = 225;
723 3 buzzer_timer_trigger = 1;
724 3
725 3 if((psw_buffer[0]==KEY_101)&&(psw_buffer[1]==KEY_101)&&(psw_buffer[2]==KEY_101)&&(psw_buffer[3]==KEY_102
-)&&(psw_buffer[4]==KEY_102)&&((psw_buffer[5]==KEY_601)||(psw_buffer[5]==KEY_201)) )
726 3 {
727 4 display_buffer[0]=SYMBLE_SUBM; //
728 4 display_buffer[1]=SYMBLE_SUBM;
729 4 display_buffer[2]=SYMBLE_SUBM;
730 4 display_buffer[3]=SYMBLE_SUBM;
731 4 current_state = STATE_EIGHTEENTHFUNC|STATE_EIGHTEENTHFUNC_POSIDENTY;
732 4
733 4
734 4 send_buffer[0] = COMMAND_HEADER;
C51 COMPILER V8.08 KEYBOARD 05/25/2008 20:21:42 PAGE 13
735 4 send_buffer[1] = EIGHTEENTHFUNC_BEGIN;
736 4 send_buffer[2] = display_buffer[1];
737 4 send_buffer[3] = display_buffer[3];
738 4 rs232_send_command();
739 4 }
740 3 else {
741 4 current_state =STATE_FREE|STATE_FREE_NOCALL;
742 4 display_buffer[0]=10; //CLEAR SCREEN
743 4 display_buffer[1]=10;
744 4 display_buffer[2]=10;
745 4 display_buffer[3]=10;
746 4 open_buzzer(); //BEEP
747 4 buzzer_timer = 185;
748 4 buzzer_timer_trigger = 1;
749 4 }
750 3 }
751 2 return ;
752 2 }
753 1 //通过验证后状态,处理
754 1 if((current_state&0x07) == STATE_EIGHTEENTHFUNC_POSIDENTY){
755 2 //取消键处理
756 2 if(key_codee == KEY_CANCLE){
757 3 open_buzzer(); //BEEP
758 3 buzzer_timer = 225;
759 3 buzzer_timer_trigger = 1;
760 3 current_state = STATE_FREE|STATE_FREE_NOCALL;
761 3 display_buffer[0]=10; //CLEAR SCREEN
762 3 display_buffer[1]=10;
763 3 display_buffer[2]=10;
764 3 display_buffer[3]=10;
765 3
766 3 send_buffer[0] = COMMAND_HEADER;
767 3 send_buffer[1] = EIGHTEENTHFUNC_CANCLE;
768 3 send_buffer[2] = display_buffer[1];
769 3 send_buffer[3] = display_buffer[3];
770 3 rs232_send_command();
771 3 }
772 2 //数字键处理
773 2 if((key_codee >= 0x11)&&(key_codee <0x63)){
774 3 open_buzzer(); //BEEP
775 3 buzzer_timer = 225;
776 3 buzzer_timer_trigger = 1;
777 3 display_buffer[0]=0; //
778 3 display_buffer[1]=key_codee>>4;
779 3 display_buffer[2]=0;
780 3 display_buffer[3]=key_codee&0x0f;
781 3 }
782 2 if(key_codee == KEY_SURE){
783 3 open_buzzer(); //BEEP
784 3 buzzer_timer = 225;
785 3 buzzer_timer_trigger = 1;
786 3 if(display_buffer[0] != SYMBLE_SUBM){
787 4
788 4 send_buffer[0] = COMMAND_HEADER;
789 4 send_buffer[1] = EIGHTEENTHFUNC_MASK;
790 4 send_buffer[2] = display_buffer[1];
791 4 send_buffer[3] = display_buffer[3];
792 4 rs232_send_command();
793 4
794 4 current_state = STATE_EIGHTEENTHFUNC|STATE_EIGHTEENTHFUNC_WAITREADY; }
795 3
796 3 }
C51 COMPILER V8.08 KEYBOARD 05/25/2008 20:21:42 PAGE 14
797 2 return ;
798 2 }
799 1 //等待分机准备好状态处理
800 1 if((current_state&0x07) == STATE_EIGHTEENTHFUNC_WAITREADY){
801 2 // if(key_codee == KEY_CANCLE){
802 2 // open_buzzer(); //BEEP
803 2 // buzzer_timer = 225;
804 2 // buzzer_timer_trigger = 1;
805 2 // display_buffer[0]=10; //
806 2 // display_buffer[1]=10;
807 2 // display_buffer[2]=10;
808 2 // display_buffer[3]=10;
809 2 // current_state = STATE_FREE|STATE_FREE_NOCALL;
810 2 //
811 2 // send_buffer[0] = COMMAND_HEADER;
812 2 // send_buffer[1] = FOURTHFUNC_CANCLE;
813 2 // send_buffer[2] = display_buffer[1];
814 2 // send_buffer[3] = display_buffer[3];
815 2 // rs232_send_command();
816 2 // }
817 2 return ;
818 2 }
819 1
820 1 return;
821 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2168 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 11 5
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -