📄 main.lst
字号:
00E7 221F 00073 CALL COMMUNICATE
00E8 1A27 00074 BTFSC DSR_TIMOUT_FB
00E9 28D9 00075 GOTO SENDB
00EA 3001 00076 MOVLW 0X01
00EB 00BE 00077 MOVWF PROTOCOL_VER ;DEFAULT PROTOCOL=1.0
00078
00079 ;----------------------------------------------------------------------------
00EC 30E0 00080 MOVLW NOF_CMD_ADDR
00ED 0084 00081 MOVWF FSR
00EE 00C6 00082 MOVWF FSR_SAV
00083
00EF 0800 00084 MOVF INDF,W
00F0 00BF 00085 MOVWF NOF_CMD
00086
00F1 00087 SEND_CMD_LOOP:
00F1 0AC6 00088 INCF FSR_SAV,F
00F2 0846 00089 MOVF FSR_SAV,W
00F3 0084 00090 MOVWF FSR
00091
00F4 0800 00092 MOVF INDF,W
00F5 391F 00093 ANDLW 0X1F ;Clear Bit(7-5) -> Command(40 -> 00 , 4F -> 0F)
00F6 00B9 00094 MOVWF OFFSET
00095
00F7 2584 00096 CALL CMD_LIST
00097
00F8 0BBF 00098 DECFSZ NOF_CMD,F
00F9 28F1 00099 GOTO SEND_CMD_LOOP
00100
00FA 083E 00101 MOVF PROTOCOL_VER,W
00FB 3A04 00102 XORLW 0X04
00FC 1D03 00103 BTFSS STATUS,Z
00FD 2906 00104 GOTO SEND1
00105
00FE 0826 00106 MOVF TERMINAL_ID,W
00FF 3A82 00107 XORLW 0X82
0100 1903 00108 BTFSC STATUS,Z ;41 MODE ?
0101 2906 00109 GOTO SEND1 ;YES
00110
0102 3002 00111 MOVLW D'2'
0103 1683 00112 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
0104 0092 00113 MOVWF PR2
0105 1283 00114 BCF STATUS,RP0
00115
00116 ;----------------------------------------------------------------------------
0106 0064 00117 SEND1: CLRWDT
0107 22DA 00118 CALL DTR_INT_TIME
0108 2150 00119 SEND2: CALL TABLE_42
0109 221F 00120 CALL COMMUNICATE
010A 1E27 00121 BTFSS DSR_TIMOUT_FB
010B 2910 00122 GOTO SEND2_1
00123
010C 0AB0 00124 INCF COUNT_DSR,F
010D 19B0 00125 BTFSC COUNT_DSR_FB
010E 28C3 00126 GOTO SEND
010F 2906 00127 GOTO SEND1
00128
0110 00129 SEND2_1:
0110 0064 00130 CLRWDT
0111 01B0 00131 CLRF COUNT_DSR
0112 1BA7 00132 BTFSC UNINITIAL_FB ;UNINITIAL STATE ?
0113 28C6 00133 GOTO SENDA ;YES
0114 23E2 00134 CALL LSB_MSB
0115 22E5 00135 CALL CHK_MODE
0116 2376 00136 CALL CHECK_KEY
00137 ;----------------------------------------------------------------------------
0117 1B27 00138 BTFSC CHG_PSCTP_FB ;Change Protocol ?
0118 28C6 00139 GOTO SENDA ;Yes
00140
0119 18C8 00141 BTFSC RESET_PROG
011A 2805 00142 GOTO START
00143 ;----------------------------------------------------------------------------
011B 2407 00144 CALL LOAD_DIS_BUF
00145
011C 158A 00146 BSF PCLATH,3 ;PAGE 1
Message[306]: Crossing page boundary -- ensure page bits are set.
011D 2000 00147 CALL DISPLAY_DATA
011E 018A 00148 CLRF PCLATH ;PAGE 0
00149
011F 2908 00150 GOTO SEND2
00151
00152 INCLUDE "DIS_DATE.ASM"
00001 ;////////////////////////////////////////////////
00002 ;DISPLAY PROGRAM RELEASE DATE
00003 ;////////////////////////////////////////////////
00004
00005 ;RELEASE DATE (DD/MM/YYYY):09-06-2000
0120 00006 DIS_DATE
0120 24CA 00007 CALL CLR_DIS_BUF
00008
0121 1683 00009 BSF STATUS,RP0 ;YEAR ->2000
0122 305B 00010 MOVLW B'01011011' ; 2
Message[302]: Argument out of range. Least significant bits used.
0123 00B8 00011 MOVWF VR1LL
00012
0124 303F 00013 MOVLW B'00111111' ; 0
Message[302]: Argument out of range. Least significant bits used.
0125 00B4 00014 MOVWF VR1RH
00015
0126 303F 00016 MOVLW B'00111111' ; 0
Message[302]: Argument out of range. Least significant bits used.
0127 00B0 00017 MOVWF VR1RM
00018
0128 303F 00019 MOVLW B'00111111' ; 0
Message[302]: Argument out of range. Least significant bits used.
0129 00AC 00020 MOVWF VR1RL
00021
00022 ;MONTH ->06
012A 307D 00023 MOVLW B'01111101' ; 6
Message[302]: Argument out of range. Least significant bits used.
012B 00AD 00024 MOVWF VR2RL
00025
012C 303F 00026 MOVLW B'00111111' ; 0
Message[302]: Argument out of range. Least significant bits used.
012D 00B1 00027 MOVWF VR2RM
00028
012E 3040 00029 MOVLW B'01000000' ; -
Message[302]: Argument out of range. Least significant bits used.
012F 00B5 00030 MOVWF VR2RH
00031
00032 ;DAY ->09
0130 305E 00033 MOVLW B'01011110' ; d
Message[302]: Argument out of range. Least significant bits used.
0131 00B9 00034 MOVWF VR2LL
00035
0132 306F 00036 MOVLW B'01101111'
Message[302]: Argument out of range. Least significant bits used.
0133 00BD 00037 MOVWF VR2LM ; 9
00038
0134 303F 00039 MOVLW B'00111111'
Message[302]: Argument out of range. Least significant bits used.
0135 00C1 00040 MOVWF VR2LH ; 0
00041
0136 1283 00042 BCF STATUS,RP0
0137 0008 00043 RETURN
00153 INCLUDE "COMMAND.ASM"
00001 ;--------------------------------------------------------------------
00002 ;[40] Reserved
00003
0138 00004 TABLE_40
0138 3002 00005 MOVLW CMD40
0139 00A3 00006 MOVWF COMMAND1
00007
013A 01A4 00008 CLRF COMMAND2
00009
013B 3000 00010 MOVLW 0X00
013C 00C0 00011 MOVWF TX0
00012
013D 3040 00013 MOVLW 0X40 ;02
013E 00C1 00014 MOVWF TX1
00015
013F 3000 00016 MOVLW 0X00
0140 00C2 00017 MOVWF TX2
0141 00C3 00018 MOVWF TX3
0142 00C4 00019 MOVWF TX4
0143 00C5 00020 MOVWF TX5
00021
0144 0008 00022 RETURN
00023
00024 ;--------------------------------------------------------------------
00025 ;[41] Reserved
00026
0145 00027 TABLE_41
0145 3082 00028 MOVLW CMD41
0146 00A3 00029 MOVWF COMMAND1
00030
0147 01A4 00031 CLRF COMMAND2
00032
0148 305A 00033 MOVLW 0X5A
0149 00C0 00034 MOVWF TX0
014A 00C1 00035 MOVWF TX1
014B 00C2 00036 MOVWF TX2
014C 00C3 00037 MOVWF TX3
014D 00C4 00038 MOVWF TX4
014E 00C5 00039 MOVWF TX5
00040
014F 0008 00041 RETURN
00042
00043 ;--------------------------------------------------------------------
00044 ;[42] Button and Analog level acquisition and actuator parameter setting
00045
0150 3042 00046 TABLE_42 MOVLW CMD42
0151 00A3 00047 MOVWF COMMAND1 ;COMMAND1 = 42
00048
0152 01A4 00049 CLRF COMMAND2 ;COMMAND2 = 00
00050
0153 3000 00051 MOVLW 0X00
0154 00C0 00052 MOVWF TX0 ;TX(0-5) = 0xFF
0155 00C1 00053 MOVWF TX1
0156 00C2 00054 MOVWF TX2
0157 00C3 00055 MOVWF TX3
0158 00C4 00056 MOVWF TX4
0159 00C5 00057 MOVWF TX5
00058
015A 1CAB 00059 BTFSS MODE_3 ;DEVICE TYPE=3 ?
015B 2965 00060 GOTO VIBRATION ;NO
00061 ; MOVLW 0x80
00062 ; MOVWF COMMAND2
00063
015C 3006 00064 MOVLW B'00000110' ;CAPTURE PORTC,1
015D 009D 00065 MOVWF CCP2CON
00066
015E 0AAF 00067 INCF COUNTER,F ;SEND PULSE (16Hz)
015F 1D2F 00068 BTFSS SENSOR ;ENABLE PADINT PIN ?
0160 2987 00069 GOTO EXIT_TABLE_42
0161 3008 00070 MOVLW 0X08 ;SEND 10
0162 00C0 00071 MOVWF TX0
00072
0163 019D 00073 CLRF CCP2CON ;DISABLE CAPTURE PORTC,1
00074
0164 2987 00075 GOTO EXIT_TABLE_42
00076
00077 ;CHECK_PROTOCOL BTFSS PROTOCOL_VER ;PROTOCOL 2.0 ?
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -