⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 foreground.lst

📁 FE42X单相防窃电电表DEMO(编译器 AQ430 AQ430 V2.0.6.5)
💻 LST
📖 第 1 页 / 共 5 页
字号:
                   845 ;     goto_high_freq(); 
                   846 ; {
                   847 ;     SVSCTL |= ( (0x04)  | 0x60);
012c f2d064005600  848     bis.b   #0x64,&0x56
                   849 DBG86:
                   850 ;     while ((SVSCTL & (0x02) ));
                   851 main_L5:
0132 e2b35600      852     bit.b   #0x2,&0x56
0136 fd23          853     jne main_L5
                   854 main_L6:
                   855 ;     SVSCTL |= (0x08) ;
                   856 DBG87:
0138 f2d25600      857     bis.b   #0x8,&0x56
                   858 DBG88:
                   859 ;     SCFI0 = (0x08)  | (0x80) ;
013c f24088005000  860     mov.b   #0x88,&0x50
                   861 DBG89:
                   862 ;     SCFQCTL = 64 - 1;
0142 f2403f005200  863     mov.b   #0x3f,&0x52
                   864 DBG91:
                   865 DBG90:
                   866 ;     clr_lcd_display();    
0148 b0120000      867     call    #_clr_lcd_display
                   868 DBG92:
                   869 ;     emeter.ucCalibrationOption = 1;
014c d2435f00      870     mov.b   #0x1,&_emeter+0x5f
                   871 DBG93:
                   872 ;     emeter.ui_meter_status |= (0x0400) ;
0150 b2d000040000  873     bis #0x400,&_emeter
                   874 DBG94:
                   875 ;     _EINT();
0156 32d2          876     eint
                   877 DBG95:
                   878 ;     while (1)
                   879 main_L7:
                   880 ;     {
                   881 DBG96:
                   882 ;           if((emeter.ui_anti_tamperring_status & (0x0004) ) == (0x0004) )
                   883 DBG97:
0158 1c420200      884     mov &_emeter+0x2,r12
015c 2cf2          885     and #0x4,r12
015e 2c92          886     cmp #0x4,r12
0160 0320          887     jne main_L9
                   888 DBG98:
                   889 ;               _BIS_SR( ( (0x0080) + (0x0040) + (0x0010) ) ); 
0162 32d0d000      890     bis #0xd0,sr
                   891 DBG99:
0166 023c          892     jmp main_L10
                   893 main_L9:
                   894 ;           else
                   895 ;               _BIS_SR( ( (0x0010) ) ); 
                   896 DBG100:
0168 32d01000      897     bis #0x10,sr
                   898 main_L10:
                   899 ;           if((emeter.ui_anti_tamperring_status & (0x0008) ) == (0x0008) )
                   900 DBG101:
016c 1c420200      901     mov &_emeter+0x2,r12
0170 3cf2          902     and #0x8,r12
0172 3c92          903     cmp #0x8,r12
0174 0a20          904     jne main_L11
                   905 DBG103:
                   906 DBG102:
                   907 ;       {
                   908 ;           if(emeter.ui_voltage_V1RMS < 8000)
0176 b290401f1600  909     cmp #0x1f40,&_emeter+0x16
017c 032c          910     jc  main_L12
                   911 DBG105:
                   912 DBG104:
                   913 ;           {
                   914 ;               SwitchToSD16Measure();
017e b0120000      915     call    #_SwitchToSD16Measure
                   916 DBG107:
                   917 DBG106:
                   918 ;           }
0182 053c          919     jmp main_L14
                   920 main_L12:
                   921 ;           else
                   922 ;           {
                   923 DBG108:
                   924 ;               SwitchToESPMeasure();   
                   925 DBG109:
0184 b0120000      926     call    #_SwitchToESPMeasure
                   927 DBG110:
                   928 main_L13:
                   929 ;           }
                   930 DBG111:
                   931 ;       }
                   932 DBG112:
0188 023c          933     jmp main_L14
                   934 main_L11:
                   935 ;       else
                   936 ;       {
                   937 DBG113:
                   938 ;           OnlyRTCMode();
                   939 DBG114:
018a b0120000      940     call    #_OnlyRTCMode
                   941 DBG115:
                   942 main_L14:
                   943 ;       }
                   944 ;       if(((emeter.ui_anti_tamperring_status & (0x0001) ) == (0x0001) ) 
                   945 DBG116:
018e 1c420200      946     mov &_emeter+0x2,r12
0192 1cf3          947     and #0x1,r12
0194 1c93          948     cmp #0x1,r12
0196 2520          949     jne main_L15
0198 a2b30200      950     bit #0x2,&_emeter+0x2
019c 2220          951     jne main_L15
                   952 DBG118:
                   953 DBG117:
                   954 ;           && ((emeter.ui_anti_tamperring_status & (0x0002) ) == 0))
                   955 ;       {
                   956 ;           if((emeter.ui_anti_tamperring_status & (0x0010) ) == (0x0010) )
019e 3c401000      957     mov #0x10,r12
01a2 1d420200      958     mov &_emeter+0x2,r13
01a6 0dfc          959     and r12,r13
01a8 0d9c          960     cmp r12,r13
01aa 5620          961     jne main_L18
                   962 DBG120:
                   963 DBG119:
                   964 ;           {
                   965 ;               log_parameters();
01ac b0120000      966     call    #_log_parameters
                   967 DBG121:
                   968 ;               if( ++emeter.uc_switch_delay_counter >= 2)
01b0 d2536300      969     add.b   #0x1,&_emeter+0x63
01b4 5c426300      970     mov.b   &_emeter+0x63,r12
01b8 6c93          971     cmp.b   #0x2,r12
01ba 0f28          972     jnc main_L17
                   973 DBG123:
                   974 DBG122:
                   975 ;               {
                   976 ;                   emeter.ui_voltage_V1RMS = voltage();
01bc b0120000      977     call    #_voltage
01c0 824d1600      978     mov r13,&_emeter+0x16
                   979 DBG124:
                   980 ;                   emeter.ui_current_IRMS = current()/10;
01c4 b0120000      981     call    #_current
01c8 3f400a00      982     mov #0xa,r15
01cc 0e43          983     mov #0x0,r14
                   984 DBG185:
01ce b0120000      985     call    #__sdiv32
                   986 DBG186:
01d2 824d1400      987     mov r13,&_emeter+0x14
                   988 DBG125:
                   989 ;                   emeter.uc_switch_delay_counter = 2;
01d6 e2436300      990     mov.b   #0x2,&_emeter+0x63
                   991 DBG127:
                   992 DBG126:
                   993 ;               }
                   994 main_L17:
                   995 ;               emeter.ui_anti_tamperring_status &= ~ (0x0010) ;
01da b2f0efff0200  996     and #0xffef,&_emeter+0x2
                   997 DBG129:
                   998 DBG128:
                   999 ;           }
                  1000 main_L16:
                  1001 DBG130:
                  1002 ;       }
                  1003 DBG131:
01e0 3b3c         1004     jmp main_L18
                  1005 main_L15:
                  1006 ;       else if(((emeter.ui_anti_tamperring_status & (0x0002) ) == (0x0002) )
                  1007 DBG132:
01e2 1c420200     1008     mov &_emeter+0x2,r12
01e6 2cf3         1009     and #0x2,r12
01e8 2c93         1010     cmp #0x2,r12
01ea 3220         1011     jne main_L19
01ec 92b30200     1012     bit #0x1,&_emeter+0x2
01f0 2f20         1013     jne main_L19
                  1014 DBG134:
                  1015 DBG133:
                  1016 ;           && ((emeter.ui_anti_tamperring_status & (0x0001) ) == 0))
                  1017 ;       {
                  1018 ;               if((emeter.ui_meter_status & (0x0800) ) == (0x0800) )
01f2 3c400008     1019     mov #0x800,r12
01f6 1d420000     1020     mov &_emeter,r13
01fa 0dfc         1021     and r12,r13
01fc 0d9c         1022     cmp r12,r13
01fe 0520         1023     jne main_L20
                  1024 DBG136:
                  1025 DBG135:
                  1026 ;               {
                  1027 ;                   emeter.ui_meter_status &= ~ (0x0800) ;
0200 b2f0fff70000 1028     and #0xf7ff,&_emeter
                  1029 DBG137:
                  1030 ;                   ActensperReadyIntMapping();
0206 b0120000     1031     call    #_ActensperReadyIntMapping
                  1032 DBG139:
                  1033 DBG138:
                  1034 ;               }
                  1035 main_L20:
                  1036 ;               if((emeter.ui_meter_status & (0x0010) ) == (0x0010) )
020a 3c401000     1037     mov #0x10,r12
020e 1d420000     1038     mov &_emeter,r13
0212 0dfc         1039     and r12,r13
0214 0d9c         1040     cmp r12,r13
0216 0720         1041     jne main_L21
                  1042 DBG141:
                  1043 DBG140:
                  1044 ;               {
                  1045 ;                   init_esp_parameter();   
0218 b0120000     1046     call    #_init_esp_parameter
                  1047 DBG142:
                  1048 ;                   start_measurement();    
021c b0120000     1049     call    #_start_measurement
                  1050 DBG143:
                  1051 ;               emeter.ui_meter_status &= ~ (0x0010) ;
0220 b2f0efff0000 1052     and #0xffef,&_emeter
                  1053 DBG145:
                  1054 DBG144:
                  1055 ;               }
                  1056 main_L21:
                  1057 ;               if((emeter.ui_meter_status & (0x0080) ) == (0x0080) )
0226 3d408000     1058     mov #0x80,r13
022a 1c420000     1059     mov &_emeter,r12
022e 0cfd         1060     and r13,r12
0230 0c9d         1061     cmp r13,r12
0232 1220         1062     jne main_L24
                  1063 DBG147:
                  1064 DBG146:
                  1065 ;               {
                  1066 ;                   if( ++emeter.uc_switch_delay_counter >= 2)
0234 d2536300     1067     add.b   #0x1,&_emeter+0x63
0238 5c426300     1068     mov.b   &_emeter+0x63,r12
023c 6c93         1069     cmp.b   #0x2,r12
023e 0428         1070     jnc main_L23
                  1071 DBG149:
                  1072 DBG148:
                  1073 ;               {
                  1074 ;                   EnergyReadyIntMapping();
0240 b0120000     1075     call    #_EnergyReadyIntMapping
                  1076 DBG150:
                  1077 ;                   emeter.uc_switch_delay_counter = 2;
0244 e2436300     1078     mov.b   #0x2,&_emeter+0x63
                  1079 DBG152:
                  1080 DBG151:
                  1081 ;               }
                  1082 main_L23:
                  1083 ;                   emeter.ui_meter_status &= ~ (0x0080) ;
0248 b2f07fff0000 1084     and #0xff7f,&_emeter
                  1085 DBG154:
                  1086 DBG153:
                  1087 ;               }
                  1088 main_L22:
                  1089 DBG155:
                  1090 ;           }
                  1091 DBG156:
024e 043c         1092     jmp main_L24
                  1093 main_L19:
                  1094 ;       else
                  1095 ;           {
                  1096 DBG157:
                  1097 ;               emeter.ui_anti_tamperring_status &= ~ (0x0002) ;
                  1098 DBG158:
0250 a2c30200     1099     bic #0x2,&_emeter+0x2
                  1100 DBG159:
                  1101 ;               emeter.ui_anti_tamperring_status &= ~ (0x0001) ; 
0254 92c30200     1102     bic #0x1,&_emeter+0x2
                  1103 DBG160:
                  1104 main_L24:
                  1105 main_L18:
                  1106 ;           }
                  1107 ;           if((emeter.ui_meter_status & (0x0100) ) == (0x0100) )
                  1108 DBG161:
0258 3d400001     1109     mov #0x100,r13
025c 1c420000     1110     mov &_emeter,r12
0260 0cfd         1111     and r13,r12
0262 0c9d         1112     cmp r13,r12
0264 0520         1113     jne main_L25
                  1114 DBG163:
                  1115 DBG162:
                  1116 ;           {
                  1117 ;               correct_rtc();
0266 b0120000     1118     call    #_correct_rtc
                  1119 DBG164:
                  1120 ;               emeter.ui_meter_status &= ~ (0x0100) ;
026a b2f0fffe0000 1121     and #0xfeff,&_emeter
                  1122 DBG166:
                  1123 DBG165:
                  1124 ;           }
                  1125 main_L25:
                  1126 ;           if((emeter.ui_meter_status & (0x0200) ) == (0x0200) )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -