📄 main.txt
字号:
000190 1570 ASRS r0,r6,#21
000192 f7fff7ff BL EXTI_ClearITPendingBit
000196 1570 ASRS r0,r6,#21
000198 9000 STR r0,[sp,#0]
00019a 200c MOVS r0,#0xc
00019c f88df88d STRB r0,[sp,#5]
0001a0 2401 MOVS r4,#1
0001a2 f88df88d STRB r4,[sp,#6]
0001a6 4668 MOV r0,sp
0001a8 f7fff7ff BL EXTI_Init
0001ac 2100 MOVS r1,#0
0001ae 06e0 LSLS r0,r4,#27
0001b0 f7fff7ff BL NVIC_SetVectorTable
0001b4 f44ff44f MOV r0,#0x500
0001b8 f7fff7ff BL NVIC_PriorityGroupConfig
0001bc 2029 MOVS r0,#0x29
0001be f88df88d STRB r0,[sp,#4]
0001c2 2000 MOVS r0,#0
0001c4 f88df88d STRB r0,[sp,#5]
0001c8 f88df88d STRB r0,[sp,#6]
0001cc f88df88d STRB r4,[sp,#7]
0001d0 a801 ADD r0,sp,#4
0001d2 f7fff7ff BL NVIC_Init
0001d6 2017 MOVS r0,#0x17
0001d8 f88df88d STRB r0,[sp,#4]
0001dc f88df88d STRB r4,[sp,#5]
0001e0 a801 ADD r0,sp,#4
0001e2 f7fff7ff BL NVIC_Init
0001e6 2004 MOVS r0,#4
0001e8 f7fff7ff BL SysTick_CLKSourceConfig
0001ec 2200 MOVS r2,#0
0001ee 2103 MOVS r1,#3
0001f0 482b LDR r0,|L1.672|
0001f2 f7fff7ff BL NVIC_SystemHandlerPriorityConfig
0001f6 f44ff44f MOV r0,#0x1f40
0001fa f7fff7ff BL SysTick_SetReload
0001fe 2001 MOVS r0,#1
000200 f7fff7ff BL SysTick_ITConfig
;;;58
;;;59 /* GPIO configuration */
;;;60 GPIO_Configuration();
;;;61
;;;62 /* Configure EXTI Line9 to generate an interrupt on falling edge */
;;;63 EXTI_Configuration();
;;;64
;;;65 #ifdef LAB6_RTC
;;;66 /* Configure RTC clock source and prescaler */
;;;67 RTC_Configuration();
;;;68 #endif /* LAB6_RTC */
;;;69
;;;70 /* NVIC configuration */
;;;71 NVIC_Configuration();
;;;72
;;;73 /* Configure the SysTick to generate an interrupt each 1 millisecond */
;;;74 SysTick_Configuration();
;;;75
;;;76 /* Turn on led connected to PC.06 and PC.08*/
;;;77 GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_SET);
000204 2201 MOVS r2,#1
000206 0211 LSLS r1,r2,#8
000208 4630 MOV r0,r6
00020a f7fff7ff BL GPIO_WriteBit
;;;78 GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_SET);
00020e 2201 MOVS r2,#1
000210 0291 LSLS r1,r2,#10
000212 4630 MOV r0,r6
000214 f7fff7ff BL GPIO_WriteBit
000218 4c20 LDR r4,|L1.668|
00021a f44ff44f MOV r5,#0x7d0
|L1.542|
00021e 2001 MOVS r0,#1
000220 f7fff7ff BL SysTick_CounterCmd
000224 6025 STR r5,[r4,#0] ; TimingDelay
|L1.550|
000226 6820 LDR r0,[r4,#0] ; TimingDelay
000228 2800 CMP r0,#0
00022a d1fc BNE |L1.550|
00022c 1e80 SUBS r0,r0,#2
00022e f7fff7ff BL SysTick_CounterCmd
000232 2000 MOVS r0,#0
000234 f7fff7ff BL SysTick_CounterCmd
;;;79
;;;80 while(1)
;;;81 {
;;;82 /* Insert 2 second delay */
;;;83 Delay(2000);
;;;84
;;;85 #ifdef LAB6_RTC
;;;86 /* Alarm in 2 second */
;;;87 RTC_SetAlarm(RTC_GetCounter()+ 2);
;;;88 /* Wait until last write operation on RTC registers has finished */
;;;89 RTC_WaitForLastTask();
;;;90 #endif // LAB6_RTC
;;;91
;;;92 /* Turn off led connected to PC.06 and PC.08 */
;;;93 GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_RESET);
000238 2200 MOVS r2,#0
00023a f44ff44f MOV r1,#0x100
00023e 4630 MOV r0,r6
000240 f7fff7ff BL GPIO_WriteBit
;;;94 GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_RESET);
000244 2200 MOVS r2,#0
000246 f44ff44f MOV r1,#0x400
00024a 4630 MOV r0,r6
00024c f7fff7ff BL GPIO_WriteBit
;;;95
;;;96 #ifdef LAB6_WFI
;;;97 GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_RESET);
000250 2200 MOVS r2,#0
000252 f44ff44f MOV r1,#0x200
000256 4630 MOV r0,r6
000258 f7fff7ff BL GPIO_WriteBit
;;;98
;;;99 /* Request to enter STOP mode with regulator ON */
;;;100 PWR_EnterSTOPMode(PWR_Regulator_ON, PWR_STOPEntry_WFI);
00025c 2101 MOVS r1,#1
00025e 2000 MOVS r0,#0
000260 f7fff7ff BL PWR_EnterSTOPMode
;;;101 #endif //LAB6_WFI
;;;102
;;;103 #ifdef LAB6_WFE
;;;104 /* Request to enter STOP mode with regulator ON */
;;;105 PWR_EnterSTOPMode(PWR_Regulator_ON, PWR_STOPEntry_WFE);
;;;106 #endif //LAB6_WFE
;;;107
;;;108 #ifdef LAB6_RTC
;;;109 /* Request to enter STOP mode with regulator ON */
;;;110 PWR_EnterSTOPMode(PWR_Regulator_ON, PWR_STOPEntry_WFI);
;;;111 #endif //LAB6_RTC
;;;112
;;;113 /* At this stage the system has resumed from STOP mode -------------------*/
;;;114 /* Turn on led connected to PC.06 and PC.09 */
;;;115 GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_SET);
000264 2201 MOVS r2,#1
000266 0211 LSLS r1,r2,#8
000268 4630 MOV r0,r6
00026a f7fff7ff BL GPIO_WriteBit
;;;116 GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_SET);
00026e 2201 MOVS r2,#1
000270 0291 LSLS r1,r2,#10
000272 4630 MOV r0,r6
000274 f7fff7ff BL GPIO_WriteBit
000278 f44ff44f MOV r0,#0x10000
00027c f7fff7ff BL RCC_HSEConfig
|L1.640|
000280 2031 MOVS r0,#0x31
000282 f7fff7ff BL RCC_GetFlagStatus
000286 2800 CMP r0,#0
000288 d0fa BEQ |L1.640|
00028a 2001 MOVS r0,#1
00028c f7fff7ff BL RCC_SYSCLKConfig
|L1.656|
000290 f7fff7ff BL RCC_GetSYSCLKSource
000294 2804 CMP r0,#4
000296 d1fb BNE |L1.656|
000298 e7c1 B |L1.542|
;;;117
;;;118 /* Enable and select HSE as system clock source, as HSE is disabled in STOP mode */
;;;119 RCC_Configuration();
;;;120 }
;;;121 }
ENDP
RTC_Configuration PROC
;;;258 #endif //LAB6_RTC
;;;259 }
00029a 4770 BX lr
ENDP
|L1.668|
00029c 00000000 DCD TimingDelay
|L1.672|
0002a0 0002c39a DCD 0x0002c39a
|L1.676|
0002a4 40010c00 DCD 0x40010c00
|L1.680|
0002a8 40011000 DCD 0x40011000
__ARM_use_no_argv EQU 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -