📄 ytep_rf.lst
字号:
\ 000000D2 C0B2 UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
\ 000000D4 0528 CMP R0,#+5
\ 000000D6 0FD3 BCC.N ??CHK_RF_8
136 {
137 pos+=p->channel;
\ 000000D8 607E LDRB R0,[R4, #+25]
\ 000000DA 1A21 MOVS R1,#+26
\ 000000DC 00FB0166 MLA R6,R0,R1,R6
138 pos->ATem=0xFF;
\ 000000E0 FF20 MOVS R0,#+255
\ 000000E2 3080 STRH R0,[R6, #+0]
139 pos->AVol=0xFF;
\ 000000E4 FF20 MOVS R0,#+255
\ 000000E6 7080 STRH R0,[R6, #+2]
140 pos->BTem=0XFF;
\ 000000E8 FF20 MOVS R0,#+255
\ 000000EA 3081 STRH R0,[R6, #+8]
141 pos->BVol=0xFF;
\ 000000EC FF20 MOVS R0,#+255
\ 000000EE 7081 STRH R0,[R6, #+10]
142 pos->CTem=0XFF;
\ 000000F0 FF20 MOVS R0,#+255
\ 000000F2 3082 STRH R0,[R6, #+16]
143 pos->CVol=0xFF;
\ 000000F4 FF20 MOVS R0,#+255
\ 000000F6 7082 STRH R0,[R6, #+18]
144 }
145 if(++(p->channel)>=5)p->channel=0;
\ ??CHK_RF_8:
\ 000000F8 607E LDRB R0,[R4, #+25]
\ 000000FA 401C ADDS R0,R0,#+1
\ 000000FC 6076 STRB R0,[R4, #+25]
\ 000000FE C0B2 UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
\ 00000100 0528 CMP R0,#+5
\ 00000102 01D3 BCC.N ??CHK_RF_9
\ 00000104 0020 MOVS R0,#+0
\ 00000106 6076 STRB R0,[R4, #+25]
146 a=(p->channel)<<2,b=(p->channel)^0x03;
\ ??CHK_RF_9:
\ 00000108 607E LDRB R0,[R4, #+25]
\ 0000010A C0B2 UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
\ 0000010C 8000 LSLS R0,R0,#+2
\ 0000010E 8DF80000 STRB R0,[SP, #+0]
\ 00000112 607E LDRB R0,[R4, #+25]
\ 00000114 90F00300 EORS R0,R0,#0x3
\ 00000118 8DF80100 STRB R0,[SP, #+1]
147 p->SendChannel=a|b;
\ 0000011C 9DF80000 LDRB R0,[SP, #+0]
\ 00000120 9DF80110 LDRB R1,[SP, #+1]
\ 00000124 0143 ORRS R1,R1,R0
\ 00000126 2176 STRB R1,[R4, #+24]
148 p->B_Send=TRUE,p->Flag=FALSE;;
\ 00000128 0120 MOVS R0,#+1
\ 0000012A E075 STRB R0,[R4, #+23]
\ 0000012C 0020 MOVS R0,#+0
\ 0000012E A075 STRB R0,[R4, #+22]
149 Set_bit(IO_RFCTL,B_RFCTL);
\ 00000130 .... LDR.N R0,??DataTable3 ;; 0x40010c0c
\ 00000132 0068 LDR R0,[R0, #+0]
\ 00000134 50F48070 ORRS R0,R0,#0x100
\ 00000138 .... LDR.N R1,??DataTable3 ;; 0x40010c0c
\ 0000013A 0860 STR R0,[R1, #+0]
150 return 0;
\ 0000013C 0020 MOVS R0,#+0
\ ??CHK_RF_2:
\ 0000013E 02B0 ADD SP,SP,#+8
\ 00000140 70BD POP {R4-R6,PC} ;; return
\ 00000142 00BF Nop
\ ??CHK_RF_0:
\ 00000144 ........ DC32 ??Timcount
\ 00000148 ........ DC32 ??RF_error
151 }
\ In section .bss, align 1
\ ??Timcount:
\ 00000000 DS8 1
\ In section .bss, align 4
\ ??RF_error:
\ 00000000 DS8 8
152 //////////////////////////////////////////////
153 //////////////////////////////////////////////
154 //////////////////////////////////////////////
\ In section .XML, align 4, keep-with-next
155 Int16U cal_crc(Int8U *ptr, Int8U len)
156 {
\ cal_crc:
\ 00000000 11B4 PUSH {R0,R4}
\ 00000002 0200 MOVS R2,R0
157 Int16U crc=0xffff;
\ 00000004 0F4C LDR.N R4,??cal_crc_0 ;; 0xffff
\ 00000006 2000 MOVS R0,R4
158 Int8U i;
159 while(len!=0)
\ ??cal_crc_1:
\ 00000008 C9B2 UXTB R1,R1 ;; ZeroExtS R1,R1,#+24,#+24
\ 0000000A 0029 CMP R1,#+0
\ 0000000C 16D0 BEQ.N ??cal_crc_2
160 {
161 crc^=*ptr;
\ 0000000E 0400 MOVS R4,R0
\ 00000010 1078 LDRB R0,[R2, #+0]
\ 00000012 6040 EORS R0,R0,R4
162 for(i=0;i<8;i++)
\ 00000014 0024 MOVS R4,#+0
\ 00000016 2300 MOVS R3,R4
\ ??cal_crc_3:
\ 00000018 DBB2 UXTB R3,R3 ;; ZeroExtS R3,R3,#+24,#+24
\ 0000001A 082B CMP R3,#+8
\ 0000001C 0BD2 BCS.N ??cal_crc_4
163 {
164 if((crc&0x0001)==0) crc=crc>>1;
\ 0000001E C407 LSLS R4,R0,#+31
\ 00000020 02D4 BMI.N ??cal_crc_5
\ 00000022 80B2 UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
\ 00000024 4008 LSRS R0,R0,#+1
\ 00000026 04E0 B.N ??cal_crc_6
165 else
166 {
167 crc=crc>>1;
\ ??cal_crc_5:
\ 00000028 80B2 UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
\ 0000002A 4008 LSRS R0,R0,#+1
168 crc^=0xA001;
\ 0000002C 0400 MOVS R4,R0
\ 0000002E 0648 LDR.N R0,??cal_crc_0+0x4 ;; 0xa001
\ 00000030 6040 EORS R0,R0,R4
169 }
170 }
\ ??cal_crc_6:
\ 00000032 5B1C ADDS R3,R3,#+1
\ 00000034 F0E7 B.N ??cal_crc_3
171 len-=1,ptr++;
\ ??cal_crc_4:
\ 00000036 491E SUBS R1,R1,#+1
\ 00000038 521C ADDS R2,R2,#+1
\ 0000003A E5E7 B.N ??cal_crc_1
172 }
173 return crc;
\ ??cal_crc_2:
\ 0000003C 80B2 UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
\ 0000003E 01B0 ADD SP,SP,#+4
\ 00000040 10BC POP {R4}
\ 00000042 7047 BX LR ;; return
\ ??cal_crc_0:
\ 00000044 FFFF0000 DC32 0xffff
\ 00000048 01A00000 DC32 0xa001
174 }
\ In section .XML, align 4, keep-with-next
\ ??DataTable1:
\ 00000000 0C0C0140 DC32 0x40010c0c
\ In section .XML, align 4, keep-with-next
\ ??DataTable3:
\ 00000000 0C0C0140 DC32 0x40010c0c
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
Maximum stack usage in bytes:
Function .cstack
-------- -------
CHK_RF 24
IsrReceive 0
IsrSend 0
cal_crc 8
Section sizes:
Function/Label Bytes
-------------- -----
IsrReceive 412
IR 8
IsrSend 312
IS 8
CHK_RF 332
Timcount 1
RF_error 8
cal_crc 76
??DataTable1 4
??DataTable3 4
1 140 bytes in section .XML
25 bytes in section .bss
1 140 bytes of CODE memory
25 bytes of DATA memory
Errors: none
Warnings: 2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -