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

📄 hw_config.txt

📁 MP3_PLAYER.rar
💻 TXT
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.1 [Build 938] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\hw_config.o --depend=.\Obj\hw_config.d --device=DARMSTM --apcs=interwork -O3 -I.\Code\FATSystem\INC -I.\Code\Library\INC -I.\Code\SDCard\INC -I.\Code\Speaker\INC -I.\Code\System\INC -I.\Code\USBMassStorage\INC -I.\Code\User\INC -I.\Code\VS1003\INC -ID:\Keil\ARM\INC\ST\STM32F10x --omf_browse=.\Obj\hw_config.crf Code\System\SRC\hw_config.c]
                          THUMB

                          AREA ||i.Set_System||, CODE, READONLY, ALIGN=1

                  Set_System PROC
;;;38     void Set_System(void)
;;;39     {
000000  b510              PUSH     {r4,lr}
;;;40      
;;;41       /* Enable GPIOB, TIM2 & TIM4 clock */
;;;42       RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB  , ENABLE);
000002  2101              MOVS     r1,#1
000004  2008              MOVS     r0,#8
000006  f7fffffe          BL       RCC_APB2PeriphClockCmd
;;;43       
;;;44       RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 | RCC_APB1Periph_TIM4 , ENABLE);
00000a  2101              MOVS     r1,#1
00000c  e8bd4010          POP      {r4,lr}
000010  2005              MOVS     r0,#5
000012  f7ffbffe          B.W      RCC_APB1PeriphClockCmd
;;;45       
;;;46     }
;;;47     
                          ENDP


                          AREA ||i.NVIC_Config||, CODE, READONLY, ALIGN=1

                  NVIC_Config PROC
