Go to the documentation of this file.
21 #ifndef __STM32F7xx_LL_FMC_H
22 #define __STM32F7xx_LL_FMC_H
42 #define IS_FMC_NORSRAM_BANK(BANK) (((BANK) == FMC_NORSRAM_BANK1) || \
43 ((BANK) == FMC_NORSRAM_BANK2) || \
44 ((BANK) == FMC_NORSRAM_BANK3) || \
45 ((BANK) == FMC_NORSRAM_BANK4))
47 #define IS_FMC_MUX(__MUX__) (((__MUX__) == FMC_DATA_ADDRESS_MUX_DISABLE) || \
48 ((__MUX__) == FMC_DATA_ADDRESS_MUX_ENABLE))
50 #define IS_FMC_MEMORY(__MEMORY__) (((__MEMORY__) == FMC_MEMORY_TYPE_SRAM) || \
51 ((__MEMORY__) == FMC_MEMORY_TYPE_PSRAM)|| \
52 ((__MEMORY__) == FMC_MEMORY_TYPE_NOR))
54 #define IS_FMC_NORSRAM_MEMORY_WIDTH(__WIDTH__) (((__WIDTH__) == FMC_NORSRAM_MEM_BUS_WIDTH_8) || \
55 ((__WIDTH__) == FMC_NORSRAM_MEM_BUS_WIDTH_16) || \
56 ((__WIDTH__) == FMC_NORSRAM_MEM_BUS_WIDTH_32))
58 #define IS_FMC_ACCESS_MODE(__MODE__) (((__MODE__) == FMC_ACCESS_MODE_A) || \
59 ((__MODE__) == FMC_ACCESS_MODE_B) || \
60 ((__MODE__) == FMC_ACCESS_MODE_C) || \
61 ((__MODE__) == FMC_ACCESS_MODE_D))
63 #define IS_FMC_NAND_BANK(BANK) ((BANK) == FMC_NAND_BANK3)
65 #define IS_FMC_WAIT_FEATURE(FEATURE) (((FEATURE) == FMC_NAND_WAIT_FEATURE_DISABLE) || \
66 ((FEATURE) == FMC_NAND_WAIT_FEATURE_ENABLE))
68 #define IS_FMC_NAND_MEMORY_WIDTH(WIDTH) (((WIDTH) == FMC_NAND_MEM_BUS_WIDTH_8) || \
69 ((WIDTH) == FMC_NAND_MEM_BUS_WIDTH_16))
71 #define IS_FMC_ECC_STATE(STATE) (((STATE) == FMC_NAND_ECC_DISABLE) || \
72 ((STATE) == FMC_NAND_ECC_ENABLE))
74 #define IS_FMC_ECCPAGE_SIZE(SIZE) (((SIZE) == FMC_NAND_ECC_PAGE_SIZE_256BYTE) || \
75 ((SIZE) == FMC_NAND_ECC_PAGE_SIZE_512BYTE) || \
76 ((SIZE) == FMC_NAND_ECC_PAGE_SIZE_1024BYTE) || \
77 ((SIZE) == FMC_NAND_ECC_PAGE_SIZE_2048BYTE) || \
78 ((SIZE) == FMC_NAND_ECC_PAGE_SIZE_4096BYTE) || \
79 ((SIZE) == FMC_NAND_ECC_PAGE_SIZE_8192BYTE))
81 #define IS_FMC_SDMEMORY_WIDTH(WIDTH) (((WIDTH) == FMC_SDRAM_MEM_BUS_WIDTH_8) || \
82 ((WIDTH) == FMC_SDRAM_MEM_BUS_WIDTH_16) || \
83 ((WIDTH) == FMC_SDRAM_MEM_BUS_WIDTH_32))
85 #define IS_FMC_WRITE_PROTECTION(__WRITE__) (((__WRITE__) == FMC_SDRAM_WRITE_PROTECTION_DISABLE) || \
86 ((__WRITE__) == FMC_SDRAM_WRITE_PROTECTION_ENABLE))
88 #define IS_FMC_SDCLOCK_PERIOD(__PERIOD__) (((__PERIOD__) == FMC_SDRAM_CLOCK_DISABLE) || \
89 ((__PERIOD__) == FMC_SDRAM_CLOCK_PERIOD_2) || \
90 ((__PERIOD__) == FMC_SDRAM_CLOCK_PERIOD_3))
92 #define IS_FMC_READ_BURST(__RBURST__) (((__RBURST__) == FMC_SDRAM_RBURST_DISABLE) || \
93 ((__RBURST__) == FMC_SDRAM_RBURST_ENABLE))
95 #define IS_FMC_READPIPE_DELAY(__DELAY__) (((__DELAY__) == FMC_SDRAM_RPIPE_DELAY_0) || \
96 ((__DELAY__) == FMC_SDRAM_RPIPE_DELAY_1) || \
97 ((__DELAY__) == FMC_SDRAM_RPIPE_DELAY_2))
99 #define IS_FMC_COMMAND_MODE(__COMMAND__) (((__COMMAND__) == FMC_SDRAM_CMD_NORMAL_MODE) || \
100 ((__COMMAND__) == FMC_SDRAM_CMD_CLK_ENABLE) || \
101 ((__COMMAND__) == FMC_SDRAM_CMD_PALL) || \
102 ((__COMMAND__) == FMC_SDRAM_CMD_AUTOREFRESH_MODE) || \
103 ((__COMMAND__) == FMC_SDRAM_CMD_LOAD_MODE) || \
104 ((__COMMAND__) == FMC_SDRAM_CMD_SELFREFRESH_MODE) || \
105 ((__COMMAND__) == FMC_SDRAM_CMD_POWERDOWN_MODE))
107 #define IS_FMC_COMMAND_TARGET(__TARGET__) (((__TARGET__) == FMC_SDRAM_CMD_TARGET_BANK1) || \
108 ((__TARGET__) == FMC_SDRAM_CMD_TARGET_BANK2) || \
109 ((__TARGET__) == FMC_SDRAM_CMD_TARGET_BANK1_2))
114 #define IS_FMC_TCLR_TIME(__TIME__) ((__TIME__) <= 255)
122 #define IS_FMC_TAR_TIME(TIME) ((TIME) <= 255)
130 #define IS_FMC_SETUP_TIME(TIME) ((TIME) <= 254)
138 #define IS_FMC_WAIT_TIME(TIME) ((TIME) <= 254)
146 #define IS_FMC_HOLD_TIME(TIME) ((TIME) <= 254)
154 #define IS_FMC_HIZ_TIME(TIME) ((TIME) <= 254)
159 #define IS_FMC_BURSTMODE(__STATE__) (((__STATE__) == FMC_BURST_ACCESS_MODE_DISABLE) || \
160 ((__STATE__) == FMC_BURST_ACCESS_MODE_ENABLE))
162 #define IS_FMC_WAIT_POLARITY(__POLARITY__) (((__POLARITY__) == FMC_WAIT_SIGNAL_POLARITY_LOW) || \
163 ((__POLARITY__) == FMC_WAIT_SIGNAL_POLARITY_HIGH))
165 #define IS_FMC_WAIT_SIGNAL_ACTIVE(__ACTIVE__) (((__ACTIVE__) == FMC_WAIT_TIMING_BEFORE_WS) || \
166 ((__ACTIVE__) == FMC_WAIT_TIMING_DURING_WS))
168 #define IS_FMC_WRITE_OPERATION(__OPERATION__) (((__OPERATION__) == FMC_WRITE_OPERATION_DISABLE) || \
169 ((__OPERATION__) == FMC_WRITE_OPERATION_ENABLE))
171 #define IS_FMC_WAITE_SIGNAL(__SIGNAL__) (((__SIGNAL__) == FMC_WAIT_SIGNAL_DISABLE) || \
172 ((__SIGNAL__) == FMC_WAIT_SIGNAL_ENABLE))
174 #define IS_FMC_EXTENDED_MODE(__MODE__) (((__MODE__) == FMC_EXTENDED_MODE_DISABLE) || \
175 ((__MODE__) == FMC_EXTENDED_MODE_ENABLE))
177 #define IS_FMC_ASYNWAIT(__STATE__) (((__STATE__) == FMC_ASYNCHRONOUS_WAIT_DISABLE) || \
178 ((__STATE__) == FMC_ASYNCHRONOUS_WAIT_ENABLE))
183 #define IS_FMC_DATA_LATENCY(__LATENCY__) (((__LATENCY__) > 1) && ((__LATENCY__) <= 17))
188 #define IS_FMC_WRITE_BURST(__BURST__) (((__BURST__) == FMC_WRITE_BURST_DISABLE) || \
189 ((__BURST__) == FMC_WRITE_BURST_ENABLE))
191 #define IS_FMC_CONTINOUS_CLOCK(CCLOCK) (((CCLOCK) == FMC_CONTINUOUS_CLOCK_SYNC_ONLY) || \
192 ((CCLOCK) == FMC_CONTINUOUS_CLOCK_SYNC_ASYNC))
198 #define IS_FMC_ADDRESS_SETUP_TIME(__TIME__) ((__TIME__) <= 15)
206 #define IS_FMC_ADDRESS_HOLD_TIME(__TIME__) (((__TIME__) > 0) && ((__TIME__) <= 15))
214 #define IS_FMC_DATASETUP_TIME(__TIME__) (((__TIME__) > 0) && ((__TIME__) <= 255))
222 #define IS_FMC_TURNAROUND_TIME(__TIME__) ((__TIME__) <= 15)
230 #define IS_FMC_CLK_DIV(DIV) (((DIV) > 1) && ((DIV) <= 16))
238 #define IS_FMC_LOADTOACTIVE_DELAY(__DELAY__) (((__DELAY__) > 0) && ((__DELAY__) <= 16))
246 #define IS_FMC_EXITSELFREFRESH_DELAY(__DELAY__) (((__DELAY__) > 0) && ((__DELAY__) <= 16))
254 #define IS_FMC_SELFREFRESH_TIME(__TIME__) (((__TIME__) > 0) && ((__TIME__) <= 16))
262 #define IS_FMC_ROWCYCLE_DELAY(__DELAY__) (((__DELAY__) > 0) && ((__DELAY__) <= 16))
270 #define IS_FMC_WRITE_RECOVERY_TIME(__TIME__) (((__TIME__) > 0) && ((__TIME__) <= 16))
278 #define IS_FMC_RP_DELAY(__DELAY__) (((__DELAY__) > 0) && ((__DELAY__) <= 16))
286 #define IS_FMC_RCD_DELAY(__DELAY__) (((__DELAY__) > 0) && ((__DELAY__) <= 16))
294 #define IS_FMC_AUTOREFRESH_NUMBER(__NUMBER__) (((__NUMBER__) > 0) && ((__NUMBER__) <= 16))
302 #define IS_FMC_MODE_REGISTER(__CONTENT__) ((__CONTENT__) <= 8191)
310 #define IS_FMC_REFRESH_RATE(__RATE__) ((__RATE__) <= 8191)
318 #define IS_FMC_NORSRAM_DEVICE(__INSTANCE__) ((__INSTANCE__) == FMC_NORSRAM_DEVICE)
326 #define IS_FMC_NORSRAM_EXTENDED_DEVICE(__INSTANCE__) ((__INSTANCE__) == FMC_NORSRAM_EXTENDED_DEVICE)
334 #define IS_FMC_NAND_DEVICE(__INSTANCE__) ((__INSTANCE__) == FMC_NAND_DEVICE)
342 #define IS_FMC_SDRAM_DEVICE(__INSTANCE__) ((__INSTANCE__) == FMC_SDRAM_DEVICE)
347 #define IS_FMC_SDRAM_BANK(BANK) (((BANK) == FMC_SDRAM_BANK1) || \
348 ((BANK) == FMC_SDRAM_BANK2))
350 #define IS_FMC_COLUMNBITS_NUMBER(COLUMN) (((COLUMN) == FMC_SDRAM_COLUMN_BITS_NUM_8) || \
351 ((COLUMN) == FMC_SDRAM_COLUMN_BITS_NUM_9) || \
352 ((COLUMN) == FMC_SDRAM_COLUMN_BITS_NUM_10) || \
353 ((COLUMN) == FMC_SDRAM_COLUMN_BITS_NUM_11))
355 #define IS_FMC_ROWBITS_NUMBER(ROW) (((ROW) == FMC_SDRAM_ROW_BITS_NUM_11) || \
356 ((ROW) == FMC_SDRAM_ROW_BITS_NUM_12) || \
357 ((ROW) == FMC_SDRAM_ROW_BITS_NUM_13))
359 #define IS_FMC_INTERNALBANK_NUMBER(NUMBER) (((NUMBER) == FMC_SDRAM_INTERN_BANKS_NUM_2) || \
360 ((NUMBER) == FMC_SDRAM_INTERN_BANKS_NUM_4))
363 #define IS_FMC_CAS_LATENCY(LATENCY) (((LATENCY) == FMC_SDRAM_CAS_LATENCY_1) || \
364 ((LATENCY) == FMC_SDRAM_CAS_LATENCY_2) || \
365 ((LATENCY) == FMC_SDRAM_CAS_LATENCY_3))
367 #define IS_FMC_PAGESIZE(__SIZE__) (((__SIZE__) == FMC_PAGE_SIZE_NONE) || \
368 ((__SIZE__) == FMC_PAGE_SIZE_128) || \
369 ((__SIZE__) == FMC_PAGE_SIZE_256) || \
370 ((__SIZE__) == FMC_PAGE_SIZE_512) || \
371 ((__SIZE__) == FMC_PAGE_SIZE_1024))
373 #define IS_FMC_WRITE_FIFO(__FIFO__) (((__FIFO__) == FMC_WRITE_FIFO_DISABLE) || \
374 ((__FIFO__) == FMC_WRITE_FIFO_ENABLE))
383 #define FMC_NORSRAM_TypeDef FMC_Bank1_TypeDef
384 #define FMC_NORSRAM_EXTENDED_TypeDef FMC_Bank1E_TypeDef
385 #define FMC_NAND_TypeDef FMC_Bank3_TypeDef
386 #define FMC_SDRAM_TypeDef FMC_Bank5_6_TypeDef
388 #define FMC_NORSRAM_DEVICE FMC_Bank1
389 #define FMC_NORSRAM_EXTENDED_DEVICE FMC_Bank1E
390 #define FMC_NAND_DEVICE FMC_Bank3
391 #define FMC_SDRAM_DEVICE FMC_Bank5_6
664 #define FMC_NORSRAM_BANK1 ((uint32_t)0x00000000U)
665 #define FMC_NORSRAM_BANK2 ((uint32_t)0x00000002U)
666 #define FMC_NORSRAM_BANK3 ((uint32_t)0x00000004U)
667 #define FMC_NORSRAM_BANK4 ((uint32_t)0x00000006U)
675 #define FMC_DATA_ADDRESS_MUX_DISABLE ((uint32_t)0x00000000U)
676 #define FMC_DATA_ADDRESS_MUX_ENABLE ((uint32_t)0x00000002U)
684 #define FMC_MEMORY_TYPE_SRAM ((uint32_t)0x00000000U)
685 #define FMC_MEMORY_TYPE_PSRAM ((uint32_t)0x00000004U)
686 #define FMC_MEMORY_TYPE_NOR ((uint32_t)0x00000008U)
694 #define FMC_NORSRAM_MEM_BUS_WIDTH_8 ((uint32_t)0x00000000U)
695 #define FMC_NORSRAM_MEM_BUS_WIDTH_16 ((uint32_t)0x00000010U)
696 #define FMC_NORSRAM_MEM_BUS_WIDTH_32 ((uint32_t)0x00000020U)
704 #define FMC_NORSRAM_FLASH_ACCESS_ENABLE ((uint32_t)0x00000040U)
705 #define FMC_NORSRAM_FLASH_ACCESS_DISABLE ((uint32_t)0x00000000U)
713 #define FMC_BURST_ACCESS_MODE_DISABLE ((uint32_t)0x00000000U)
714 #define FMC_BURST_ACCESS_MODE_ENABLE ((uint32_t)0x00000100U)
722 #define FMC_WAIT_SIGNAL_POLARITY_LOW ((uint32_t)0x00000000U)
723 #define FMC_WAIT_SIGNAL_POLARITY_HIGH ((uint32_t)0x00000200U)
731 #define FMC_WAIT_TIMING_BEFORE_WS ((uint32_t)0x00000000U)
732 #define FMC_WAIT_TIMING_DURING_WS ((uint32_t)0x00000800U)
740 #define FMC_WRITE_OPERATION_DISABLE ((uint32_t)0x00000000U)
741 #define FMC_WRITE_OPERATION_ENABLE ((uint32_t)0x00001000U)
749 #define FMC_WAIT_SIGNAL_DISABLE ((uint32_t)0x00000000U)
750 #define FMC_WAIT_SIGNAL_ENABLE ((uint32_t)0x00002000U)
758 #define FMC_EXTENDED_MODE_DISABLE ((uint32_t)0x00000000U)
759 #define FMC_EXTENDED_MODE_ENABLE ((uint32_t)0x00004000U)
767 #define FMC_ASYNCHRONOUS_WAIT_DISABLE ((uint32_t)0x00000000U)
768 #define FMC_ASYNCHRONOUS_WAIT_ENABLE ((uint32_t)0x00008000U)
776 #define FMC_PAGE_SIZE_NONE ((uint32_t)0x00000000U)
777 #define FMC_PAGE_SIZE_128 ((uint32_t)FMC_BCR1_CPSIZE_0)
778 #define FMC_PAGE_SIZE_256 ((uint32_t)FMC_BCR1_CPSIZE_1)
779 #define FMC_PAGE_SIZE_512 ((uint32_t)(FMC_BCR1_CPSIZE_0 | FMC_BCR1_CPSIZE_1))
780 #define FMC_PAGE_SIZE_1024 ((uint32_t)FMC_BCR1_CPSIZE_2)
788 #define FMC_WRITE_BURST_DISABLE ((uint32_t)0x00000000U)
789 #define FMC_WRITE_BURST_ENABLE ((uint32_t)0x00080000U)
797 #define FMC_CONTINUOUS_CLOCK_SYNC_ONLY ((uint32_t)0x00000000U)
798 #define FMC_CONTINUOUS_CLOCK_SYNC_ASYNC ((uint32_t)0x00100000U)
806 #define FMC_WRITE_FIFO_DISABLE ((uint32_t)FMC_BCR1_WFDIS)
807 #define FMC_WRITE_FIFO_ENABLE ((uint32_t)0x00000000U)
815 #define FMC_ACCESS_MODE_A ((uint32_t)0x00000000U)
816 #define FMC_ACCESS_MODE_B ((uint32_t)0x10000000U)
817 #define FMC_ACCESS_MODE_C ((uint32_t)0x20000000U)
818 #define FMC_ACCESS_MODE_D ((uint32_t)0x30000000)
833 #define FMC_NAND_BANK3 ((uint32_t)0x00000100U)
841 #define FMC_NAND_WAIT_FEATURE_DISABLE ((uint32_t)0x00000000U)
842 #define FMC_NAND_WAIT_FEATURE_ENABLE ((uint32_t)0x00000002U)
850 #define FMC_PCR_MEMORY_TYPE_NAND ((uint32_t)0x00000008U)
858 #define FMC_NAND_MEM_BUS_WIDTH_8 ((uint32_t)0x00000000U)
859 #define FMC_NAND_MEM_BUS_WIDTH_16 ((uint32_t)0x00000010U)
867 #define FMC_NAND_ECC_DISABLE ((uint32_t)0x00000000U)
868 #define FMC_NAND_ECC_ENABLE ((uint32_t)0x00000040U)
876 #define FMC_NAND_ECC_PAGE_SIZE_256BYTE ((uint32_t)0x00000000U)
877 #define FMC_NAND_ECC_PAGE_SIZE_512BYTE ((uint32_t)0x00020000U)
878 #define FMC_NAND_ECC_PAGE_SIZE_1024BYTE ((uint32_t)0x00040000U)
879 #define FMC_NAND_ECC_PAGE_SIZE_2048BYTE ((uint32_t)0x00060000U)
880 #define FMC_NAND_ECC_PAGE_SIZE_4096BYTE ((uint32_t)0x00080000U)
881 #define FMC_NAND_ECC_PAGE_SIZE_8192BYTE ((uint32_t)0x000A0000U)
896 #define FMC_SDRAM_BANK1 ((uint32_t)0x00000000U)
897 #define FMC_SDRAM_BANK2 ((uint32_t)0x00000001U)
905 #define FMC_SDRAM_COLUMN_BITS_NUM_8 ((uint32_t)0x00000000U)
906 #define FMC_SDRAM_COLUMN_BITS_NUM_9 ((uint32_t)0x00000001U)
907 #define FMC_SDRAM_COLUMN_BITS_NUM_10 ((uint32_t)0x00000002U)
908 #define FMC_SDRAM_COLUMN_BITS_NUM_11 ((uint32_t)0x00000003U)
916 #define FMC_SDRAM_ROW_BITS_NUM_11 ((uint32_t)0x00000000U)
917 #define FMC_SDRAM_ROW_BITS_NUM_12 ((uint32_t)0x00000004U)
918 #define FMC_SDRAM_ROW_BITS_NUM_13 ((uint32_t)0x00000008U)
926 #define FMC_SDRAM_MEM_BUS_WIDTH_8 ((uint32_t)0x00000000U)
927 #define FMC_SDRAM_MEM_BUS_WIDTH_16 ((uint32_t)0x00000010U)
928 #define FMC_SDRAM_MEM_BUS_WIDTH_32 ((uint32_t)0x00000020U)
936 #define FMC_SDRAM_INTERN_BANKS_NUM_2 ((uint32_t)0x00000000U)
937 #define FMC_SDRAM_INTERN_BANKS_NUM_4 ((uint32_t)0x00000040U)
945 #define FMC_SDRAM_CAS_LATENCY_1 ((uint32_t)0x00000080U)
946 #define FMC_SDRAM_CAS_LATENCY_2 ((uint32_t)0x00000100U)
947 #define FMC_SDRAM_CAS_LATENCY_3 ((uint32_t)0x00000180)
955 #define FMC_SDRAM_WRITE_PROTECTION_DISABLE ((uint32_t)0x00000000U)
956 #define FMC_SDRAM_WRITE_PROTECTION_ENABLE ((uint32_t)0x00000200U)
964 #define FMC_SDRAM_CLOCK_DISABLE ((uint32_t)0x00000000U)
965 #define FMC_SDRAM_CLOCK_PERIOD_2 ((uint32_t)0x00000800U)
966 #define FMC_SDRAM_CLOCK_PERIOD_3 ((uint32_t)0x00000C00)
974 #define FMC_SDRAM_RBURST_DISABLE ((uint32_t)0x00000000U)
975 #define FMC_SDRAM_RBURST_ENABLE ((uint32_t)0x00001000U)
983 #define FMC_SDRAM_RPIPE_DELAY_0 ((uint32_t)0x00000000U)
984 #define FMC_SDRAM_RPIPE_DELAY_1 ((uint32_t)0x00002000U)
985 #define FMC_SDRAM_RPIPE_DELAY_2 ((uint32_t)0x00004000U)
993 #define FMC_SDRAM_CMD_NORMAL_MODE ((uint32_t)0x00000000U)
994 #define FMC_SDRAM_CMD_CLK_ENABLE ((uint32_t)0x00000001U)
995 #define FMC_SDRAM_CMD_PALL ((uint32_t)0x00000002U)
996 #define FMC_SDRAM_CMD_AUTOREFRESH_MODE ((uint32_t)0x00000003U)
997 #define FMC_SDRAM_CMD_LOAD_MODE ((uint32_t)0x00000004U)
998 #define FMC_SDRAM_CMD_SELFREFRESH_MODE ((uint32_t)0x00000005U)
999 #define FMC_SDRAM_CMD_POWERDOWN_MODE ((uint32_t)0x00000006U)
1007 #define FMC_SDRAM_CMD_TARGET_BANK2 FMC_SDCMR_CTB2
1008 #define FMC_SDRAM_CMD_TARGET_BANK1 FMC_SDCMR_CTB1
1009 #define FMC_SDRAM_CMD_TARGET_BANK1_2 ((uint32_t)0x00000018U)
1017 #define FMC_SDRAM_NORMAL_MODE ((uint32_t)0x00000000U)
1018 #define FMC_SDRAM_SELF_REFRESH_MODE FMC_SDSR_MODES1_0
1019 #define FMC_SDRAM_POWER_DOWN_MODE FMC_SDSR_MODES1_1
1031 #define FMC_IT_RISING_EDGE ((uint32_t)0x00000008U)
1032 #define FMC_IT_LEVEL ((uint32_t)0x00000010U)
1033 #define FMC_IT_FALLING_EDGE ((uint32_t)0x00000020U)
1034 #define FMC_IT_REFRESH_ERROR ((uint32_t)0x00004000U)
1042 #define FMC_FLAG_RISING_EDGE ((uint32_t)0x00000001U)
1043 #define FMC_FLAG_LEVEL ((uint32_t)0x00000002U)
1044 #define FMC_FLAG_FALLING_EDGE ((uint32_t)0x00000004U)
1045 #define FMC_FLAG_FEMPT ((uint32_t)0x00000040U)
1046 #define FMC_SDRAM_FLAG_REFRESH_IT FMC_SDSR_RE
1047 #define FMC_SDRAM_FLAG_BUSY FMC_SDSR_BUSY
1048 #define FMC_SDRAM_FLAG_REFRESH_ERROR FMC_SDRTR_CRE
1076 #define __FMC_NORSRAM_ENABLE(__INSTANCE__, __BANK__) ((__INSTANCE__)->BTCR[(__BANK__)] |= FMC_BCR1_MBKEN)
1084 #define __FMC_NORSRAM_DISABLE(__INSTANCE__, __BANK__) ((__INSTANCE__)->BTCR[(__BANK__)] &= ~FMC_BCR1_MBKEN)
1100 #define __FMC_NAND_ENABLE(__INSTANCE__) ((__INSTANCE__)->PCR |= FMC_PCR_PBKEN)
1107 #define __FMC_NAND_DISABLE(__INSTANCE__) ((__INSTANCE__)->PCR &= ~FMC_PCR_PBKEN)
1128 #define __FMC_NAND_ENABLE_IT(__INSTANCE__, __INTERRUPT__) ((__INSTANCE__)->SR |= (__INTERRUPT__))
1140 #define __FMC_NAND_DISABLE_IT(__INSTANCE__, __INTERRUPT__) ((__INSTANCE__)->SR &= ~(__INTERRUPT__))
1154 #define __FMC_NAND_GET_FLAG(__INSTANCE__, __BANK__, __FLAG__) (((__INSTANCE__)->SR &(__FLAG__)) == (__FLAG__))
1167 #define __FMC_NAND_CLEAR_FLAG(__INSTANCE__, __FLAG__) ((__INSTANCE__)->SR &= ~(__FLAG__))
1177 #define __FMC_SDRAM_ENABLE_IT(__INSTANCE__, __INTERRUPT__) ((__INSTANCE__)->SDRTR |= (__INTERRUPT__))
1187 #define __FMC_SDRAM_DISABLE_IT(__INSTANCE__, __INTERRUPT__) ((__INSTANCE__)->SDRTR &= ~(__INTERRUPT__))
1199 #define __FMC_SDRAM_GET_FLAG(__INSTANCE__, __FLAG__) (((__INSTANCE__)->SDSR &(__FLAG__)) == (__FLAG__))
1209 #define __FMC_SDRAM_CLEAR_FLAG(__INSTANCE__, __FLAG__) ((__INSTANCE__)->SDRTR |= (__FLAG__))
FMC SDRAM Configuration Structure definition
FMC SDRAM Timing parameters structure definition.
napi_value Init(napi_env env, napi_value exports)
HAL_StatusTypeDef
HAL Status structures definition
static FMC_SDRAM_TimingTypeDef Timing
uint32_t AsynchronousWait
uint32_t ExitSelfRefreshDelay
uint32_t AutoRefreshNumber
HAL_StatusTypeDef FMC_SDRAM_WriteProtection_Disable(FMC_SDRAM_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_SDRAM_SetAutoRefreshNumber(FMC_SDRAM_TypeDef *Device, uint32_t AutoRefreshNumber)
#define FMC_NORSRAM_TypeDef
HAL_StatusTypeDef FMC_NAND_DeInit(FMC_NAND_TypeDef *Device, uint32_t Bank)
uint32_t LoadToActiveDelay
FMC NORSRAM Timing parameters structure definition
HAL_StatusTypeDef FMC_SDRAM_Timing_Init(FMC_SDRAM_TypeDef *Device, FMC_SDRAM_TimingTypeDef *Timing, uint32_t Bank)
uint32_t FMC_SDRAM_GetModeStatus(FMC_SDRAM_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_NORSRAM_DeInit(FMC_NORSRAM_TypeDef *Device, FMC_NORSRAM_EXTENDED_TypeDef *ExDevice, uint32_t Bank)
uint32_t WriteRecoveryTime
uint32_t WaitSignalActive
HAL_StatusTypeDef FMC_NORSRAM_Extended_Timing_Init(FMC_NORSRAM_EXTENDED_TypeDef *Device, FMC_NORSRAM_TimingTypeDef *Timing, uint32_t Bank, uint32_t ExtendedMode)
HAL_StatusTypeDef FMC_NAND_AttributeSpace_Timing_Init(FMC_NAND_TypeDef *Device, FMC_NAND_PCC_TimingTypeDef *Timing, uint32_t Bank)
#define FMC_SDRAM_TypeDef
FMC NAND Timing parameters structure definition.
HAL_StatusTypeDef FMC_NORSRAM_Init(FMC_NORSRAM_TypeDef *Device, FMC_NORSRAM_InitTypeDef *Init)
static FMC_SDRAM_CommandTypeDef Command
uint32_t WaitSignalPolarity
HAL_StatusTypeDef FMC_SDRAM_DeInit(FMC_SDRAM_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_NAND_ECC_Disable(FMC_NAND_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_SDRAM_Init(FMC_SDRAM_TypeDef *Device, FMC_SDRAM_InitTypeDef *Init)
HAL_StatusTypeDef FMC_NAND_GetECC(FMC_NAND_TypeDef *Device, uint32_t *ECCval, uint32_t Bank, uint32_t Timeout)
HAL_StatusTypeDef FMC_NORSRAM_WriteOperation_Disable(FMC_NORSRAM_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_SDRAM_ProgramRefreshRate(FMC_SDRAM_TypeDef *Device, uint32_t RefreshRate)
HAL_StatusTypeDef FMC_NAND_Init(FMC_NAND_TypeDef *Device, FMC_NAND_InitTypeDef *Init)
This file contains HAL common defines, enumeration, macros and structures definitions.
FMC NORSRAM Configuration Structure definition.
HAL_StatusTypeDef FMC_NORSRAM_Timing_Init(FMC_NORSRAM_TypeDef *Device, FMC_NORSRAM_TimingTypeDef *Timing, uint32_t Bank)
#define FMC_NORSRAM_EXTENDED_TypeDef
SDRAM command parameters structure definition.
HAL_StatusTypeDef FMC_NAND_ECC_Enable(FMC_NAND_TypeDef *Device, uint32_t Bank)
uint32_t ModeRegisterDefinition
uint32_t AddressSetupTime
FMC NAND Configuration Structure definition
uint32_t ColumnBitsNumber
HAL_StatusTypeDef FMC_NORSRAM_WriteOperation_Enable(FMC_NORSRAM_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_NAND_CommonSpace_Timing_Init(FMC_NAND_TypeDef *Device, FMC_NAND_PCC_TimingTypeDef *Timing, uint32_t Bank)
uint32_t BusTurnAroundDuration
uint32_t InternalBankNumber
HAL_StatusTypeDef FMC_SDRAM_WriteProtection_Enable(FMC_SDRAM_TypeDef *Device, uint32_t Bank)
HAL_StatusTypeDef FMC_SDRAM_SendCommand(FMC_SDRAM_TypeDef *Device, FMC_SDRAM_CommandTypeDef *Command, uint32_t Timeout)