📄 time.lst
字号:
644 5 AlarmTime[0]|=t<<4;
645 5 break;
646 5
647 5 case 13: //秒低位
648 5 t=AlarmTime[0]&0x0F;
649 5 if(t>0)t--;
650 5 else t=9;
651 5 AlarmTime[0]&=0xF0;
652 5 AlarmTime[0]|=t;
653 5 break;
654 5
655 5 case 14: //开关调节
656 5 if(AlarmTime[3]==0)
657 5 {
658 6 AlarmTime[3]=1;
659 6 }
660 5 else
661 5 {
662 6 AlarmTime[3]=0;
663 6 }
664 5 break;
665 5 case 15: //温度高位
666 5 t=(AlarmTemperature>>4)&0x0F;
667 5 if(t>0)t--;
668 5 else t=9;
669 5 AlarmTemperature&=0x0F;
670 5 AlarmTemperature|=t<<4;
671 5 break;
672 5 case 16: //温度低位
673 5 t=(AlarmTemperature)&0x0F;
674 5 if(t>0)t--;
675 5 else t=9;
C51 COMPILER V7.50 TIME 06/02/2008 20:59:15 PAGE 12
676 5 AlarmTemperature&=0xF0;
677 5 AlarmTemperature|=t;
678 5 break;
679 5 default: SetDigit=8;
680 5 break;
681 5 }
682 4 KeyDown&=~KEY6;
683 4 }
684 3
685 3 if(KeyDown&KEY7) //加1调整
686 3 {
687 4 TimeModified=1; //修改了时钟
688 4 NeedRefresh=1; //需要刷新显示
689 4 switch(SetDigit) //调整不同的位
690 4 {
691 5 case 8: //小时高位
692 5 t=(AlarmTime[2]>>4)&0x03;
693 5 if(t<2)t++;
694 5 else t=0;
695 5 AlarmTime[2]&=0x0F;
696 5 AlarmTime[2]|=t<<4;
697 5 break;
698 5
699 5 case 9: //小时低位
700 5 t=AlarmTime[2]&0x0F;
701 5 if(((AlarmTime[2]>>4)&0x03)==2)
702 5 {
703 6 if(t<3)t++;
704 6 else t=0;
705 6 }
706 5 else
707 5 {
708 6 if(t<9)t++;
709 6 else t=0;
710 6 }
711 5 AlarmTime[2]&=0xF0;
712 5 AlarmTime[2]|=t;
713 5 break;
714 5
715 5 case 10: //分高位
716 5 t=(AlarmTime[1]>>4)&0x07;
717 5 if(t<5)t++;
718 5 else t=0;
719 5 AlarmTime[1]&=0x0F;
720 5 AlarmTime[1]|=t<<4;
721 5 break;
722 5
723 5 case 11: //分低位
724 5 t=AlarmTime[1]&0x0F;
725 5 if(t<9)t++;
726 5 else t=0;
727 5 AlarmTime[1]&=0xF0;
728 5 AlarmTime[1]|=t;
729 5 break;
730 5
731 5 case 12: //秒高位
732 5 t=(AlarmTime[0]>>4)&0x07;
733 5 if(t<5)t++;
734 5 else t=0;
735 5 AlarmTime[0]&=0x0F;
736 5 AlarmTime[0]|=t<<4;
737 5 break;
C51 COMPILER V7.50 TIME 06/02/2008 20:59:15 PAGE 13
738 5
739 5 case 13: //秒低位
740 5 t=AlarmTime[0]&0x0F;
741 5 if(t<9)t++;
742 5 else t=0;
743 5 AlarmTime[0]&=0xF0;
744 5 AlarmTime[0]|=t;
745 5 break;
746 5 case 14: //开关调节
747 5 if(AlarmTime[3]==0)
748 5 {
749 6 AlarmTime[3]=1;
750 6 }
751 5 else
752 5 {
753 6 AlarmTime[3]=0;
754 6 }
755 5 break;
756 5 case 15: //温度高位
757 5 t=(AlarmTemperature>>4)&0x0F;
758 5 if(t<9)t++;
759 5 else t=0;
760 5 AlarmTemperature&=0x0F;
761 5 AlarmTemperature|=t<<4;
762 5 break;
763 5 case 16: //温度低位
764 5 t=(AlarmTemperature)&0x0F;
765 5 if(t<9)t++;
766 5 else t=0;
767 5 AlarmTemperature&=0xF0;
768 5 AlarmTemperature|=t;
769 5 break;
770 5
771 5 default: SetDigit=8;
772 5 break;
773 5 }
774 4 KeyDown&=~KEY7;
775 4 }
776 3 }
777 2
778 2 if(SystemTick-OldTick>=70)
779 2 {
780 3 NeedRefresh=1;
781 3 OldTick=SystemTick;
782 3 }
783 2 if(NeedRefresh)
784 2 {
785 3 NeedRefresh=0;
786 3 DispBuffer[0]='0'+(AlarmTime[2]>>4);
787 3 DispBuffer[1]='0'+(AlarmTime[2]&0x0F);
788 3 DispBuffer[2]=':';
789 3 DispBuffer[3]='0'+(AlarmTime[1]>>4);
790 3 DispBuffer[4]='0'+(AlarmTime[1]&0x0F);
791 3 DispBuffer[5]=':';
792 3 DispBuffer[6]='0'+(AlarmTime[0]>>4);
793 3 DispBuffer[7]='0'+(AlarmTime[0]&0x0F);
794 3 DispBuffer[8]=' ';
795 3 if(AlarmTime[3]==0)
796 3 {
797 4 DispBuffer[9]='O';
798 4 DispBuffer[10]='F';
799 4 DispBuffer[11]='F';
C51 COMPILER V7.50 TIME 06/02/2008 20:59:15 PAGE 14
800 4 }
801 3 else
802 3 {
803 4 DispBuffer[9]='O';
804 4 DispBuffer[10]='N';
805 4 DispBuffer[11]=' ';
806 4 }
807 3 DispBuffer[12]='T';
808 3 DispBuffer[13]=':';
809 3 DispBuffer[14]='0'+(AlarmTemperature>>4);
810 3 DispBuffer[15]='0'+(AlarmTemperature&0x0F);
811 3 DispBuffer[16]=0;
812 3 on=!on;
813 3 if(!on)
814 3 {
815 4 switch(SetDigit)
816 4 {
817 5 case 8: DispBuffer[0]=' ';break;
818 5 case 9: DispBuffer[1]=' ';break;
819 5 case 10: DispBuffer[3]=' ';break;
820 5 case 11: DispBuffer[4]=' ';break;
821 5 case 12: DispBuffer[6]=' ';break;
822 5 case 13: DispBuffer[7]=' ';break;
823 5 case 14: DispBuffer[9]=' ';
824 5 DispBuffer[10]=' ';
825 5 DispBuffer[11]=' ';break;
826 5 case 15: DispBuffer[14]=' ';break;
827 5 case 16: DispBuffer[15]=' ';break;
828 5 default: SetDigit=8; break;
829 5 }
830 4 }
831 3 Prints(DispBuffer);
832 3 Prints("\r\n");
833 3 #ifdef LCD //如果有LCD,则同时显示到LCD上
834 3 if(DispStatus==DISP_SET_ALARM_TIME)
835 3 {
836 4 LcdSetPosition(0x40);
837 4 LcdPrints(DispBuffer);
838 4 }
839 3 #endif
840 3 }
841 2 }
842 1 }
843 ////////////////////////End of function//////////////////////////////
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2930 ----
CONSTANT SIZE = 78 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 5 16
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 + -