📄 stm32f10x_fsmc.lst
字号:
410 * @brief Fills each FSMC_NANDInitStruct member with its default value.
411 * @param FSMC_NANDInitStruct: pointer to a FSMC_NANDInitTypeDef
412 * structure which will be initialized.
413 * @retval None
414 */
\ In section .text, align 2, keep-with-next
415 void FSMC_NANDStructInit(FSMC_NANDInitTypeDef* FSMC_NANDInitStruct)
416 {
417 /* Reset NAND Init structure parameters values */
418 FSMC_NANDInitStruct->FSMC_Bank = FSMC_Bank2_NAND;
\ FSMC_NANDStructInit:
\ 00000000 1021 MOVS R1,#+16
\ 00000002 0160 STR R1,[R0, #+0]
419 FSMC_NANDInitStruct->FSMC_Waitfeature = FSMC_Waitfeature_Disable;
\ 00000004 0021 MOVS R1,#+0
\ 00000006 4160 STR R1,[R0, #+4]
420 FSMC_NANDInitStruct->FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_8b;
\ 00000008 0021 MOVS R1,#+0
\ 0000000A 8160 STR R1,[R0, #+8]
421 FSMC_NANDInitStruct->FSMC_ECC = FSMC_ECC_Disable;
\ 0000000C 0021 MOVS R1,#+0
\ 0000000E C160 STR R1,[R0, #+12]
422 FSMC_NANDInitStruct->FSMC_ECCPageSize = FSMC_ECCPageSize_256Bytes;
\ 00000010 0021 MOVS R1,#+0
\ 00000012 0161 STR R1,[R0, #+16]
423 FSMC_NANDInitStruct->FSMC_TCLRSetupTime = 0x0;
\ 00000014 0021 MOVS R1,#+0
\ 00000016 4161 STR R1,[R0, #+20]
424 FSMC_NANDInitStruct->FSMC_TARSetupTime = 0x0;
\ 00000018 0021 MOVS R1,#+0
\ 0000001A 8161 STR R1,[R0, #+24]
425 FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_SetupTime = 0xFC;
\ 0000001C C169 LDR R1,[R0, #+28]
\ 0000001E FC22 MOVS R2,#+252
\ 00000020 0A60 STR R2,[R1, #+0]
426 FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_WaitSetupTime = 0xFC;
\ 00000022 C169 LDR R1,[R0, #+28]
\ 00000024 FC22 MOVS R2,#+252
\ 00000026 4A60 STR R2,[R1, #+4]
427 FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HoldSetupTime = 0xFC;
\ 00000028 C169 LDR R1,[R0, #+28]
\ 0000002A FC22 MOVS R2,#+252
\ 0000002C 8A60 STR R2,[R1, #+8]
428 FSMC_NANDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HiZSetupTime = 0xFC;
\ 0000002E C169 LDR R1,[R0, #+28]
\ 00000030 FC22 MOVS R2,#+252
\ 00000032 CA60 STR R2,[R1, #+12]
429 FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_SetupTime = 0xFC;
\ 00000034 016A LDR R1,[R0, #+32]
\ 00000036 FC22 MOVS R2,#+252
\ 00000038 0A60 STR R2,[R1, #+0]
430 FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_WaitSetupTime = 0xFC;
\ 0000003A 016A LDR R1,[R0, #+32]
\ 0000003C FC22 MOVS R2,#+252
\ 0000003E 4A60 STR R2,[R1, #+4]
431 FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HoldSetupTime = 0xFC;
\ 00000040 016A LDR R1,[R0, #+32]
\ 00000042 FC22 MOVS R2,#+252
\ 00000044 8A60 STR R2,[R1, #+8]
432 FSMC_NANDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HiZSetupTime = 0xFC;
\ 00000046 016A LDR R1,[R0, #+32]
\ 00000048 FC22 MOVS R2,#+252
\ 0000004A CA60 STR R2,[R1, #+12]
433 }
\ 0000004C 7047 BX LR ;; return
434
435 /**
436 * @brief Fills each FSMC_PCCARDInitStruct member with its default value.
437 * @param FSMC_PCCARDInitStruct: pointer to a FSMC_PCCARDInitTypeDef
438 * structure which will be initialized.
439 * @retval None
440 */
\ In section .text, align 2, keep-with-next
441 void FSMC_PCCARDStructInit(FSMC_PCCARDInitTypeDef* FSMC_PCCARDInitStruct)
442 {
443 /* Reset PCCARD Init structure parameters values */
444 FSMC_PCCARDInitStruct->FSMC_Waitfeature = FSMC_Waitfeature_Disable;
\ FSMC_PCCARDStructInit:
\ 00000000 0021 MOVS R1,#+0
\ 00000002 0160 STR R1,[R0, #+0]
445 FSMC_PCCARDInitStruct->FSMC_TCLRSetupTime = 0x0;
\ 00000004 0021 MOVS R1,#+0
\ 00000006 4160 STR R1,[R0, #+4]
446 FSMC_PCCARDInitStruct->FSMC_TARSetupTime = 0x0;
\ 00000008 0021 MOVS R1,#+0
\ 0000000A 8160 STR R1,[R0, #+8]
447 FSMC_PCCARDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_SetupTime = 0xFC;
\ 0000000C C168 LDR R1,[R0, #+12]
\ 0000000E FC22 MOVS R2,#+252
\ 00000010 0A60 STR R2,[R1, #+0]
448 FSMC_PCCARDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_WaitSetupTime = 0xFC;
\ 00000012 C168 LDR R1,[R0, #+12]
\ 00000014 FC22 MOVS R2,#+252
\ 00000016 4A60 STR R2,[R1, #+4]
449 FSMC_PCCARDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HoldSetupTime = 0xFC;
\ 00000018 C168 LDR R1,[R0, #+12]
\ 0000001A FC22 MOVS R2,#+252
\ 0000001C 8A60 STR R2,[R1, #+8]
450 FSMC_PCCARDInitStruct->FSMC_CommonSpaceTimingStruct->FSMC_HiZSetupTime = 0xFC;
\ 0000001E C168 LDR R1,[R0, #+12]
\ 00000020 FC22 MOVS R2,#+252
\ 00000022 CA60 STR R2,[R1, #+12]
451 FSMC_PCCARDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_SetupTime = 0xFC;
\ 00000024 0169 LDR R1,[R0, #+16]
\ 00000026 FC22 MOVS R2,#+252
\ 00000028 0A60 STR R2,[R1, #+0]
452 FSMC_PCCARDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_WaitSetupTime = 0xFC;
\ 0000002A 0169 LDR R1,[R0, #+16]
\ 0000002C FC22 MOVS R2,#+252
\ 0000002E 4A60 STR R2,[R1, #+4]
453 FSMC_PCCARDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HoldSetupTime = 0xFC;
\ 00000030 0169 LDR R1,[R0, #+16]
\ 00000032 FC22 MOVS R2,#+252
\ 00000034 8A60 STR R2,[R1, #+8]
454 FSMC_PCCARDInitStruct->FSMC_AttributeSpaceTimingStruct->FSMC_HiZSetupTime = 0xFC;
\ 00000036 0169 LDR R1,[R0, #+16]
\ 00000038 FC22 MOVS R2,#+252
\ 0000003A CA60 STR R2,[R1, #+12]
455 FSMC_PCCARDInitStruct->FSMC_IOSpaceTimingStruct->FSMC_SetupTime = 0xFC;
\ 0000003C 4169 LDR R1,[R0, #+20]
\ 0000003E FC22 MOVS R2,#+252
\ 00000040 0A60 STR R2,[R1, #+0]
456 FSMC_PCCARDInitStruct->FSMC_IOSpaceTimingStruct->FSMC_WaitSetupTime = 0xFC;
\ 00000042 4169 LDR R1,[R0, #+20]
\ 00000044 FC22 MOVS R2,#+252
\ 00000046 4A60 STR R2,[R1, #+4]
457 FSMC_PCCARDInitStruct->FSMC_IOSpaceTimingStruct->FSMC_HoldSetupTime = 0xFC;
\ 00000048 4169 LDR R1,[R0, #+20]
\ 0000004A FC22 MOVS R2,#+252
\ 0000004C 8A60 STR R2,[R1, #+8]
458 FSMC_PCCARDInitStruct->FSMC_IOSpaceTimingStruct->FSMC_HiZSetupTime = 0xFC;
\ 0000004E 4169 LDR R1,[R0, #+20]
\ 00000050 FC22 MOVS R2,#+252
\ 00000052 CA60 STR R2,[R1, #+12]
459 }
\ 00000054 7047 BX LR ;; return
460
461 /**
462 * @brief Enables or disables the specified NOR/SRAM Memory Bank.
463 * @param FSMC_Bank: specifies the FSMC Bank to be used
464 * This parameter can be one of the following values:
465 * @arg FSMC_Bank1_NORSRAM1: FSMC Bank1 NOR/SRAM1
466 * @arg FSMC_Bank1_NORSRAM2: FSMC Bank1 NOR/SRAM2
467 * @arg FSMC_Bank1_NORSRAM3: FSMC Bank1 NOR/SRAM3
468 * @arg FSMC_Bank1_NORSRAM4: FSMC Bank1 NOR/SRAM4
469 * @param NewState: new state of the FSMC_Bank. This parameter can be: ENABLE or DISABLE.
470 * @retval None
471 */
\ In section .text, align 2, keep-with-next
472 void FSMC_NORSRAMCmd(uint32_t FSMC_Bank, FunctionalState NewState)
473 {
474 assert_param(IS_FSMC_NORSRAM_BANK(FSMC_Bank));
475 assert_param(IS_FUNCTIONAL_STATE(NewState));
476
477 if (NewState != DISABLE)
\ FSMC_NORSRAMCmd:
\ 00000000 C9B2 UXTB R1,R1 ;; ZeroExt R1,R1,#+24,#+24
\ 00000002 0029 CMP R1,#+0
\ 00000004 0AD0 BEQ.N ??FSMC_NORSRAMCmd_0
478 {
479 /* Enable the selected NOR/SRAM Bank by setting the PBKEN bit in the BCRx register */
480 FSMC_Bank1->BTCR[FSMC_Bank] |= BCR_MBKEN_Set;
\ 00000006 8200 LSLS R2,R0,#+2
\ 00000008 B2F1C042 SUBS R2,R2,#+1610612736
\ 0000000C 1268 LDR R2,[R2, #+0]
\ 0000000E 52F00102 ORRS R2,R2,#0x1
\ 00000012 8300 LSLS R3,R0,#+2
\ 00000014 B3F1C043 SUBS R3,R3,#+1610612736
\ 00000018 1A60 STR R2,[R3, #+0]
\ 0000001A 09E0 B.N ??FSMC_NORSRAMCmd_1
481 }
482 else
483 {
484 /* Disable the selected NOR/SRAM Bank by clearing the PBKEN bit in the BCRx register */
485 FSMC_Bank1->BTCR[FSMC_Bank] &= BCR_MBKEN_Reset;
\ ??FSMC_NORSRAMCmd_0:
\ 0000001C 8200 LSLS R2,R0,#+2
\ 0000001E B2F1C042 SUBS R2,R2,#+1610612736
\ 00000022 1268 LDR R2,[R2, #+0]
\ 00000024 .... LDR.N R3,??DataTable15_14 ;; 0xffffe
\ 00000026 1A40 ANDS R2,R3,R2
\ 00000028 8300 LSLS R3,R0,#+2
\ 0000002A B3F1C043 SUBS R3,R3,#+1610612736
\ 0000002E 1A60 STR R2,[R3, #+0]
486 }
487 }
\ ??FSMC_NORSRAMCmd_1:
\ 00000030 7047 BX LR ;; return
488
489 /**
490 * @brief Enables or disables the specified NAND Memory Bank.
491 * @param FSMC_Bank: specifies the FSMC Bank to be used
492 * This parameter can be one of the following values:
493 * @arg FSMC_Bank2_NAND: FSMC Bank2 NAND
494 * @arg FSMC_Bank3_NAND: FSMC Bank3 NAND
495 * @param NewState: new state of the FSMC_Bank. This parameter can be: ENABLE or DISABLE.
496 * @retval None
497 */
\ In section .text, align 2, keep-with-next
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -