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

📄 stm32f10x_bkp.txt

📁 STM32外部SRAM用作datamemery的程序 开发环境MDK
💻 TXT
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.1 [Build 934] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\stm32f10x_bkp.o --depend=.\Obj\stm32f10x_bkp.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\SRAM -I"D:\Program Files\MDK KEIL\ARM\INC\ST\STM32F10x" -D__MICROLIB --omf_browse=.\Obj\stm32f10x_bkp.crf ..\..\..\FWLib\library\src\stm32f10x_bkp.c]
                          THUMB

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

                  BKP_DeInit PROC
;;;72     void BKP_DeInit(void)
;;;73     {
000000  b510              PUSH     {r4,lr}
;;;74       RCC_BackupResetCmd(ENABLE);
000002  2001              MOVS     r0,#1
000004  f7fff7ff          BL       RCC_BackupResetCmd
;;;75       RCC_BackupResetCmd(DISABLE);
000008  e8bde8bd          POP      {r4,lr}
00000c  2000              MOVS     r0,#0
00000e  f7fff7ff          B.W      RCC_BackupResetCmd
;;;76     }
;;;77     
                          ENDP


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

                  BKP_TamperPinLevelConfig PROC
;;;88     void BKP_TamperPinLevelConfig(u16 BKP_TamperPinLevel)
;;;89     {
000000  4901              LDR      r1,|L2.8|
;;;90       /* Check the parameters */
;;;91       assert_param(IS_BKP_TAMPER_PIN_LEVEL(BKP_TamperPinLevel));
;;;92     
;;;93       *(vu32 *) CR_TPAL_BB = BKP_TamperPinLevel;
000002  6008              STR      r0,[r1,#0]
;;;94     }
000004  4770              BX       lr
;;;95     
                          ENDP

000006  0000              DCW      0x0000
                  |L2.8|
000008  420d8604          DCD      0x420d8604

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

                  BKP_TamperPinCmd PROC
;;;104    void BKP_TamperPinCmd(FunctionalState NewState)
;;;105    {
000000  4901              LDR      r1,|L3.8|
;;;106      /* Check the parameters */
;;;107      assert_param(IS_FUNCTIONAL_STATE(NewState));
;;;108    
;;;109      *(vu32 *) CR_TPE_BB = (u32)NewState;
000002  6008              STR      r0,[r1,#0]
;;;110    }
000004  4770              BX       lr
;;;111    
                          ENDP

000006  0000              DCW      0x0000
                  |L3.8|
000008  420d8600          DCD      0x420d8600

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

                  BKP_ITConfig PROC
;;;120    void BKP_ITConfig(FunctionalState NewState)
;;;121    {
000000  4901              LDR      r1,|L4.8|
;;;122      /* Check the parameters */
;;;123      assert_param(IS_FUNCTIONAL_STATE(NewState));
;;;124    
;;;125      *(vu32 *) CSR_TPIE_BB = (u32)NewState;
000002  6008              STR      r0,[r1,#0]
;;;126    }
000004  4770              BX       lr
;;;127    
                          ENDP

000006  0000              DCW      0x0000
                  |L4.8|
000008  420d8688          DCD      0x420d8688

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

                  BKP_RTCOutputConfig PROC
;;;143    void BKP_RTCOutputConfig(u16 BKP_RTCOutputSource)
;;;144    {
000000  4a03              LDR      r2,|L5.16|
;;;145      u16 tmpreg = 0;
;;;146    
;;;147      /* Check the parameters */
;;;148      assert_param(IS_BKP_RTC_OUTPUT_SOURCE(BKP_RTCOutputSource));
;;;149    
;;;150      tmpreg = BKP->RTCCR;
000002  8811              LDRH     r1,[r2,#0]
;;;151    
;;;152      /* Clear CCO, ASOE and ASOS bits */
;;;153      tmpreg &= RTCCR_Mask;
000004  f421f421          BIC      r1,r1,#0x380
;;;154      
;;;155      /* Set CCO, ASOE and ASOS bits according to BKP_RTCOutputSource value */
;;;156      tmpreg |= BKP_RTCOutputSource;
000008  4301              ORRS     r1,r1,r0
;;;157    
;;;158      /* Store the new value */
;;;159      BKP->RTCCR = tmpreg;
00000a  8011              STRH     r1,[r2,#0]
;;;160    }
00000c  4770              BX       lr
;;;161    
                          ENDP

00000e  0000              DCW      0x0000
                  |L5.16|
000010  40006c2c          DCD      0x40006c2c

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

                  BKP_SetRTCCalibrationValue PROC
;;;170    void BKP_SetRTCCalibrationValue(u8 CalibrationValue)
;;;171    {
000000  4a03              LDR      r2,|L6.16|
;;;172      u16 tmpreg = 0;
;;;173    
;;;174      /* Check the parameters */
;;;175      assert_param(IS_BKP_CALIBRATION_VALUE(CalibrationValue));
;;;176    
;;;177      tmpreg = BKP->RTCCR;
000002  8811              LDRH     r1,[r2,#0]
;;;178    
;;;179      /* Clear CAL[6:0] bits */
;;;180      tmpreg &= RTCCR_CAL_Mask;
000004  f021f021          BIC      r1,r1,#0x7f
;;;181    
;;;182      /* Set CAL[6:0] bits according to CalibrationValue value */
;;;183      tmpreg |= CalibrationValue;
000008  4301              ORRS     r1,r1,r0
;;;184    
;;;185      /* Store the new value */
;;;186      BKP->RTCCR = tmpreg;
00000a  8011              STRH     r1,[r2,#0]
;;;187    }
00000c  4770              BX       lr
;;;188    
                          ENDP

00000e  0000              DCW      0x0000
                  |L6.16|
000010  40006c2c          DCD      0x40006c2c

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

                  BKP_WriteBackupRegister PROC
;;;202    
;;;203      *(vu16 *) (BKP_BASE + BKP_DR) = Data;
000000  4a02              LDR      r2,|L7.12|
000002  4410              ADD      r0,r0,r2
000004  f8a0f8a0          STRH     r1,[r0,#0xc00]
;;;204    }
000008  4770              BX       lr
;;;205    
                          ENDP

00000a  0000              DCW      0x0000
                  |L7.12|
00000c  40006000          DCD      0x40006000

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

                  BKP_ReadBackupRegister PROC
;;;218    
;;;219      return (*(vu16 *) (BKP_BASE + BKP_DR));
000000  4902              LDR      r1,|L8.12|
000002  4408              ADD      r0,r0,r1
000004  f8b0f8b0          LDRH     r0,[r0,#0xc00]
;;;220    }
000008  4770              BX       lr
;;;221    
                          ENDP

00000a  0000              DCW      0x0000
                  |L8.12|
00000c  40006000          DCD      0x40006000

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

                  BKP_GetFlagStatus PROC
;;;229    FlagStatus BKP_GetFlagStatus(void)
;;;230    {
000000  4801              LDR      r0,|L9.8|
;;;231      return (FlagStatus)(*(vu32 *) CSR_TEF_BB);
000002  6800              LDR      r0,[r0,#0]
000004  b2c0              UXTB     r0,r0
;;;232    }
000006  4770              BX       lr
;;;233    
                          ENDP

                  |L9.8|
000008  420d86a0          DCD      0x420d86a0

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

                  BKP_ClearFlag PROC
;;;241    void BKP_ClearFlag(void)
;;;242    {
000000  4802              LDR      r0,|L10.12|
;;;243      /* Set CTE bit to clear Tamper Pin Event flag */
;;;244      BKP->CSR |= CSR_CTE_Set;
000002  8801              LDRH     r1,[r0,#0]
000004  f041f041          ORR      r1,r1,#1
000008  8001              STRH     r1,[r0,#0]
;;;245    }
00000a  4770              BX       lr
;;;246    
                          ENDP

                  |L10.12|
00000c  40006c34          DCD      0x40006c34

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

                  BKP_GetITStatus PROC
;;;254    ITStatus BKP_GetITStatus(void)
;;;255    {
000000  4801              LDR      r0,|L11.8|
;;;256      return (ITStatus)(*(vu32 *) CSR_TIF_BB);
000002  6800              LDR      r0,[r0,#0]
000004  b2c0              UXTB     r0,r0
;;;257    }
000006  4770              BX       lr
;;;258    
                          ENDP

                  |L11.8|
000008  420d86a4          DCD      0x420d86a4

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

                  BKP_ClearITPendingBit PROC
;;;266    void BKP_ClearITPendingBit(void)
;;;267    {
000000  4802              LDR      r0,|L12.12|
;;;268      /* Set CTI bit to clear Tamper Pin Interrupt pending bit */
;;;269      BKP->CSR |= CSR_CTI_Set;
000002  8801              LDRH     r1,[r0,#0]
000004  f041f041          ORR      r1,r1,#2
000008  8001              STRH     r1,[r0,#0]
;;;270    }
00000a  4770              BX       lr
;;;271    
                          ENDP

                  |L12.12|
00000c  40006c34          DCD      0x40006c34

⌨️ 快捷键说明

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