📄 main.lst
字号:
$015D $295C GOTO $-1
$015E $2959 GOTO $-5
$015F $2956 GOTO $-9
$0160 $3046 MOVLW 70
$0161 $00FB MOVWF STACK_11
$0162 $30FF MOVLW 255
$0163 $00FA MOVWF STACK_10
$0164 $0BFB DECFSZ STACK_11, F
$0165 $2967 GOTO $+2
$0166 $296A GOTO $+4
$0167 $0BFA DECFSZ STACK_10, F
$0168 $2967 GOTO $-1
$0169 $2964 GOTO $-5
$016A $30CF MOVLW 207
$016B $00FA MOVWF STACK_10
$016C $0BFA DECFSZ STACK_10, F
$016D $296C GOTO $-1
$016E $0000 NOP
;main.c,70 :: Delay_ms(250);
$016F $3002 MOVLW 2
$0170 $00FC MOVWF STACK_12
$0171 $30FF MOVLW 255
$0172 $00FB MOVWF STACK_11
$0173 $30FF MOVLW 255
$0174 $00FA MOVWF STACK_10
$0175 $0BFC DECFSZ STACK_12, F
$0176 $2978 GOTO $+2
$0177 $297F GOTO $+8
$0178 $0BFB DECFSZ STACK_11, F
$0179 $297B GOTO $+2
$017A $297E GOTO $+4
$017B $0BFA DECFSZ STACK_10, F
$017C $297B GOTO $-1
$017D $2978 GOTO $-5
$017E $2975 GOTO $-9
$017F $3046 MOVLW 70
$0180 $00FB MOVWF STACK_11
$0181 $30FF MOVLW 255
$0182 $00FA MOVWF STACK_10
$0183 $0BFB DECFSZ STACK_11, F
$0184 $2986 GOTO $+2
$0185 $2989 GOTO $+4
$0186 $0BFA DECFSZ STACK_10, F
$0187 $2986 GOTO $-1
$0188 $2983 GOTO $-5
$0189 $30CF MOVLW 207
$018A $00FA MOVWF STACK_10
$018B $0BFA DECFSZ STACK_10, F
$018C $298B GOTO $-1
$018D $0000 NOP
;main.c,71 :: }
$018E $0008 RETURN
$018F $ _rotate1:
;main.c,460 :: void rotate1()
;main.c,462 :: step_D = 1;
$018F $1303 BCF STATUS, RP1
$0190 $1283 BCF STATUS, RP0
$0191 $1489 BSF PORTE, 1
;main.c,463 :: motor_delay();
$0192 $20A0 CALL _motor_delay
;main.c,464 :: step_D = 0;
$0193 $1089 BCF PORTE, 1
;main.c,465 :: step_C = 1;
$0194 $1409 BSF PORTE, 0
;main.c,466 :: motor_delay();
$0195 $20A0 CALL _motor_delay
;main.c,467 :: step_C = 0;
$0196 $1009 BCF PORTE, 0
;main.c,468 :: step_B = 1;
$0197 $1485 BSF PORTA, 1
;main.c,469 :: motor_delay();
$0198 $20A0 CALL _motor_delay
;main.c,470 :: step_B = 0;
$0199 $1085 BCF PORTA, 1
;main.c,471 :: step_A = 1;
$019A $1405 BSF PORTA, 0
;main.c,472 :: motor_delay();
$019B $20A0 CALL _motor_delay
;main.c,473 :: step_A = 0;
$019C $1005 BCF PORTA, 0
;main.c,474 :: }
$019D $0008 RETURN
$019E $ _EEprom_write:
$019E $0000 NOP
$019F $ L_EEprom_write_0:
$019F $1703 BSF STATUS, RP1
$01A0 $1683 BSF STATUS, RP0
$01A1 $1C8C BTFSS EECON1, 1
$01A2 $29A5 GOTO L_EEprom_write_1
$01A3 $0000 NOP
$01A4 $299F GOTO L_EEprom_write_0
$01A5 $ L_EEprom_write_1:
$01A5 $1303 BCF STATUS, RP1
$01A6 $1283 BCF STATUS, RP0
$01A7 $0849 MOVF FARG_EEprom_write+0, 0
$01A8 $1703 BSF STATUS, RP1
$01A9 $008D MOVWF EEADR
$01AA $1303 BCF STATUS, RP1
$01AB $084A MOVF FARG_EEprom_write+1, 0
$01AC $1703 BSF STATUS, RP1
$01AD $008C MOVWF EEDATA
$01AE $1683 BSF STATUS, RP0
$01AF $138C BCF EECON1, 7
$01B0 $150C BSF EECON1, 2
$01B1 $138B BCF INTCON, 7
$01B2 $3055 MOVLW 85
$01B3 $008D MOVWF EECON2
$01B4 $30AA MOVLW 170
$01B5 $008D MOVWF EECON2
$01B6 $148C BSF EECON1, 1
$01B7 $178B BSF INTCON, 7
$01B8 $110C BCF EECON1, 2
$01B9 $0008 RETURN
$01BA $ _rotate2:
;main.c,444 :: void rotate2()
;main.c,446 :: step_A = 1;
$01BA $1303 BCF STATUS, RP1
$01BB $1283 BCF STATUS, RP0
$01BC $1405 BSF PORTA, 0
;main.c,447 :: motor_delay();
$01BD $20A0 CALL _motor_delay
;main.c,448 :: step_A = 0;
$01BE $1005 BCF PORTA, 0
;main.c,449 :: step_B = 1;
$01BF $1485 BSF PORTA, 1
;main.c,450 :: motor_delay();
$01C0 $20A0 CALL _motor_delay
;main.c,451 :: step_B = 0;
$01C1 $1085 BCF PORTA, 1
;main.c,452 :: step_C = 1;
$01C2 $1409 BSF PORTE, 0
;main.c,453 :: motor_delay();
$01C3 $20A0 CALL _motor_delay
;main.c,454 :: step_C = 0;
$01C4 $1009 BCF PORTE, 0
;main.c,455 :: step_D = 1;
$01C5 $1489 BSF PORTE, 1
;main.c,456 :: motor_delay();
$01C6 $20A0 CALL _motor_delay
;main.c,457 :: step_D = 0;
$01C7 $1089 BCF PORTE, 1
;main.c,458 :: }
$01C8 $0008 RETURN
$01C9 $ _Usart_Read:
$01C9 $1303 BCF STATUS, RP1
$01CA $1283 BCF STATUS, RP0
$01CB $081A MOVF RCREG, 0
$01CC $00C9 MOVWF Usart_Read_tmp_L0
$01CD $1C98 BTFSS RCSTA, 1
$01CE $29D1 GOTO L_Usart_Read_2
$01CF $1218 BCF RCSTA, 4
$01D0 $1618 BSF RCSTA, 4
$01D1 $ L_Usart_Read_2:
$01D1 $0849 MOVF Usart_Read_tmp_L0, 0
$01D2 $00F0 MOVWF STACK_0
$01D3 $0008 RETURN
$01D4 $ _Usart_Write:
$01D4 $ L_Usart_Write_3:
$01D4 $3000 MOVLW 0
$01D5 $1303 BCF STATUS, RP1
$01D6 $1683 BSF STATUS, RP0
$01D7 $1898 BTFSC TXSTA, 1
$01D8 $3001 MOVLW 1
$01D9 $00F1 MOVWF STACK_1
$01DA $0871 MOVF STACK_1, 0
$01DB $3A00 XORLW 0
$01DC $1D03 BTFSS STATUS, Z
$01DD $29E0 GOTO L_Usart_Write_4
$01DE $0000 NOP
$01DF $29D4 GOTO L_Usart_Write_3
$01E0 $ L_Usart_Write_4:
$01E0 $1283 BCF STATUS, RP0
$01E1 $0849 MOVF FARG_Usart_Write+0, 0
$01E2 $0099 MOVWF TXREG
$01E3 $0008 RETURN
$01E4 $ table___send_message_header:
;main.c,12 :: const char send_message_header[8] = {'A','T','+','C','M','G','S','='};
$01E4 $3441 RETLW 65
$01E5 $3454 RETLW 84
$01E6 $342B RETLW 43
$01E7 $3443 RETLW 67
$01E8 $344D RETLW 77
$01E9 $3447 RETLW 71
$01EA $3453 RETLW 83
$01EB $343D RETLW 61
$01EC $0008 RETURN
$01ED $ table___open_door_text:
;main.c,13 :: const char open_door_text[10] = {'D','O','O','R',' ','O','P','E','N',0x1A};
$01ED $3444 RETLW 68
$01EE $344F RETLW 79
$01EF $344F RETLW 79
$01F0 $3452 RETLW 82
$01F1 $3420 RETLW 32
$01F2 $344F RETLW 79
$01F3 $3450 RETLW 80
$01F4 $3445 RETLW 69
$01F5 $344E RETLW 78
$01F6 $341A RETLW 26
$01F7 $0008 RETURN
$01F8 $ table___already_opened_text:
;main.c,15 :: const char already_opened_text[20] = {'D','O','O','R',' ','A','L','R','E','A','D','Y',' ',
$01F8 $3444 RETLW 68
$01F9 $344F RETLW 79
$01FA $344F RETLW 79
$01FB $3452 RETLW 82
$01FC $3420 RETLW 32
$01FD $3441 RETLW 65
$01FE $344C RETLW 76
$01FF $3452 RETLW 82
$0200 $3445 RETLW 69
$0201 $3441 RETLW 65
$0202 $3444 RETLW 68
$0203 $3459 RETLW 89
$0204 $3420 RETLW 32
$0205 $344F RETLW 79
$0206 $3450 RETLW 80
$0207 $3445 RETLW 69
$0208 $344E RETLW 78
$0209 $3445 RETLW 69
$020A $3444 RETLW 68
$020B $341A RETLW 26
$020C $0008 RETURN
$020D $ table___close_door_text:
;main.c,14 :: const char close_door_text[12] = {'D','O','O','R',' ','C','L','O','S','E','D',0x1A};
$020D $3444 RETLW 68
$020E $344F RETLW 79
$020F $344F RETLW 79
$0210 $3452 RETLW 82
$0211 $3420 RETLW 32
$0212 $3443 RETLW 67
$0213 $344C RETLW 76
$0214 $344F RETLW 79
$0215 $3453 RETLW 83
$0216 $3445 RETLW 69
$0217 $3444 RETLW 68
$0218 $341A RETLW 26
$0219 $0008 RETURN
$021A $ table___already_closed_text:
;main.c,17 :: const char already_closed_text[20] = {'D','O','O','R',' ','A','L','R','E','A','D','Y',' ',
$021A $3444 RETLW 68
$021B $344F RETLW 79
$021C $344F RETLW 79
$021D $3452 RETLW 82
$021E $3420 RETLW 32
$021F $3441 RETLW 65
$0220 $344C RETLW 76
$0221 $3452 RETLW 82
$0222 $3445 RETLW 69
$0223 $3441 RETLW 65
$0224 $3444 RETLW 68
$0225 $3459 RETLW 89
$0226 $3420 RETLW 32
$0227 $3443 RETLW 67
$0228 $344C RETLW 76
$0229 $344F RETLW 79
$022A $3453 RETLW 83
$022B $3445 RETLW 69
$022C $3444 RETLW 68
$022D $341A RETLW 26
$022E $0008 RETURN
$022F $ _Lcd_Init:
$022F $2006 CALL _Delay_5500us
$0230 $2006 CALL _Delay_5500us
$0231 $2006 CALL _Delay_5500us
$0232 $0844 MOVF FARG_Lcd_Init+0, 0
$0233 $00A0 MOVWF LCD_port_address
$0234 $0844 MOVF FARG_Lcd_Init+0, 0
$0235 $0084 MOVWF FSR
$0236 $1784 BSF FSR, 7
$0237 $1180 BCF INDF, ___ENABLE
$0238 $1100 BCF INDF, ___RS
$0239 $1000 BCF INDF, ___RW
$023A $1380 BCF INDF, ___DB7
$023B $1300 BCF INDF, ___DB6
$023C $1280 BCF INDF, ___DB5
$023D $1200 BCF INDF, ___DB4
$023E $1384 BCF FSR, 7
$023F $1180 BCF INDF, ___ENABLE
$0240 $1100 BCF INDF, ___RS
$0241 $1000 BCF INDF, ___RW
$0242 $1380 BCF INDF, ___DB7
$0243 $1300 BCF INDF, ___DB6
$0244 $1280 BCF INDF, ___DB5
$0245 $1200 BCF INDF, ___DB4
$0246 $1680 BSF INDF, ___DB5
$0247 $1600 BSF INDF, ___DB4
$0248 $1580 BSF INDF, ___ENABLE
$0249 $1180 BCF INDF, ___ENABLE
$024A $2006 CALL _Delay_5500us
$024B $1580 BSF INDF, ___ENABLE
$024C $1180 BCF INDF, ___ENABLE
$024D $2006 CALL _Delay_5500us
$024E $1580 BSF INDF, ___ENABLE
$024F $1180 BCF INDF, ___ENABLE
$0250 $2006 CALL _Delay_5500us
$0251 $1680 BSF INDF, ___DB5
$0252 $1200 BCF INDF, ___DB4
$0253 $1580 BSF INDF, ___ENABLE
$0254 $1180 BCF INDF, ___ENABLE
$0255 $2006 CALL _Delay_5500us
$0256 $0180 CLRF INDF
$0257 $1680 BSF INDF, ___DB5
$0258 $1580 BSF INDF, ___ENABLE
$0259 $1180 BCF INDF, ___ENABLE
$025A $0180 CLRF INDF
$025B $1780 BSF INDF, ___DB7
$025C $1580 BSF INDF, ___ENABLE
$025D $1180 BCF INDF, ___ENABLE
$025E $2006 CALL _Delay_5500us
$025F $0180 CLRF INDF
$0260 $1600 BSF INDF, ___DB4
$0261 $1580 BSF INDF, ___ENABLE
$0262 $1180 BCF INDF, ___ENABLE
$0263 $0180 CLRF INDF
$0264 $1580 BSF INDF, ___ENABLE
$0265 $1180 BCF INDF, ___ENABLE
$0266 $2006 CALL _Delay_5500us
$0267 $0180 CLRF INDF
$0268 $1580 BSF INDF, ___ENABLE
$0269 $1180 BCF INDF, ___ENABLE
$026A $1600 BSF INDF, ___DB4
$026B $1580 BSF INDF, ___ENABLE
$026C $1180 BCF INDF, ___ENABLE
$026D $2006 CALL _Delay_5500us
$026E $0180 CLRF INDF
$026F $1580 BSF INDF, ___ENABLE
$0270 $1180 BCF INDF, ___ENABLE
$0271 $1600 BSF INDF, ___DB4
$0272 $1680 BSF INDF, ___DB5
$0273 $1700 BSF INDF, ___DB6
$0274 $1780 BSF INDF, ___DB7
$0275 $1580 BSF INDF, ___ENABLE
$0276 $1180 BCF INDF, ___ENABLE
$0277 $2006 CALL _Delay_5500us
$0278 $3001 MOVLW 1
$0279 $00A1 MOVWF LCD_cmd_status
$027A $0008 RETURN
$027B $ _gsm_modem_init:
;main.c,198 :: void gsm_modem_init()
;main.c,200 :: do {
$027B $ L_gsm_modem_init_37:
;main.c,201 :: byte_count1 = 0;
$027B $1303 BCF STATUS, RP1
$027C $1283 BCF STATUS, RP0
$027D $01A6 CLRF _byte_count1, 1
;main.c,202 :: TXREG = settings[0];
$027E $3041 MOVLW 65
$027F $0099 MOVWF TXREG
;main.c,203 :: while (byte_count1 < 18)
$0280 $ L_gsm_modem_init_39:
$0280 $3080 MOVLW 128
$0281 $0626 XORWF _byte_count1, 0
$0282 $00F0 MOVWF STACK_0
$0283 $3080 MOVLW 128
$0284 $3A12 XORLW 18
$0285 $0270 SUBWF STACK_0, 0
$0286 $1803 BTFSC STATUS, C
$0287 $2A9D GOTO L_gsm_modem_init_40
;main.c,205 :: if (PIR1.TXIF)
$0288 $1E0C BTFSS PIR1, 4
$0289 $2A9C GOTO L_gsm_modem_init_41
;main.c,207 :: byte_count1++;
$028A $0AA6 INCF _byte_count1, 1
;main.c,208 :: TXREG = settings[byte_count1];
$028B $0826 MOVF _byte_count1, 0
$028C $3FB3 ADDLW #_settings
$028D $00F0 MOVWF STACK_0
$028E $3000 MOVLW @#_settings
$028F $1803 BTFSC STATUS, C
$0290 $3F01 ADDLW 1
$0291 $00F1 MOVWF STACK_0+1
$0292 $0870 MOVF STACK_0, 0
$0293 $00A4 MOVWF ___DoICPLoAddr
$0294 $0871 MOVF STACK_0+1, 0
$0295 $00A3 MOVWF ___DoICPHiAddr
$0296 $080A MOVF PCLATH, 0
$0297 $00A2 MOVWF ___DoICPSavePCLATH
$0298 $20C6 CALL _____DoICP
$0299 $0099 MOVWF TXREG
$029A $0822 MOVF ___DoICPSavePCLATH, 0
$029B $008A MOVWF PCLATH
;main.c,209 :: }
$029C $ L_gsm_modem_init_41:
;main.c,210 :: }
$029C $2A80 GOTO L_gsm_modem_init_39
$029D $ L_gsm_modem_init_40:
;main.c,211 :: time_count = 0;
$029D $01A7 CLRF _time_count
$029E $01A8 CLRF _time_count+1
;main.c,212 :: while (buffer != 'O' && time_count < 6250)
$029F $ L_gsm_modem_init_42:
$029F $0825 MOVF _buffer, 0
$02A0 $3A4F XORLW 79
$02A1 $1903 BTFSC STATUS, Z
$02A2 $2AB5 GOTO L_gsm_modem_init_43
$02A3 $3018 MOVLW 24
$02A4 $0228 SUBWF _time_count+1, 0
$02A5 $1D03 BTFSS STATUS, Z
$02A6 $2AA9 GOTO L_gsm_modem_init_151
$02A7 $306A MOVLW 106
$02A8 $0227 SUBWF _time_count, 0
$02A9 $ L_gsm_modem_init_151:
$02A9 $1803 BTFSC STATUS, C
$02AA $2AB5 GOTO L_gsm_modem_init_43
$02AB $ L387_ex_L_gsm_modem_init_43:
;main.c,214 :: if (PIR1.RCIF)
$02AB $1E8C BTFSS PIR1, 5
$02AC $2AB1 GOTO L_gsm_modem_init_46
;main.c,216 :: buffer = RCREG;
$02AD $081A MOVF RCREG, 0
$02AE $00A5 MOVWF _buffer
;main.c,217 :: time_count = 0;
$02AF $01A7 CLRF _time_count
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -