main_frame.lst
来自「mega128平台下」· LST 代码 · 共 2,086 行 · 第 1/5 页
LST
2,086 行
FILE: <library>
__text_start:
__start:
0055 EFCF LDI R28,0xFF
0056 E1D0 LDI R29,0x10
0057 BFCD OUT 0x3D,R28
0058 BFDE OUT 0x3E,R29
0059 51C0 SUBI R28,0x10
005A 40D0 SBCI R29,0
005B EA0A LDI R16,0xAA
005C 8308 STD Y+0,R16
005D 2400 CLR R0
005E E1E3 LDI R30,0x13
005F E0F1 LDI R31,1
0060 E012 LDI R17,2
0061 34EF CPI R30,0x4F
0062 07F1 CPC R31,R17
0063 F011 BEQ 0x0066
0064 9201 ST R0,Z+
0065 CFFB RJMP 0x0061
0066 8300 STD Z+0,R16
0067 E9E6 LDI R30,0x96
0068 E0F0 LDI R31,0
0069 E0A0 LDI R26,0
006A E0B1 LDI R27,1
006B E010 LDI R17,0
006C 3AE9 CPI R30,0xA9
006D 07F1 CPC R31,R17
006E F021 BEQ 0x0073
006F 95C8 LPM
0070 9631 ADIW R30,1
0071 920D ST R0,X+
0072 CFF9 RJMP 0x006C
0073 940E02A7 CALL _main
_exit:
0075 CFFF RJMP _exit
_port_init:
0076 2422 CLR R2
0077 BA2B OUT 0x1B,R2
0078 BA2A OUT 0x1A,R2
0079 BA28 OUT 0x18,R2
007A BA27 OUT 0x17,R2
007B BA25 OUT 0x15,R2
007C E784 LDI R24,0x74
007D BB84 OUT 0x14,R24
007E BA22 OUT 0x12,R2
007F BA21 OUT 0x11,R2
0080 B823 OUT 0x03,R2
0081 B822 OUT 0x02,R2
0082 92200062 STS 0x62,R2
0084 92200061 STS 0x61,R2
0086 92200065 STS 0x65,R2
0088 E083 LDI R24,3
0089 93800064 STS 0x64,R24
008B 9508 RET
_uart0_init:
008C 2422 CLR R2
008D B82A OUT 0x0A,R2
008E B82B OUT 0x0B,R2
008F E086 LDI R24,6
0090 93800095 STS 0x95,R24
0092 E087 LDI R24,7
0093 B989 OUT 0x09,R24
0094 92200090 STS 0x90,R2
0096 ED88 LDI R24,0xD8
0097 B98A OUT 0x0A,R24
0098 9508 RET
_init_devices:
0099 94F8 BCLR 7
009A 2422 CLR R2
009B BE2C OUT 0x3C,R2
009C 9220006D STS 0x6D,R2
009E DFD7 RCALL _port_init
009F 940E060C CALL _led_init
00A1 940E0943 CALL _T0_init
00A3 940E09A8 CALL _T2_init
00A5 940E0976 CALL _T1_init
00A7 940E09D9 CALL _T3_init
00A9 940E055E CALL _CC1100_init
00AB DFE0 RCALL _uart0_init
00AC 2422 CLR R2
00AD BE25 OUT 0x35,R2
00AE 9220006A STS 0x6A,R2
00B0 BE2A OUT 0x3A,R2
00B1 BE29 OUT 0x39,R2
00B2 BE27 OUT 0x37,R2
00B3 9220007D STS 0x7D,R2
00B5 9478 BSET 7
00B6 9508 RET
_xcrc_byte:
i --> R20
b --> R18
intcrc --> R16
00B7 940E0DEF CALL push_gset1
00B9 2E22 MOV R2,R18
00BA 2433 CLR R3
00BB 2C32 MOV R3,R2
00BC 2422 CLR R2
00BD 90400137 LDS R4,crc
00BF 90500138 LDS R5,crc+1
00C1 2442 EOR R4,R2
00C2 2453 EOR R5,R3
00C3 92500138 STS crc+1,R5
00C5 92400137 STS crc,R4
00C7 E048 LDI R20,0x8
00C8 90200137 LDS R2,crc
00CA 90300138 LDS R3,crc+1
00CC FE37 SBRS R3,7
_delay:
i --> R20
n --> R22
00CD C00B RJMP 0x00D9
00CE E281 LDI R24,0x21
00CF E190 LDI R25,0x10
00D0 0C22 LSL R2
00D1 1C33 ROL R3
00D2 2628 EOR R2,R24
00D3 2639 EOR R3,R25
00D4 92300138 STS crc+1,R3
00D6 92200137 STS crc,R2
00D8 C00A RJMP 0x00E3
00D9 90200137 LDS R2,crc
00DB 90300138 LDS R3,crc+1
00DD 0C22 LSL R2
00DE 1C33 ROL R3
00DF 92300138 STS crc+1,R3
00E1 92200137 STS crc,R2
00E3 2F84 MOV R24,R20
00E4 5081 SUBI R24,1
00E5 2F48 MOV R20,R24
00E6 2388 TST R24
00E7 F701 BNE 0x00C8
00E8 91000137 LDS R16,crc
00EA 91100138 LDS R17,crc+1
00EC 940E0DF2 CALL pop_gset1
00EE 9508 RET
_xcrc_calc:
crc --> R20
count --> R22
index --> R10
packet --> R12
00EF 940E0DE9 CALL push_gset4
00F1 0159 MOVW R10,R18
00F2 0168 MOVW R12,R16
00F3 8568 LDD R22,Y+8
00F4 8579 LDD R23,Y+9
00F5 2744 CLR R20
00F6 2755 CLR R21
00F7 C00D RJMP 0x0105
00F8 0115 MOVW R2,R10
00F9 01C1 MOVW R24,R2
00FA 9601 ADIW R24,1
00FB 015C MOVW R10,R24
00FC 01F1 MOVW R30,R2
00FD 0DEC ADD R30,R12
00FE 1DFD ADC R31,R13
00FF 8120 LDD R18,Z+0
0100 018A MOVW R16,R20
0101 DFB5 RCALL _xcrc_byte
0102 01A8 MOVW R20,R16
0103 5061 SUBI R22,1
0104 4070 SBCI R23,0
0105 2422 CLR R2
0106 2433 CLR R3
0107 1626 CP R2,R22
0108 0637 CPC R3,R23
0109 F374 BLT 0x00F8
010A 018A MOVW R16,R20
010B 940E0DE1 CALL pop_gset4
010D 9508 RET
_T0_timeout:
010E 9180013A LDS R24,SyncSeqNo
0110 5F8F SUBI R24,0xFF
0111 9380013A STS SyncSeqNo,R24
0113 2E28 MOV R2,R24
0114 92200152 STS 0x152,R2
0116 E02D LDI R18,0xD
0117 E40C LDI R16,0x4C
0118 E011 LDI R17,1
0119 940E02BD CALL _CC1100_send
011B EF24 LDI R18,0xF4
011C E031 LDI R19,1
011D 2700 CLR R16
011E 940E06DF CALL _start_T0
0120 9180013A LDS R24,SyncSeqNo
0122 3082 CPI R24,2
0123 F010 BCS 0x0126
0124 940E076B CALL _stop_T0
0126 9508 RET
_T1_timeout:
i --> R16
j --> R18
0127 E001 LDI R16,1
0128 C02D RJMP 0x0156
0129 E082 LDI R24,2
012A E091 LDI R25,1
012B 2FE0 MOV R30,R16
012C 27FF CLR R31
012D 0FE8 ADD R30,R24
012E 1FF9 ADC R31,R25
012F 8180 LDD R24,Z+0
0130 3081 CPI R24,1
0131 F481 BNE 0x0142
0132 E080 LDI R24,0
0133 E091 LDI R25,1
0134 2FE0 MOV R30,R16
_x:
0135 27FF CLR R31
0136 0FE8 ADD R30,R24
0137 1FF9 ADC R31,R25
0138 2422 CLR R2
0139 8220 STD Z+0,R2
013A E082 LDI R24,2
_y:
013B E091 LDI R25,1
013C 2FE0 MOV R30,R16
013D 27FF CLR R31
013E 0FE8 ADD R30,R24
013F 1FF9 ADC R31,R25
0140 8220 STD Z+0,R2
_z:
0141 C00A RJMP 0x014C
0142 E080 LDI R24,0
0143 E091 LDI R25,1
0144 2E20 MOV R2,R16
0145 2433 CLR R3
0146 0E28 ADD R2,R24
0147 1E39 ADC R3,R25
0148 01F1 MOVW R30,R2
0149 8180 LDD R24,Z+0
014A 5F8F SUBI R24,0xFF
014B 8380 STD Z+0,R24
014C E080 LDI R24,0
014D E091 LDI R25,1
014E 2FE0 MOV R30,R16
014F 27FF CLR R31
0150 0FE8 ADD R30,R24
0151 1FF9 ADC R31,R25
0152 8180 LDD R24,Z+0
0153 3083 CPI R24,3
0154 F000 BCS 0x0155
0155 9503 INC R16
0156 E082 LDI R24,2
0157 1780 CP R24,R16
0158 F008 BCS 0x015A
0159 CFCF RJMP 0x0129
015A 9508 RET
_T2_timeout:
015B 940E061E CALL _led0Toggle
015D 9508 RET
_T3_timeout:
015E 940E0634 CALL _led1Toggle
0160 9508 RET
_CC1100_sendDone:
0161 9508 RET
_radio_ack_task:
0162 E08C LDI R24,0xC
0163 9380013B STS RADIO_ACK_MSG,R24
0165 2422 CLR R2
0166 9220013C STS RADIO_ACK_MSG+1,R2
0168 9220013D STS RADIO_ACK_MSG+2,R2
016A E083 LDI R24,3
016B 93800140 STS 0x140,R24
016D E02D LDI R18,0xD
016E E30B LDI R16,0x3B
016F E011 LDI R17,1
0170 940E02BD CALL _CC1100_send
0172 9508 RET
_CC1100_receive:
i --> R20
target --> R22
receive_msg --> R10
cluster --> R12
msg --> R20
0173 940E0DEB CALL push_gset3
0175 E56E LDI R22,0x5E
0176 E071 LDI R23,1
0177 940E0634 CALL _led1Toggle
0179 01AB MOVW R20,R22
017A 01FA MOVW R30,R20
017B 80A2 LDD R10,Z+2
017C 2D6A MOV R22,R10
017D 2777 CLR R23
017E 2F76 MOV R23,R22
017F 2766 CLR R22
0180 7060 ANDI R22,0
0181 EF8F LDI R24,0xFF
0182 E090 LDI R25,0
0183 2DEA MOV R30,R10
0184 27FF CLR R31
0185 0FE8 ADD R30,R24
0186 1FF9 ADC R31,R25
0187 2422 CLR R2
0188 8220 STD Z+0,R2
0189 E081 LDI R24,1
018A E091 LDI R25,1
018B 2DEA MOV R30,R10
018C 27FF CLR R31
018D 0FE8 ADD R30,R24
018E 1FF9 ADC R31,R25
018F E081 LDI R24,1
0190 8380 STD Z+0,R24
0191 01FA MOVW R30,R20
0192 80A5 LDD R10,Z+5
0193 24BB CLR R11
0194 01C5 MOVW R24,R10
0195 318D CPI R24,0x1D
0196 E0E0 LDI R30,0
0197 079E CPC R25,R30
0198 F409 BNE 0x019A
0199 C087 RJMP 0x0221
019A 318D CPI R24,0x1D
019B E0E0 LDI R30,0
019C 079E CPC R25,R30
019D F40C BGE 0x019F
019E C09C RJMP 0x023B
019F 01C5 MOVW R24,R10
01A0 338C CPI R24,0x3C
01A1 E0E0 LDI R30,0
01A2 079E CPC R25,R30
01A3 F009 BEQ 0x01A5
01A4 C096 RJMP 0x023B
01A5 E18D LDI R24,0x1D
01A6 9380011B STS 0x11B,R24
01A8 E486 LDI R24,0x46
01A9 9380011C STS 0x11C,R24
01AB 01FA MOVW R30,R20
01AC 8022 LDD R2,Z+2
01AD 9220011D STS 0x11D,R2
01AF 01FA MOVW R30,R20
01B0 8027 LDD R2,Z+7
01B1 9220011E STS 0x11E,R2
01B3 01FA MOVW R30,R20
01B4 8420 LDD R2,Z+8
01B5 9220011F STS Data,R2
01B7 01FA MOVW R30,R20
01B8 8421 LDD R2,Z+9
01B9 92200120 STS Data+1,R2
01BB 01FA MOVW R30,R20
01BC 8422 LDD R2,Z+10
01BD 92200121 STS Data+2,R2
01BF 01FA MOVW R30,R20
01C0 8022 LDD R2,Z+2
01C1 92200122 STS Data+3,R2
01C3 01FA MOVW R30,R20
01C4 8423 LDD R2,Z+11
01C5 92200123 STS 0x123,R2
01C7 01FA MOVW R30,R20
01C8 8424 LDD R2,Z+12
01C9 92200124 STS 0x124,R2
01CB 01FA MOVW R30,R20
01CC 8425 LDD R2,Z+13
01CD 92200125 STS 0x125,R2
01CF 01FA MOVW R30,R20
01D0 8426 LDD R2,Z+14
01D1 92200126 STS 0x126,R2
01D3 01FA MOVW R30,R20
01D4 8022 LDD R2,Z+2
01D5 92200127 STS 0x127,R2
01D7 01FA MOVW R30,R20
01D8 8427 LDD R2,Z+15
01D9 92200128 STS 0x128,R2
01DB 01FA MOVW R30,R20
01DC 8820 LDD R2,Z+16
01DD 92200129 STS 0x129,R2
01DF 01FA MOVW R30,R20
01E0 8821 LDD R2,Z+17
01E1 9220012A STS 0x12A,R2
01E3 01FA MOVW R30,R20
01E4 8822 LDD R2,Z+18
01E5 9220012B STS 0x12B,R2
01E7 01FA MOVW R30,R20
01E8 8022 LDD R2,Z+2
01E9 9220012C STS 0x12C,R2
01EB 01FA MOVW R30,R20
01EC 8823 LDD R2,Z+19
01ED 9220012D STS 0x12D,R2
01EF 01FA MOVW R30,R20
01F0 8824 LDD R2,Z+20
01F1 9220012E STS 0x12E,R2
01F3 01FA MOVW R30,R20
01F4 8825 LDD R2,Z+21
01F5 9220012F STS 0x12F,R2
01F7 01FA MOVW R30,R20
01F8 8826 LDD R2,Z+22
01F9 92200130 STS 0x130,R2
01FB 01FA MOVW R30,R20
01FC 8022 LDD R2,Z+2
01FD 92200131 STS 0x131,R2
01FF 01FA MOVW R30,R20
0200 8827 LDD R2,Z+23
0201 92200132 STS 0x132,R2
0203 01FA MOVW R30,R20
0204 8C20 LDD R2,Z+24
0205 92200133 STS 0x133,R2
0207 01FA MOVW R30,R20
0208 8C21 LDD R2,Z+25
0209 92200134 STS 0x134,R2
020B 01FA MOVW R30,R20
020C 8C22 LDD R2,Z+26
020D 92200135 STS 0x135,R2
020F 2422 CLR R2
0210 92200136 STS 0x136,R2
0212 92200137 STS crc,R2
0214 9120011B LDS R18,0x11B
0216 2733 CLR R19
0217 E10B LDI R16,0x1B
0218 E011 LDI R17,1
0219 940E0CC5 CALL _serial_put
021B 9370013F STS 0x13F,R23
021D 9360013E STS RADIO_ACK_MSG+3,R22
021F DF42 RCALL _radio_ack_task
0220 C01A RJMP 0x023B
0221 E086 LDI R24,6
0222 9380011B STS 0x11B,R24
0224 E18D LDI R24,0x1D
0225 9380011C STS 0x11C,R24
0227 01FA MOVW R30,R20
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?