⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.txt

📁 STM32 demo板的例程
💻 TXT
📖 第 1 页 / 共 2 页
字号:
; generated by ARM/Thumb C/C++ Compiler with Crescent Bay VAST 10.7u+w+:x ARM NEON, RVCT3.1 [Build 903] for uVision
; commandline ArmCC [--debug -c --asm --interleave -o..\obj\main.o --depend=..\obj\main.d --device=DARMSTM -O3 -Otime -I..\..\LAB6 -I..\..\library\inc -IC:\Keil\ARM\INC\ST\STM32F10x -DVECT_TAB_FLASH --omf_browse=..\obj\main.crf main.c]
                          THUMB

                          AREA ||.text||, CODE, READONLY, ALIGN=2

                  RCC_Configuration PROC
000000  b510              PUSH     {r4,lr}
000002  f44ff44f          MOV      r0,#0x10000
000006  f7fff7ff          BL       RCC_HSEConfig
                  |L1.10|
00000a  2031              MOVS     r0,#0x31
00000c  f7fff7ff          BL       RCC_GetFlagStatus
000010  2800              CMP      r0,#0
000012  d0fa              BEQ      |L1.10|
000014  2001              MOVS     r0,#1
000016  f7fff7ff          BL       RCC_SYSCLKConfig
00001a  bf00              NOP      
                  |L1.28|
00001c  f7fff7ff          BL       RCC_GetSYSCLKSource
000020  2804              CMP      r0,#4
000022  d1fb              BNE      |L1.28|
000024  bd10              POP      {r4,pc}
                          ENDP

                  Delay PROC