;;;54     void NVIC_Config(void)
;;;55     {
000000  b508              PUSH     {r3,lr}
;;;56       NVIC_InitTypeDef NVIC_InitStructure;
;;;57     
;;;58     #ifdef  VECT_TAB_RAM
;;;59       /* Set the Vector Table base location at 0x20000000 */
;;;60       NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0);
;;;61     #else  /* VECT_TAB_FLASH */
;;;62       /* Set the Vector Table base location at 0x08000000 */
;;;63       NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);
000002  2100              MOVS     r1,#0
000004  f04f6000          MOV      r0,#0x8000000
000008  f7fffffe          BL       NVIC_SetVectorTable
;;;64     #endif
;;;65     
;;;66       /* Enable the TIM2 Interrupt */
;;;67       NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQChannel;
00000c  201c              MOVS     r0,#0x1c
00000e  f88d0000          STRB     r0,[sp,#0]
;;;68       NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
000012  2000              MOVS     r0,#0
000014  f88d0001          STRB     r0,[sp,#1]
;;;69       NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
000018  f88d0002          STRB     r0,[sp,#2]
;;;70       NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
00001c  2001              MOVS     r0,#1
00001e  f88d0003          STRB     r0,[sp,#3]
;;;71       NVIC_Init(&NVIC_InitStructure);
000022  4668              MOV      r0,sp
000024  f7fffffe          BL       NVIC_Init
;;;72     }
000028  bd08              POP      {r3,pc}
;;;73     
                          ENDP


                          AREA ||i.Set_USBClock||, CODE, READONLY, ALIGN=2

                  Set_USBClock PROC
;;;80     void Set_USBClock(void)
;;;81     {
000000  b508              PUSH     {r3,lr}
;;;82       GPIO_InitTypeDef  GPIO_InitStructure;
;;;83     
;;;84       /* Enable and GPIOD clock */
;;;85       RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);
000002  2101              MOVS     r1,#1
000004  2020              MOVS     r0,#0x20
000006  f7fffffe          BL       RCC_APB2PeriphClockCmd
;;;86       
;;;87       /* PD.09 used as USB pull-up */
;;;88       GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
00000a  f44f7000          MOV      r0,#0x200
00000e  f8ad0000          STRH     r0,[sp,#0]
;;;89       GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
000012  2003              MOVS     r0,#3
000014  f88d0002          STRB     r0,[sp,#2]
;;;90       GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
000018  2014              MOVS     r0,#0x14
00001a  f88d0003          STRB     r0,[sp,#3]
;;;91       GPIO_Init(GPIOD, &GPIO_InitStructure);
00001e  4669              MOV      r1,sp
000020  4805              LDR      r0,|L3.56|
000022  f7fffffe          BL       GPIO_Init
;;;92       /* USBCLK = PLLCLK */
;;;93       RCC_USBCLKConfig(RCC_USBCLKSource_PLLCLK_1Div5);
000026  2000              MOVS     r0,#0
000028  f7fffffe          BL       RCC_USBCLKConfig
;;;94     
;;;95       /* Enable USB clock */
;;;96       RCC_APB1PeriphClockCmd(RCC_APB1Periph_USB, ENABLE);
00002c  2101              MOVS     r1,#1
00002e  05c8              LSLS     r0,r1,#23
000030  f7fffffe          BL       RCC_APB1PeriphClockCmd
;;;97     
;;;98     }
000034  bd08              POP      {r3,pc}
;;;99     
                          ENDP

000036  0000              DCW      0x0000
                  |L3.56|
000038  40011400          DCD      0x40011400

                          AREA ||i.Enter_LowPowerMode||, CODE, READONLY, ALIGN=1

                  Enter_LowPowerMode PROC
;;;107    {
;;;108    }
000000  4770              BX       lr
;;;109    
                          ENDP


                          AREA ||i.Leave_LowPowerMode||, CODE, READONLY, ALIGN=1

                  Leave_LowPowerMode PROC
;;;117    {
;;;118    }
000000  4770              BX       lr
;;;119    
                          ENDP


                          AREA ||i.USB_Interrupts_Config||, CODE, READONLY, ALIGN=1

                  USB_Interrupts_Config PROC
;;;126    void USB_Interrupts_Config(void)
;;;127    {
000000  b538              PUSH     {r3-r5,lr}
;;;128      NVIC_InitTypeDef NVIC_InitStructure;
;;;129    
;;;130    #ifdef  VECT_TAB_RAM
;;;131      /* Set the Vector Table base location at 0x20000000 */
;;;132      NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0);
;;;133    #else  /* VECT_TAB_FLASH */
;;;134      /* Set the Vector Table base location at 0x08000000 */
;;;135      NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);
000002  2100              MOVS     r1,#0
000004  f04f6000          MOV      r0,#0x8000000
000008  f7fffffe          BL       NVIC_SetVectorTable
;;;136    #endif
;;;137    
;;;138      NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
00000c  f44f60c0          MOV      r0,#0x600
000010  f7fffffe          BL       NVIC_PriorityGroupConfig
;;;139    
;;;140      NVIC_InitStructure.NVIC_IRQChannel = USB_LP_CAN_RX0_IRQChannel;
000014  2014              MOVS     r0,#0x14
000016  f88d0000          STRB     r0,[sp,#0]
;;;141      NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
00001a  2501              MOVS     r5,#1
00001c  f88d5001          STRB     r5,[sp,#1]
;;;142      NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
000020  2400              MOVS     r4,#0
000022  f88d4002          STRB     r4,[sp,#2]
;;;143      NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
000026  f88d5003          STRB     r5,[sp,#3]
;;;144      NVIC_Init(&NVIC_InitStructure);
00002a  4668              MOV      r0,sp
00002c  f7fffffe          BL       NVIC_Init
;;;145      
;;;146      NVIC_InitStructure.NVIC_IRQChannel = USB_HP_CAN_TX_IRQChannel;
000030  2013              MOVS     r0,#0x13
000032  f88d0000          STRB     r0,[sp,#0]
;;;147      NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
000036  f88d4001          STRB     r4,[sp,#1]
;;;148      NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
00003a  f88d4002          STRB     r4,[sp,#2]
;;;149      NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
00003e  f88d5003          STRB     r5,[sp,#3]
;;;150      NVIC_Init(&NVIC_InitStructure);
000042  4668              MOV      r0,sp
000044  f7fffffe          BL       NVIC_Init
;;;151    }
000048  bd38              POP      {r3-r5,pc}
;;;152    
                          ENDP


                          AREA ||i.Led_Config||, CODE, READONLY, ALIGN=2

                  Led_Config PROC
;;;160    void Led_Config(void)
;;;161    {
000000  b508              PUSH     {r3,lr}
;;;162      GPIO_InitTypeDef GPIO_InitStructure;
;;;163    
;;;164      /* Enable GPIOC clock */
;;;165      RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
000002  2101              MOVS     r1,#1
000004  2010              MOVS     r0,#0x10
000006  f7fffffe          BL       RCC_APB2PeriphClockCmd
;;;166    
;;;167      /* Configure PC.06, PC.07, PC.08 and PC.09 as output push-pull */
;;;168      GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9;
00000a  f44f7070          MOV      r0,#0x3c0
00000e  f8ad0000          STRH     r0,[sp,#0]
;;;169      GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
000012  2010              MOVS     r0,#0x10
000014  f88d0003          STRB     r0,[sp,#3]
;;;170      GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
000018  2003              MOVS     r0,#3
00001a  f88d0002          STRB     r0,[sp,#2]
;;;171      GPIO_Init(GPIOC, &GPIO_InitStructure);
00001e  4669              MOV      r1,sp
000020  4801              LDR      r0,|L7.40|
000022  f7fffffe          BL       GPIO_Init
;;;172    }
000026  bd08              POP      {r3,pc}
;;;173    
                          ENDP

                  |L7.40|
000028  40011000          DCD      0x40011000

                          AREA ||i.Led_RW_ON||, CODE, READONLY, ALIGN=2

                  Led_RW_ON PROC
;;;182    {
;;;183      GPIO_SetBits(GPIOC, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9);
000000  f44f7170          MOV      r1,#0x3c0
000004  4801              LDR      r0,|L8.12|
000006  f7ffbffe          B.W      GPIO_SetBits
;;;184    }
;;;185    
                          ENDP

00000a  0000              DCW      0x0000
                  |L8.12|
00000c  40011000          DCD      0x40011000

                          AREA ||i.Led_RW_OFF||, CODE, READONLY, ALIGN=2

                  Led_RW_OFF PROC
;;;194    {
;;;195      GPIO_ResetBits(GPIOC, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9);
000000  f44f7170          MOV      r1,#0x3c0
000004  4801              LDR      r0,|L9.12|
000006  f7ffbffe          B.W      GPIO_ResetBits
;;;196    }
;;;197    
                          ENDP

00000a  0000              DCW      0x0000
                  |L9.12|
00000c  40011000          DCD      0x40011000

                          AREA ||i.USB_Cable_Config||, CODE, READONLY, ALIGN=2

                  USB_Cable_Config PROC
;;;204    void USB_Cable_Config (FunctionalState NewState)
;;;205    {
000000  4a04              LDR      r2,|L10.20|
;;;206      if (NewState != DISABLE)
000002  2800              CMP      r0,#0
000004  f44f7100          MOV      r1,#0x200             ;205
;;;207      {
;;;208        GPIO_ResetBits(GPIOD, GPIO_Pin_9);
000008  4610              MOV      r0,r2
00000a  d001              BEQ      |L10.16|
00000c  f7ffbffe          B.W      GPIO_ResetBits
                  |L10.16|
;;;209      }
;;;210      else
;;;211      {
;;;212        GPIO_SetBits(GPIOD, GPIO_Pin_9);
000010  f7ffbffe          B.W      GPIO_SetBits
;;;213      }
;;;214    }
;;;215    
                          ENDP

                  |L10.20|
000014  40011400          DCD      0x40011400

                          AREA ||.data||, DATA, ALIGN=0

                  HSEStartUpStatus
000000  00                DCB      0x00

⌨️ 快捷键说明

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