30 #ifndef __STM32F37X_SYSCFG_H
31 #define __STM32F37X_SYSCFG_H
38 #include "stm32f37x.h"
58 #define EXTI_PortSourceGPIOA ((uint8_t)0x00)
59 #define EXTI_PortSourceGPIOB ((uint8_t)0x01)
60 #define EXTI_PortSourceGPIOC ((uint8_t)0x02)
61 #define EXTI_PortSourceGPIOD ((uint8_t)0x03)
62 #define EXTI_PortSourceGPIOE ((uint8_t)0x04)
63 #define EXTI_PortSourceGPIOF ((uint8_t)0x05)
65 #define IS_EXTI_PORT_SOURCE(PORTSOURCE) (((PORTSOURCE) == EXTI_PortSourceGPIOA) || \
66 ((PORTSOURCE) == EXTI_PortSourceGPIOB) || \
67 ((PORTSOURCE) == EXTI_PortSourceGPIOC) || \
68 ((PORTSOURCE) == EXTI_PortSourceGPIOD) || \
69 ((PORTSOURCE) == EXTI_PortSourceGPIOE) || \
70 ((PORTSOURCE) == EXTI_PortSourceGPIOF))
78 #define EXTI_PinSource0 ((uint8_t)0x00)
79 #define EXTI_PinSource1 ((uint8_t)0x01)
80 #define EXTI_PinSource2 ((uint8_t)0x02)
81 #define EXTI_PinSource3 ((uint8_t)0x03)
82 #define EXTI_PinSource4 ((uint8_t)0x04)
83 #define EXTI_PinSource5 ((uint8_t)0x05)
84 #define EXTI_PinSource6 ((uint8_t)0x06)
85 #define EXTI_PinSource7 ((uint8_t)0x07)
86 #define EXTI_PinSource8 ((uint8_t)0x08)
87 #define EXTI_PinSource9 ((uint8_t)0x09)
88 #define EXTI_PinSource10 ((uint8_t)0x0A)
89 #define EXTI_PinSource11 ((uint8_t)0x0B)
90 #define EXTI_PinSource12 ((uint8_t)0x0C)
91 #define EXTI_PinSource13 ((uint8_t)0x0D)
92 #define EXTI_PinSource14 ((uint8_t)0x0E)
93 #define EXTI_PinSource15 ((uint8_t)0x0F)
95 #define IS_EXTI_PIN_SOURCE(PINSOURCE) (((PINSOURCE) == EXTI_PinSource0) || \
96 ((PINSOURCE) == EXTI_PinSource1) || \
97 ((PINSOURCE) == EXTI_PinSource2) || \
98 ((PINSOURCE) == EXTI_PinSource3) || \
99 ((PINSOURCE) == EXTI_PinSource4) || \
100 ((PINSOURCE) == EXTI_PinSource5) || \
101 ((PINSOURCE) == EXTI_PinSource6) || \
102 ((PINSOURCE) == EXTI_PinSource7) || \
103 ((PINSOURCE) == EXTI_PinSource8) || \
104 ((PINSOURCE) == EXTI_PinSource9) || \
105 ((PINSOURCE) == EXTI_PinSource10) || \
106 ((PINSOURCE) == EXTI_PinSource11) || \
107 ((PINSOURCE) == EXTI_PinSource12) || \
108 ((PINSOURCE) == EXTI_PinSource13) || \
109 ((PINSOURCE) == EXTI_PinSource14) || \
110 ((PINSOURCE) == EXTI_PinSource15))
118 #define SYSCFG_MemoryRemap_Flash ((uint8_t)0x00)
119 #define SYSCFG_MemoryRemap_SystemMemory ((uint8_t)0x01)
120 #define SYSCFG_MemoryRemap_SRAM ((uint8_t)0x03)
123 #define IS_SYSCFG_MEMORY_REMAP(REMAP) (((REMAP) == SYSCFG_MemoryRemap_Flash) || \
124 ((REMAP) == SYSCFG_MemoryRemap_SystemMemory) || \
125 ((REMAP) == SYSCFG_MemoryRemap_SRAM))
134 #define SYSCFG_DMARemap_TIM17 SYSCFG_CFGR1_TIM17_DMA_RMP
135 #define SYSCFG_DMARemap_TIM16 SYSCFG_CFGR1_TIM16_DMA_RMP
136 #define SYSCFG_DMARemap_TIM6DAC1Ch1 SYSCFG_CFGR1_TIM6DAC1Ch1_DMA_RMP
137 #define SYSCFG_DMARemap_TIM7DAC1Ch2 SYSCFG_CFGR1_TIM7DAC1Ch2_DMA_RMP
138 #define SYSCFG_DMARemap_TIM18DAC2Ch1 SYSCFG_CFGR1_TIM18DAC2Ch1_DMA_RMP
140 #define IS_SYSCFG_DMA_REMAP(REMAP) (((REMAP) == SYSCFG_DMARemap_TIM17) || \
141 ((REMAP) == SYSCFG_DMARemap_TIM16) || \
142 ((REMAP) == SYSCFG_DMARemap_TIM6DAC1Ch1) || \
143 ((REMAP) == SYSCFG_DMARemap_TIM7DAC1Ch2) || \
144 ((REMAP) == SYSCFG_DMARemap_TIM18DAC2Ch1))
153 #define SYSCFG_I2CFastModePlus_PB6 SYSCFG_CFGR1_I2C_FMP_PB6
154 #define SYSCFG_I2CFastModePlus_PB7 SYSCFG_CFGR1_I2C_FMP_PB7
155 #define SYSCFG_I2CFastModePlus_PB8 SYSCFG_CFGR1_I2C_FMP_PB8
156 #define SYSCFG_I2CFastModePlus_PB9 SYSCFG_CFGR1_I2C_FMP_PB9
157 #define SYSCFG_I2CFastModePlus_I2C1 SYSCFG_CFGR1_I2C_FMP_I2C1
158 #define SYSCFG_I2CFastModePlus_I2C2 SYSCFG_CFGR1_I2C_FMP_I2C2
160 #define IS_SYSCFG_I2C_FMP(PIN) (((PIN) == SYSCFG_I2CFastModePlus_PB6) || \
161 ((PIN) == SYSCFG_I2CFastModePlus_PB7) || \
162 ((PIN) == SYSCFG_I2CFastModePlus_PB8) || \
163 ((PIN) == SYSCFG_I2CFastModePlus_PB9) || \
164 ((PIN) == SYSCFG_I2CFastModePlus_I2C1) || \
165 ((PIN) == SYSCFG_I2CFastModePlus_I2C2))
174 #define SYSCFG_IT_IXC SYSCFG_CFGR1_FPU_IE_5
175 #define SYSCFG_IT_IDC SYSCFG_CFGR1_FPU_IE_4
176 #define SYSCFG_IT_OFC SYSCFG_CFGR1_FPU_IE_3
177 #define SYSCFG_IT_UFC SYSCFG_CFGR1_FPU_IE_2
178 #define SYSCFG_IT_DZC SYSCFG_CFGR1_FPU_IE_1
179 #define SYSCFG_IT_IOC SYSCFG_CFGR1_FPU_IE_0
181 #define IS_SYSCFG_IT(IT) ((((IT) & (uint32_t)0x03FFFFFF) == 0) && ((IT) != 0))
190 #define SYSCFG_Break_PVD SYSCFG_CFGR2_PVD_LOCK
191 #define SYSCFG_Break_SRAMParity SYSCFG_CFGR2_SRAM_PARITY_LOCK
192 #define SYSCFG_Break_Lockup SYSCFG_CFGR2_LOCKUP_LOCK
194 #define IS_SYSCFG_LOCK_CONFIG(CONFIG) (((CONFIG) == SYSCFG_Break_PVD) || \
195 ((CONFIG) == SYSCFG_Break_SRAMParity) || \
196 ((CONFIG) == SYSCFG_Break_Lockup))
206 #define SYSCFG_FLAG_PE SYSCFG_CFGR2_SRAM_PE
208 #define IS_SYSCFG_FLAG(FLAG) (((FLAG) == SYSCFG_FLAG_PE))