000026  b510              PUSH     {r4,lr}
000028  4604              MOV      r4,r0
00002a  2001              MOVS     r0,#1
00002c  f7fff7ff          BL       SysTick_CounterCmd
000030  489a              LDR      r0,|L1.668|
000032  6004              STR      r4,[r0,#0]  ; TimingDelay
                  |L1.52|
000034  6801              LDR      r1,[r0,#0]  ; TimingDelay
000036  2900              CMP      r1,#0
000038  d1fc              BNE      |L1.52|
00003a  1e88              SUBS     r0,r1,#2
00003c  f7fff7ff          BL       SysTick_CounterCmd
000040  e8bde8bd          POP      {r4,lr}
000044  2000              MOVS     r0,#0
000046  f7fff7ff          B.W      SysTick_CounterCmd
                          ENDP

                  SysTick_Configuration PROC
00004a  b510              PUSH     {r4,lr}
00004c  2004              MOVS     r0,#4
00004e  f7fff7ff          BL       SysTick_CLKSourceConfig
000052  2200              MOVS     r2,#0
000054  2103              MOVS     r1,#3
000056  4892              LDR      r0,|L1.672|
000058  f7fff7ff          BL       NVIC_SystemHandlerPriorityConfig
00005c  f44ff44f          MOV      r0,#0x1f40
000060  f7fff7ff          BL       SysTick_SetReload
000064  e8bde8bd          POP      {r4,lr}
000068  2001              MOVS     r0,#1
00006a  f7fff7ff          B.W      SysTick_ITConfig
                          ENDP

                  NVIC_Configuration PROC
00006e  b538              PUSH     {r3-r5,lr}
000070  2100              MOVS     r1,#0
000072  f04ff04f          MOV      r0,#0x8000000
000076  f7fff7ff          BL       NVIC_SetVectorTable
00007a  f44ff44f          MOV      r0,#0x500
00007e  f7fff7ff          BL       NVIC_PriorityGroupConfig
000082  2029              MOVS     r0,#0x29
000084  f88df88d          STRB     r0,[sp,#0]
000088  2000              MOVS     r0,#0
00008a  f88df88d          STRB     r0,[sp,#1]
00008e  f88df88d          STRB     r0,[sp,#2]
000092  2401              MOVS     r4,#1
000094  f88df88d          STRB     r4,[sp,#3]
000098  4668              MOV      r0,sp
00009a  f7fff7ff          BL       NVIC_Init
00009e  2017              MOVS     r0,#0x17
0000a0  f88df88d          STRB     r0,[sp,#0]
0000a4  f88df88d          STRB     r4,[sp,#1]
0000a8  4668              MOV      r0,sp
0000aa  f7fff7ff          BL       NVIC_Init
0000ae  bd38              POP      {r3-r5,pc}
                          ENDP

                  EXTI_Configuration PROC
0000b0  b500              PUSH     {lr}
0000b2  b083              SUB      sp,sp,#0xc
0000b4  210d              MOVS     r1,#0xd
0000b6  2002              MOVS     r0,#2
0000b8  f7fff7ff          BL       GPIO_EXTILineConfig
0000bc  f44ff44f          MOV      r0,#0x200
0000c0  f7fff7ff          BL       EXTI_ClearITPendingBit
0000c4  f44ff44f          MOV      r0,#0x200
0000c8  9001              STR      r0,[sp,#4]
0000ca  200c              MOVS     r0,#0xc
0000cc  f88df88d          STRB     r0,[sp,#9]
0000d0  2001              MOVS     r0,#1
0000d2  f88df88d          STRB     r0,[sp,#0xa]
0000d6  a801              ADD      r0,sp,#4
0000d8  f7fff7ff          BL       EXTI_Init
0000dc  b003              ADD      sp,sp,#0xc
0000de  bd00              POP      {pc}
                          ENDP

                  GPIO_Configuration PROC
0000e0  b508              PUSH     {r3,lr}
0000e2  2101              MOVS     r1,#1
0000e4  2019              MOVS     r0,#0x19
0000e6  f7fff7ff          BL       RCC_APB2PeriphClockCmd
0000ea  f44ff44f          MOV      r0,#0xf00
0000ee  f8adf8ad          STRH     r0,[sp,#0]
0000f2  2003              MOVS     r0,#3
0000f4  f88df88d          STRB     r0,[sp,#2]
0000f8  2010              MOVS     r0,#0x10
0000fa  f88df88d          STRB     r0,[sp,#3]
0000fe  4669              MOV      r1,sp
000100  4868              LDR      r0,|L1.676|
000102  f7fff7ff          BL       GPIO_Init
000106  f44ff44f          MOV      r0,#0x2000
00010a  f8adf8ad          STRH     r0,[sp,#0]
00010e  2004              MOVS     r0,#4
000110  f88df88d          STRB     r0,[sp,#3]
000114  4669              MOV      r1,sp
000116  4864              LDR      r0,|L1.680|
000118  f7fff7ff          BL       GPIO_Init
00011c  bd08              POP      {r3,pc}
                          ENDP

                  main PROC
;;;47     int main(void)
;;;48     {
00011e  b570              PUSH     {r4-r6,lr}
000120  b082              SUB      sp,sp,#8
000122  f44ff44f          MOV      r0,#0x10000
000126  f7fff7ff          BL       RCC_HSEConfig
                  |L1.298|
00012a  2031              MOVS     r0,#0x31
00012c  f7fff7ff          BL       RCC_GetFlagStatus
000130  2800              CMP      r0,#0
000132  d0fa              BEQ      |L1.298|
000134  2001              MOVS     r0,#1
000136  f7fff7ff          BL       RCC_SYSCLKConfig
00013a  bf00              NOP      
                  |L1.316|
00013c  f7fff7ff          BL       RCC_GetSYSCLKSource
000140  2804              CMP      r0,#4
000142  d1fb              BNE      |L1.316|
;;;49     #ifdef DEBUG
;;;50       debug();
;;;51     #endif
;;;52        
;;;53       /* Clock configuration */
;;;54       RCC_Configuration();
;;;55     
;;;56       /* Enable PWR and BKP clock */
;;;57       RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);
000144  2101              MOVS     r1,#1
000146  f04ff04f          MOV      r0,#0x18000000
00014a  f7fff7ff          BL       RCC_APB1PeriphClockCmd
00014e  2101              MOVS     r1,#1
000150  2019              MOVS     r0,#0x19
000152  f7fff7ff          BL       RCC_APB2PeriphClockCmd
000156  f44ff44f          MOV      r0,#0xf00
00015a  f8adf8ad          STRH     r0,[sp,#4]
00015e  2003              MOVS     r0,#3
000160  f88df88d          STRB     r0,[sp,#6]
000164  2010              MOVS     r0,#0x10
000166  4e4f              LDR      r6,|L1.676|
000168  f88df88d          STRB     r0,[sp,#7]
00016c  a901              ADD      r1,sp,#4
00016e  4630              MOV      r0,r6
000170  f7fff7ff          BL       GPIO_Init
000174  1470              ASRS     r0,r6,#17
000176  f8adf8ad          STRH     r0,[sp,#4]
00017a  2004              MOVS     r0,#4
00017c  f88df88d          STRB     r0,[sp,#7]
000180  a901              ADD      r1,sp,#4
000182  4849              LDR      r0,|L1.680|
000184  f7fff7ff          BL       GPIO_Init
000188  210d              MOVS     r1,#0xd
00018a  2002              MOVS     r0,#2
00018c  f7fff7ff          BL       GPIO_EXTILineConfig

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -