stm32f4xx_it.txt
10 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
; generated by Component: ARM Compiler 5.06 update 6 (build 750) Tool: ArmCC [4d3637]
; commandline ArmCC [--c99 --list --split_sections --debug -c --asm --interleave -o.\flash\obj\stm32f4xx_it.o --asm_dir=.\Flash\List\ --list_dir=.\Flash\List\ --depend=.\flash\obj\stm32f4xx_it.d --cpu=Cortex-M4.fp --apcs=interwork -O1 --diag_suppress=9931,870 -I..\..\Libraries\CMSIS\Include -I..\..\Libraries\CMSIS\Device\ST\STM32F4xx\Include -I..\..\Libraries\STM32F4xx_StdPeriph_Driver\inc -I..\..\uCOS-III\uC-CPU -I..\..\uCOS-III\uC-LIB -I..\..\uCOS-III\uCOS-III\Ports -I..\..\uCOS-III\uCOS-III\Source -I..\..\uCOS-III\uC-CPU\ARM-Cortex-M4\RealView -I..\..\uCOS-III\uC-LIB\Ports\ARM-Cortex-M4\RealView -I..\..\uCOS-III\uCOS-III\Ports\ARM-Cortex-M4\Generic\RealView -I..\..\User -I..\..\User\bsp -I..\..\User\bsp\inc -I..\..\User\libapp -I..\..\RL-ARM\Config -I..\..\RL-ARM\Driver -I..\..\RL-ARM\RL-RTX\inc -I..\..\User\bsp\BSP -I..\..\RL-ARM\RL-CAN -I..\..\Libraries\DSP_LIB\Include -I..\..\MODBUS\modbus\rtu -I..\..\MODBUS\BARE\port -I..\..\MODBUS\modbus\include -I..\..\User\bsp\BSP -I..\..\PLC -I..\..\Avoid -I..\..\User\parameter -I..\..\User\LaserMotionCtr -I..\..\User\W5100S -I..\..\User\bsp -I..\..\User\CHASSIS -I..\..\User\CONTROLFUNCTION -I..\..\User\DATAUPDATE -I..\..\User\HARAWARE -I..\..\User\MOTORDRIVER -I..\..\User\NAVAGATION -I..\..\User\PLATFORM -I..\..\User\SENSOR -I.\RTE\_Flash -IC:\Users\YDJ\AppData\Local\Arm\Packs\ARM\CMSIS\5.5.1\CMSIS\Core\Include -IC:\Users\YDJ\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.13.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION=527 -D_RTE_ -DSTM32F407xx -DUSE_STDPERIPH_DRIVER -DSTM32F40_41xxx -D__RTX -D__FPU_USED=1 --omf_browse=.\flash\obj\stm32f4xx_it.crf ..\..\User\bsp\stm32f4xx_it.c]
THUMB
AREA ||i.BusFault_Handler||, CODE, READONLY, ALIGN=1
BusFault_Handler PROC
|L1.0|
;;;123 */
;;;124 void BusFault_Handler(void)
000000 e7fe B |L1.0|
;;;125 {
;;;126 /* 当总线异常时进入死循环 */
;;;127 while (1)
;;;128 {
;;;129 }
;;;130 }
;;;131
ENDP
AREA ||i.DebugMon_Handler||, CODE, READONLY, ALIGN=1
DebugMon_Handler PROC
;;;167 */
;;;168 void DebugMon_Handler(void)
000000 4770 BX lr
;;;169 {
;;;170 }
;;;171
ENDP
AREA ||i.HardFault_Handler||, CODE, READONLY, ALIGN=2
HardFault_Handler PROC
;;;60 */
;;;61 void HardFault_Handler(void)
000000 e92d41f0 PUSH {r4-r8,lr}
;;;62 {
;;;63 #if 1
;;;64 const char *pError = ERR_INFO;
000004 a32a ADR r3,|L3.176|
;;;65 uint8_t i;
;;;66
;;;67 for (i = 0; i < sizeof(ERR_INFO); i++)
000006 2100 MOVS r1,#0
;;;68 {
;;;69 USART1->DR = pError[i];
000008 4c34 LDR r4,|L3.220|
|L3.10|
00000a 5c58 LDRB r0,[r3,r1]
00000c 80a0 STRH r0,[r4,#4]
|L3.14|
;;;70 /* 等待发送结束 */
;;;71 while ((USART1->SR & USART_FLAG_TC) == (uint16_t)RESET);
00000e 8822 LDRH r2,[r4,#0]
000010 0652 LSLS r2,r2,#25
000012 d5fc BPL |L3.14|
000014 1c49 ADDS r1,r1,#1 ;67
000016 b2c9 UXTB r1,r1 ;67
000018 292a CMP r1,#0x2a ;67
00001a d3f6 BCC |L3.10|
;;;72 }
;;;73 #endif
;;;74
;;;75 /* 当硬件失效异常发生时进入死循环 */
;;;76 while (1)
;;;77 {
;;;78 static u8 Count = 0;
;;;79
;;;80 WWDG_SetCounter(0x7f); //重设窗口看门狗值
00001c 207f MOVS r0,#0x7f
00001e f7fffffe BL WWDG_SetCounter
;;;81 WWDG_ClearFlag(); //清除提前唤醒中断标志位
000022 f7fffffe BL WWDG_ClearFlag
;;;82
;;;83 Count += 1;
000026 492e LDR r1,|L3.224|
000028 7808 LDRB r0,[r1,#0] ; Count
00002a 1c40 ADDS r0,r0,#1
00002c b2c0 UXTB r0,r0
00002e 7008 STRB r0,[r1,#0]
;;;84 if(Count > 1)return;
000030 2801 CMP r0,#1
000032 d83a BHI |L3.170|
;;;85
;;;86 USART_ITConfig(USART6, USART_IT_RXNE, DISABLE);
000034 4f2b LDR r7,|L3.228|
000036 f2405625 MOV r6,#0x525
00003a 2200 MOVS r2,#0
00003c 4631 MOV r1,r6
00003e 4638 MOV r0,r7
000040 f7fffffe BL USART_ITConfig
;;;87 USART_ITConfig(USART6, USART_IT_TXE, DISABLE);
000044 f2407527 MOV r5,#0x727
000048 2200 MOVS r2,#0
00004a 4629 MOV r1,r5
00004c 4638 MOV r0,r7
00004e f7fffffe BL USART_ITConfig
;;;88 USART_ITConfig(USART1, USART_IT_RXNE, DISABLE);
000052 2200 MOVS r2,#0
000054 4631 MOV r1,r6
000056 4620 MOV r0,r4
000058 f7fffffe BL USART_ITConfig
;;;89 USART_ITConfig(USART1, USART_IT_TXE, DISABLE);
00005c 2200 MOVS r2,#0
00005e 4629 MOV r1,r5
000060 4620 MOV r0,r4
000062 f7fffffe BL USART_ITConfig
;;;90 USART_ITConfig(USART2, USART_IT_RXNE, DISABLE);
000066 4c20 LDR r4,|L3.232|
000068 2200 MOVS r2,#0
00006a 4631 MOV r1,r6
00006c 4620 MOV r0,r4
00006e f7fffffe BL USART_ITConfig
;;;91 USART_ITConfig(USART2, USART_IT_TXE, DISABLE);
000072 2200 MOVS r2,#0
000074 4629 MOV r1,r5
000076 4620 MOV r0,r4
000078 f7fffffe BL USART_ITConfig
;;;92 USART_ITConfig(USART3, USART_IT_RXNE, DISABLE);
00007c 4c1b LDR r4,|L3.236|
00007e 2200 MOVS r2,#0
000080 4631 MOV r1,r6
000082 4620 MOV r0,r4
000084 f7fffffe BL USART_ITConfig
;;;93 USART_ITConfig(USART3, USART_IT_TXE, DISABLE);
000088 2200 MOVS r2,#0
00008a 4629 MOV r1,r5
00008c 4620 MOV r0,r4
00008e f7fffffe BL USART_ITConfig
000092 f3bf8f4f DSB
000096 4916 LDR r1,|L3.240|
000098 6808 LDR r0,[r1,#0]
00009a 4a16 LDR r2,|L3.244|
00009c f40060e0 AND r0,r0,#0x700
0000a0 4310 ORRS r0,r0,r2
0000a2 6008 STR r0,[r1,#0]
0000a4 f3bf8f4f DSB
|L3.168|
0000a8 e7fe B |L3.168|
|L3.170|
;;;94
;;;95
;;;96 NVIC_SystemReset();
;;;97 }
;;;98 }
0000aa e8bd81f0 POP {r4-r8,pc}
;;;99
ENDP
0000ae 0000 DCW 0x0000
|L3.176|
0000b0 0d0a456e DCB "\r\nEnter HardFault_Handler, System Halt.\r\n",0
0000b4 74657220
0000b8 48617264
0000bc 4661756c
0000c0 745f4861
0000c4 6e646c65
0000c8 722c2053
0000cc 79737465
0000d0 6d204861
0000d4 6c742e0d
0000d8 0a00
0000da 00 DCB 0
0000db 00 DCB 0
|L3.220|
DCD 0x40011000
|L3.224|
DCD ||.data||
|L3.228|
DCD 0x40011400
|L3.232|
DCD 0x40004400
|L3.236|
DCD 0x40004800
|L3.240|
DCD 0xe000ed0c
|L3.244|
DCD 0x05fa0004
AREA ||i.MemManage_Handler||, CODE, READONLY, ALIGN=1
MemManage_Handler PROC
|L4.0|
;;;107 */
;;;108 void MemManage_Handler(void)
000000 e7fe B |L4.0|
;;;109 {
;;;110 /* 当内存管理异常发生时进入死循环 */
;;;111 while (1)
;;;112 {
;;;113 }
;;;114 }
;;;115
ENDP
AREA ||i.NMI_Handler||, CODE, READONLY, ALIGN=1
NMI_Handler PROC
;;;47 */
;;;48 void NMI_Handler(void)
000000 4770 BX lr
;;;49 {
;;;50 }
;;;51
ENDP
AREA ||i.SVC_Handler||, CODE, READONLY, ALIGN=1
SVC_Handler PROC
;;;155 */
;;;156 void SVC_Handler(void)
000000 4770 BX lr
;;;157 {
;;;158 }
;;;159
ENDP
AREA ||i.UsageFault_Handler||, CODE, READONLY, ALIGN=1
UsageFault_Handler PROC
|L7.0|
;;;139 */
;;;140 void UsageFault_Handler(void)
000000 e7fe B |L7.0|
;;;141 {
;;;142 /* 当用法异常时进入死循环 */
;;;143 while (1)
;;;144 {
;;;145 }
;;;146 }
;;;147
ENDP
AREA ||.data||, DATA, ALIGN=0
Count
000000 00 DCB 0x00
;*** Start embedded assembler ***
#line 1 "..\\..\\User\\bsp\\stm32f4xx_it.c"
AREA ||.rev16_text||, CODE
THUMB
EXPORT |__asm___14_stm32f4xx_it_c_bb8ca80c____REV16|
#line 129 "..\\..\\Libraries\\CMSIS\\Include\\core_cmInstr.h"
|__asm___14_stm32f4xx_it_c_bb8ca80c____REV16| PROC
#line 130
rev16 r0, r0
bx lr
ENDP
AREA ||.revsh_text||, CODE
THUMB
EXPORT |__asm___14_stm32f4xx_it_c_bb8ca80c____REVSH|
#line 144
|__asm___14_stm32f4xx_it_c_bb8ca80c____REVSH| PROC
#line 145
revsh r0, r0
bx lr
ENDP
AREA ||.rrx_text||, CODE
THUMB
EXPORT |__asm___14_stm32f4xx_it_c_bb8ca80c____RRX|
#line 300
|__asm___14_stm32f4xx_it_c_bb8ca80c____RRX| PROC
#line 301
rrx r0, r0
bx lr
ENDP
;*** End embedded assembler ***