📄 dtt-110.lst
字号:
735 1 ePutstr(0,0," Welcome Use DTT-110 REV: 1.0");
736 1 Delay400Ms();
737 1 Delay400Ms();
C51 COMPILER V7.50 DTT_110 06/29/2005 09:27:32 PAGE 13
738 1 Delay400Ms();
739 1 Delay400Ms();
740 1 TMOD = 0x21;
741 1 PCON = 0;
742 1 SCON = 0xc0;
743 1 T2CON= 0x34;
744 1 TH2 = 0xff;
745 1 TL2 = 0xfd;
746 1 RCAP2L=0xfd;
747 1 RCAP2H=0xff;
748 1 TR2 = 1;
749 1 TH1 = 178;
750 1 ET1 = 1;
751 1 TR1 = 1;
752 1 IT0 = 1;
753 1 EX0 = 1;
754 1 EA = 1;
755 1 Discmd =1;
756 1 Readset();
757 1 if('Y'==Checkdate())
758 1 cke: if(Password()=='N')goto cke;
759 1 Menu1 = 0;
760 1 Menu2 = 0;
761 1 while(1) {
762 2 if(Mode==0) {
763 3 I_O = 0;
764 3 REN = 1;
765 3 ES = 1;
766 3 M_s_com = 0x00;
767 3 Dmxrun();
768 3 goto common;
769 3 }
770 2 if(Mode==1) {
771 3 I_O = 0;
772 3 REN = 1;
773 3 ES = 1;
774 3 M_s_com = 0x55;
775 3 buf[0] = dmxdat[0];
776 3 buf[1] = dmxdat[1];
777 3 buf[2] = dmxdat[2];
778 3 buf[3] = dmxdat[3];
779 3 buf[4] = dmxdat[4];
780 3 }
781 2 if(Mode==2) {
782 3 I_O = 1;
783 3 REN = 0;
784 3 ES = 0;
785 3 if(Program < 8) {
786 4 Progrun();
787 4 goto mon;
788 4 }
789 3 if(Pclock == 1){
790 4 Pclock = 0;
791 4 Progrun();
792 4 }
793 3
794 3 mon: buf[0] = Max(dmxdat[0],dmxdat[3]);
795 3 buf[1] = Max(dmxdat[1],dmxdat[3]);
796 3 buf[2] = Max(dmxdat[2],dmxdat[3]);
797 3 buf[3] = dmxdat[4];
798 3 goto common;
799 3
C51 COMPILER V7.50 DTT_110 06/29/2005 09:27:32 PAGE 14
800 3 }
801 2 if(Mode==3) {
802 3 I_O = 1;
803 3 REN = 0;
804 3 ES = 0;
805 3 if(Timerchk()==0){
806 4 buf[0] = 0;
807 4 buf[1] = 0;
808 4 buf[2] = 0;
809 4 buf[3] = 0;
810 4 goto common;
811 4 }
812 3 if(Timerchk()==1){
813 4 if(Pclock == 1){
814 5 Pclock = 0;
815 5 Progrun();
816 5 }
817 4 buf[0] = Max(dmxdat[0],dmxdat[3]);
818 4 buf[1] = Max(dmxdat[1],dmxdat[3]);
819 4 buf[2] = Max(dmxdat[2],dmxdat[3]);
820 4 buf[3] = dmxdat[4];
821 4 goto common;
822 4 }
823 3 if(Timerchk()==2){
824 4 buf[0] = 0;
825 4 buf[1] = 0;
826 4 buf[2] = 0;
827 4 buf[3] = 0;
828 4 }
829 3 }
830 2
831 2 common: if(Tclock==1){
832 3 Tclock = 0;
833 3 temp: if(Tempchk() > 75){
834 4 out[0] = 0;
835 4 out[1] = 0;
836 4 out[2] = 0;
837 4 ePutstr(0,0," Warning!!! ");
838 4 ePutstr(0,1,"Temperature Out ");
839 4 goto temp;
840 4 }
841 3 }
842 2
843 2 if(P2_3 == 0) {
844 3 out[0] = 0;
845 3 out[1] = 0;
846 3 out[2] = 0;
847 3 ePutstr(0,0," Warning!!! ");
848 3 ePutstr(0,1," Load Out 15A ");
849 3 goto common;
850 3 }
851 2
852 2 if(Display==0){
853 3 Setup();
854 3 Saveset();
855 3 }
856 2 PDisplay();
857 2 Faderun(buf[3]);
858 2
859 2 }
860 1 }
861 void SERI_DMX() interrupt 4 using 2{RI=0;
C51 COMPILER V7.50 DTT_110 06/29/2005 09:27:32 PAGE 15
862 1 if (RB8==0){CHK_SIGN=0;if (SBUF!=0){DMX_SIGN=1;return;}
863 2 DMX_SIGN=0;ADDR_CON=0;RECDAT=0;return;}
864 1 else if (CHK_SIGN!=1){if (DMX_SIGN==0){
865 3 DMX_SIGN=1;
866 3 if (SBUF==M_s_com) {CHK_SIGN=1;Dconter=200;return;}
867 3 }
868 2 return; }
869 1 if(RECDAT==0){
870 2 ADDR_CON++;
871 2 if(ADDR_CON==Dmxaddr)goto rec; return;
872 2 }
873 1 rec:dmxdat[RECDAT]=SBUF;
874 1 RECDAT++;
875 1 if(RECDAT>=5)RECDAT=0;
876 1 }
877
878 void Saveset(void){
879 1 if (Wr == 1){
880 2 if (key_read == 0){
881 3 Wr = 0;
882 3 W_P = 0;
883 3 Write_addr(0);
884 3 Send(0x55);
885 3 Send(Mode);
886 3 Send(Dmxaddr);
887 3 Send(Dmxaddr>>8);
888 3 Send(Dmxmode);
889 3 Send(Program);
890 3 Send(Speed);
891 3 Send(Speed>>8);
892 3 Stop();
893 3 Delay5Ms();
894 3 Write_addr(0x08);
895 3 Send(Fadetime);
896 3 Send(Year);
897 3 Send(Month);
898 3 Send(Day);
899 3 Send(Timer[0]);
900 3 Send(Timer[1]);
901 3 Send(Timer[2]);
902 3 Send(Timer[3]);
903 3 Stop();
904 3 Delay5Ms();
905 3 Write_addr(0x10);
906 3 Send(Timer[4]);
907 3 Send(Timer[5]);
908 3 Send(Timer[6]);
909 3 Send(Timer[7]);
910 3 Send(Timer[8]);
911 3 Send(Timer[9]);
912 3 Send(Timer[10]);
913 3 Send(Timer[11]);
914 3
915 3 Stop();
916 3 Delay5Ms();
917 3 Write_addr(0x18);
918 3 Send(Timer[12]);
919 3 Send(Timer[13]);
920 3 Send(Timer[14]);
921 3 Send(Timer[15]);
922 3 Send(Timer[16]);
923 3 Send(Timer[17]);
C51 COMPILER V7.50 DTT_110 06/29/2005 09:27:32 PAGE 16
924 3 Send(Timer[18]);
925 3 Send(Timer[19]);
926 3 Stop();
927 3 Delay5Ms();
928 3 Write_addr(0x20);
929 3 Send(Timer[20]);
930 3 Send(Timer[21]);
931 3 Send(Timer[22]);
932 3 Send(Timer[23]);
933 3 Send(Maxout);
934 3 Stop();
935 3 Delay5Ms();
936 3 W_P = 1;
937 3 }
938 2 }
939 1 }
940 void Readset(void) {
941 1 Uchar r;
942 1
943 1 Write_addr(0x00);
944 1 Start();
945 1 Send(0xa1);
946 1 if (Read() == 0x55){
947 2 Mode = Read();
948 2 Dmxaddr = Read();
949 2 Dmxaddr = Dmxaddr>>8 | Read();
950 2 Dmxmode = Read();
951 2 Program = Read();
952 2 Speed = Read();
953 2 Speed = Speed >>8 | Read();
954 2 Fadetime = Read();
955 2 Year = Read();
956 2 Month = Read();
957 2 Day = Read();
958 2 for (r=0; r<24; r++) {
959 3 Timer[r] = Read();
960 3 }
961 2 Maxout = Read();
962 2 }
963 1 Stop();
964 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 6071 ----
CONSTANT SIZE = 1259 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 45 60
IDATA SIZE = 29 ----
BIT SIZE = 8 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -