📄 bsp.lst
字号:
\ 00000062 16E0 B.N ??LED_On_4
185 break;
186
187 case 11:
188 IOSET = 1 << 10;
\ ??LED_On_15:
\ 00000064 0C48 LDR R0,??LED_On_3 ;; 0xe0028004
\ 00000066 8021 MOVS R1,#+128
\ 00000068 C900 LSLS R1,R1,#+3 ;; #+1024
\ 0000006A 12E0 B.N ??LED_On_4
189 break;
190
191 case 12:
192 IOSET = 1 << 11;
\ ??LED_On_16:
\ 0000006C 0A48 LDR R0,??LED_On_3 ;; 0xe0028004
\ 0000006E 8021 MOVS R1,#+128
\ 00000070 0901 LSLS R1,R1,#+4 ;; #+2048
\ 00000072 0EE0 B.N ??LED_On_4
193 break;
194
195 case 13:
196 IOSET = 1 << 12;
\ ??LED_On_17:
\ 00000074 0848 LDR R0,??LED_On_3 ;; 0xe0028004
\ 00000076 8021 MOVS R1,#+128
\ 00000078 4901 LSLS R1,R1,#+5 ;; #+4096
\ 0000007A 0AE0 B.N ??LED_On_4
197 break;
198
199 case 14:
200 IOSET = 1 << 13;
\ ??LED_On_18:
\ 0000007C 0648 LDR R0,??LED_On_3 ;; 0xe0028004
\ 0000007E 8021 MOVS R1,#+128
\ 00000080 8901 LSLS R1,R1,#+6 ;; #+8192
\ 00000082 06E0 B.N ??LED_On_4
201 break;
202
203 case 15:
204 IOSET = 1 << 14;
\ ??LED_On_19:
\ 00000084 0448 LDR R0,??LED_On_3 ;; 0xe0028004
\ 00000086 8021 MOVS R1,#+128
\ 00000088 C901 LSLS R1,R1,#+7 ;; #+16384
\ 0000008A 02E0 B.N ??LED_On_4
205 break;
206
207 case 16:
208 IOSET = 1 << 15;
\ ??LED_On_20:
\ 0000008C 0248 LDR R0,??LED_On_3 ;; 0xe0028004
\ 0000008E 8021 MOVS R1,#+128
\ 00000090 0902 LSLS R1,R1,#+8 ;; #+32768
\ ??LED_On_4:
\ 00000092 0160 STR R1,[R0, #+0]
209 break;
210 }
211 }
\ ??LED_On_1:
\ 00000094 01BC POP {R0}
\ 00000096 0047 BX R0 ;; return
\ ??LED_On_3:
\ 00000098 048002E0 DC32 0xe0028004
212
213 /*
214 *********************************************************************************************************
215 * LED OFF
216 *
217 * Description : This function is used to control any or all the LEDs on the board.
218 *
219 * Arguments : led is the number of the LED to turn OFF
220 * 0 indicates that you want ALL the LEDs to be OFF
221 * 1 turns OFF LED1 on the board
222 * .
223 * .
224 * 8 turns OFF LED8 on the board
225 *********************************************************************************************************
226 */
227
\ In segment CODE, align 4, keep-with-next
228 void LED_Off (INT8U led)
229 {
\ LED_Off:
\ 00000000 00B5 PUSH {LR}
230 switch (led) {
\ 00000002 1028 CMP R0,#+16
\ 00000004 46D8 BHI ??LED_Off_1
\ 00000006 01A1 ADR R1,??LED_Off_0
\ 00000008 095C LDRB R1,[R1, R0]
\ 0000000A 8F44 ADD PC,PC,R1
\ ??LED_Off_0:
\ 0000000C 10161C22 DC8 +16,+22,+28,+34
\ 00000010 282E343A DC8 +40,+46,+52,+58
\ 00000014 40464E56 DC8 +64,+70,+78,+86
\ 00000018 5E666E76 DC8 +94,+102,+110,+118
\ 0000001C 7E00 DC8 +126,+0
231 case 0:
232 IOCLR = 0x0000FFFF;
\ ??LED_Off_2:
\ 0000001E 1E48 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000020 .... LDR R1,??DataTable2 ;; 0xffff
\ 00000022 36E0 B.N ??LED_Off_4
233 break;
234
235 case 1:
236 IOCLR = 1 << 0;
\ ??LED_Off_5:
\ 00000024 1C48 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000026 0121 MOVS R1,#+1
\ 00000028 33E0 B.N ??LED_Off_4
237 break;
238
239 case 2:
240 IOCLR = 1 << 1;
\ ??LED_Off_6:
\ 0000002A 1B48 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000002C 0221 MOVS R1,#+2
\ 0000002E 30E0 B.N ??LED_Off_4
241 break;
242
243 case 3:
244 IOCLR = 1 << 2;
\ ??LED_Off_7:
\ 00000030 1948 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000032 0421 MOVS R1,#+4
\ 00000034 2DE0 B.N ??LED_Off_4
245 break;
246
247 case 4:
248 IOCLR = 1 << 3;
\ ??LED_Off_8:
\ 00000036 1848 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000038 0821 MOVS R1,#+8
\ 0000003A 2AE0 B.N ??LED_Off_4
249 break;
250
251 case 5:
252 IOCLR = 1 << 4;
\ ??LED_Off_9:
\ 0000003C 1648 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000003E 1021 MOVS R1,#+16
\ 00000040 27E0 B.N ??LED_Off_4
253 break;
254
255 case 6:
256 IOCLR = 1 << 5;
\ ??LED_Off_10:
\ 00000042 1548 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000044 2021 MOVS R1,#+32
\ 00000046 24E0 B.N ??LED_Off_4
257 break;
258
259 case 7:
260 IOCLR = 1 << 6;
\ ??LED_Off_11:
\ 00000048 1348 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000004A 4021 MOVS R1,#+64
\ 0000004C 21E0 B.N ??LED_Off_4
261 break;
262
263 case 8:
264 IOCLR = 1 << 7;
\ ??LED_Off_12:
\ 0000004E 1248 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000050 8021 MOVS R1,#+128
\ 00000052 1EE0 B.N ??LED_Off_4
265 break;
266
267 case 9:
268 IOCLR = 1 << 8;
\ ??LED_Off_13:
\ 00000054 1048 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000056 8021 MOVS R1,#+128
\ 00000058 4900 LSLS R1,R1,#+1 ;; #+256
\ 0000005A 1AE0 B.N ??LED_Off_4
269 break;
270
271 case 10:
272 IOCLR = 1 << 9;
\ ??LED_Off_14:
\ 0000005C 0E48 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000005E 8021 MOVS R1,#+128
\ 00000060 8900 LSLS R1,R1,#+2 ;; #+512
\ 00000062 16E0 B.N ??LED_Off_4
273 break;
274
275 case 11:
276 IOCLR = 1 << 10;
\ ??LED_Off_15:
\ 00000064 0C48 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000066 8021 MOVS R1,#+128
\ 00000068 C900 LSLS R1,R1,#+3 ;; #+1024
\ 0000006A 12E0 B.N ??LED_Off_4
277 break;
278
279 case 12:
280 IOCLR = 1 << 11;
\ ??LED_Off_16:
\ 0000006C 0A48 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000006E 8021 MOVS R1,#+128
\ 00000070 0901 LSLS R1,R1,#+4 ;; #+2048
\ 00000072 0EE0 B.N ??LED_Off_4
281 break;
282
283 case 13:
284 IOCLR = 1 << 12;
\ ??LED_Off_17:
\ 00000074 0848 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000076 8021 MOVS R1,#+128
\ 00000078 4901 LSLS R1,R1,#+5 ;; #+4096
\ 0000007A 0AE0 B.N ??LED_Off_4
285 break;
286
287 case 14:
288 IOCLR = 1 << 13;
\ ??LED_Off_18:
\ 0000007C 0648 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000007E 8021 MOVS R1,#+128
\ 00000080 8901 LSLS R1,R1,#+6 ;; #+8192
\ 00000082 06E0 B.N ??LED_Off_4
289 break;
290
291 case 15:
292 IOCLR = 1 << 14;
\ ??LED_Off_19:
\ 00000084 0448 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 00000086 8021 MOVS R1,#+128
\ 00000088 C901 LSLS R1,R1,#+7 ;; #+16384
\ 0000008A 02E0 B.N ??LED_Off_4
293 break;
294
295 case 16:
296 IOCLR = 1 << 15;
\ ??LED_Off_20:
\ 0000008C 0248 LDR R0,??LED_Off_3 ;; 0xe002800c
\ 0000008E 8021 MOVS R1,#+128
\ 00000090 0902 LSLS R1,R1,#+8 ;; #+32768
\ ??LED_Off_4:
\ 00000092 0160 STR R1,[R0, #+0]
297 break;
298 }
299 }
\ ??LED_Off_1:
\ 00000094 01BC POP {R0}
\ 00000096 0047 BX R0 ;; return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -