gr55xx_hal_gpio_ex.h
Go to the documentation of this file.
1
51 /* Define to prevent recursive inclusion -------------------------------------*/
52 #ifndef __GR55xx_HAL_GPIO_EX_H__
53 #define __GR55xx_HAL_GPIO_EX_H__
54
55 #ifdef __cplusplus
56 extern "C" {
57 #endif
58
59 /* Includes ------------------------------------------------------------------*/
60 #include "gr55xx_hal_def.h"
61 #include "gr55xx_ll_gpio.h"
62
63 /* Exported types ------------------------------------------------------------*/
64
70 /* Exported constants --------------------------------------------------------*/
78 #define GPIO_MUX_0 LL_GPIO_MUX_0
79 #define GPIO_MUX_1 LL_GPIO_MUX_1
80 #define GPIO_MUX_2 LL_GPIO_MUX_2
81 #define GPIO_MUX_3 LL_GPIO_MUX_3
82 #define GPIO_MUX_4 LL_GPIO_MUX_4
83 #define GPIO_MUX_5 LL_GPIO_MUX_5
84 #define GPIO_MUX_6 LL_GPIO_MUX_6
85 #define GPIO_MUX_7 LL_GPIO_MUX_7
86 #define GPIO_MUX_8 LL_GPIO_MUX_8
93 #if defined (GR551xx)
94 /*---------------------------------- GR551xx ------------------------------*/
95
99 #define GPIO_PIN_MUX_TESTBUS GPIO_MUX_8
101 #define GPIO_PIN_MUX_GPIO GPIO_MUX_7
108 #define GPIO0_PIN0_MUX_SWD_CLK GPIO_MUX_0
109 #define GPIO0_PIN0_MUX_I2C0_SCL GPIO_MUX_1
110 #define GPIO0_PIN0_MUX_I2C1_SCL GPIO_MUX_2
111 #define GPIO0_PIN0_MUX_UART1_RTS GPIO_MUX_3
112 #define GPIO0_PIN0_MUX_UART0_TX GPIO_MUX_4
113 #define GPIO0_PIN0_MUX_UART1_TX GPIO_MUX_5
114 #define GPIO0_PIN0_MUX_UART0_RTS GPIO_MUX_6
120 #define GPIO0_PIN1_MUX_SWD_IO GPIO_MUX_0
121 #define GPIO0_PIN1_MUX_I2C0_SDA GPIO_MUX_1
122 #define GPIO0_PIN1_MUX_I2C1_SDA GPIO_MUX_2
123 #define GPIO0_PIN1_MUX_UART1_CTS GPIO_MUX_3
124 #define GPIO0_PIN1_MUX_UART0_RX GPIO_MUX_4
125 #define GPIO0_PIN1_MUX_UART1_RX GPIO_MUX_5
126 #define GPIO0_PIN1_MUX_UART0_CTS GPIO_MUX_6
132 #define GPIO0_PIN2_MUX_UART0_CTS GPIO_MUX_0
133 #define GPIO0_PIN2_MUX_SIM_PRESENCE GPIO_MUX_1
134 #define GPIO0_PIN2_MUX_SWV GPIO_MUX_2
135 #define GPIO0_PIN2_MUX_SPIS_CS_N GPIO_MUX_3
136 #define GPIO0_PIN2_MUX_I2C0_SDA GPIO_MUX_4
137 #define GPIO0_PIN2_MUX_PWM0_A GPIO_MUX_5
138 #define GPIO0_PIN2_MUX_FERP_TRIG GPIO_MUX_6
144 #define GPIO0_PIN3_MUX_UART0_TX GPIO_MUX_0
145 #define GPIO0_PIN3_MUX_SIM_RST_N GPIO_MUX_1
146 #define GPIO0_PIN3_MUX_SPIM_CLK GPIO_MUX_2
147 #define GPIO0_PIN3_MUX_SPIS_CLK GPIO_MUX_3
148 #define GPIO0_PIN3_MUX_SPIM_CS1 GPIO_MUX_4
149 #define GPIO0_PIN3_MUX_PWM0_B GPIO_MUX_5
150 #define GPIO0_PIN3_MUX_COEX_BLE_TX GPIO_MUX_6
156 #define GPIO0_PIN4_MUX_UART0_RX GPIO_MUX_0
157 #define GPIO0_PIN4_MUX_SIM_IO GPIO_MUX_1
158 #define GPIO0_PIN4_MUX_SPIM_MOSI GPIO_MUX_2
159 #define GPIO0_PIN4_MUX_SPIS_MISO GPIO_MUX_3
160 #define GPIO0_PIN4_MUX_SPIM_CS0 GPIO_MUX_4
161 #define GPIO0_PIN4_MUX_PWM0_C GPIO_MUX_5
162 #define GPIO0_PIN4_MUX_COEX_BLE_RX GPIO_MUX_6
168 #define GPIO0_PIN5_MUX_UART0_RTS GPIO_MUX_0
169 #define GPIO0_PIN5_MUX_SIM_CLK GPIO_MUX_1
170 #define GPIO0_PIN5_MUX_SPIM_MISO GPIO_MUX_2
171 #define GPIO0_PIN5_MUX_SPIS_MOSI GPIO_MUX_3
172 //#define GPIO0_PIN5_MUX_SPIM_MISO GPIO_MUX_4
173 #define GPIO0_PIN5_MUX_I2C0_SCL GPIO_MUX_5
174 #define GPIO0_PIN5_MUX_COEX_WLAN_TX GPIO_MUX_6
180 #define GPIO0_PIN6_MUX_I2SM_WS GPIO_MUX_0
181 #define GPIO0_PIN6_MUX_I2SS_WS GPIO_MUX_1
182 #define GPIO0_PIN6_MUX_SPIM_CS0 GPIO_MUX_2
183 #define GPIO0_PIN6_MUX_UART1_RX GPIO_MUX_3
184 #define GPIO0_PIN6_MUX_SPIM_MOSI GPIO_MUX_4
185 #define GPIO0_PIN6_MUX_I2C0_SDA GPIO_MUX_5
186 #define GPIO0_PIN6_MUX_COEX_WLAN_RX GPIO_MUX_6
192 #define GPIO0_PIN7_MUX_I2SM_TX_SDO GPIO_MUX_0
193 #define GPIO0_PIN7_MUX_I2SS_TX_SDO GPIO_MUX_1
194 #define GPIO0_PIN7_MUX_SPIM_CS1 GPIO_MUX_2
195 #define GPIO0_PIN7_MUX_UART1_TX GPIO_MUX_3
196 #define GPIO0_PIN7_MUX_SPIM_CLK GPIO_MUX_4
197 #define GPIO0_PIN7_MUX_PWM1_A GPIO_MUX_5
198 #define GPIO0_PIN7_MUX_COEX_BLE_PROC GPIO_MUX_6
204 #define GPIO0_PIN8_MUX_XQSPIM_IO_0 GPIO_MUX_0
205 #define GPIO0_PIN8_MUX_I2C1_SDA GPIO_MUX_1
206 #define GPIO0_PIN8_MUX_QSPIM1_IO_0 GPIO_MUX_2
207 #define GPIO0_PIN8_MUX_UART1_RX GPIO_MUX_3
208 #define GPIO0_PIN8_MUX_PWM1_B GPIO_MUX_5
214 #define GPIO0_PIN9_MUX_XQSPIM_CLK GPIO_MUX_0
215 #define GPIO0_PIN9_MUX_I2C1_SCL GPIO_MUX_1
216 #define GPIO0_PIN9_MUX_QSPIM1_CLK GPIO_MUX_2
217 #define GPIO0_PIN9_MUX_UART1_TX GPIO_MUX_3
218 #define GPIO0_PIN9_MUX_PWM1_C GPIO_MUX_5
224 #define GPIO0_PIN10_MUX_I2SM_RX_SDI GPIO_MUX_0
225 #define GPIO0_PIN10_MUX_I2SS_RX_SDI GPIO_MUX_1
226 #define GPIO0_PIN10_MUX_UART0_TX GPIO_MUX_2
227 #define GPIO0_PIN10_MUX_I2C0_SCL GPIO_MUX_4
228 #define GPIO0_PIN10_MUX_PWM1_B GPIO_MUX_5
229 #define GPIO0_PIN10_MUX_COEX_BLE_TX GPIO_MUX_6
235 #define GPIO0_PIN11_MUX_I2SM_SCLK GPIO_MUX_0
236 #define GPIO0_PIN11_MUX_I2SS_SCLK GPIO_MUX_1
237 #define GPIO0_PIN11_MUX_UART0_RX GPIO_MUX_2
238 #define GPIO0_PIN11_MUX_I2C0_SDA GPIO_MUX_4
239 #define GPIO0_PIN11_MUX_PWM1_C GPIO_MUX_5
245 #define GPIO0_PIN12_MUX_XQSPIM_IO_3 GPIO_MUX_0
246 #define GPIO0_PIN12_MUX_SPIM_CLK GPIO_MUX_1
247 #define GPIO0_PIN12_MUX_QSPIM1_IO3 GPIO_MUX_2
248 #define GPIO0_PIN12_MUX_SIM_PRESENCE GPIO_MUX_3
249 #define GPIO0_PIN12_MUX_I2SM_WS GPIO_MUX_4
250 #define GPIO0_PIN12_MUX_I2SS_WS GPIO_MUX_5
251 #define GPIO0_PIN12_MUX_SPIS_CS GPIO_MUX_6
257 #define GPIO0_PIN13_MUX_XQSPIM_IO_2 GPIO_MUX_0
258 #define GPIO0_PIN13_MUX_SPIM_MOSI GPIO_MUX_1
259 #define GPIO0_PIN13_MUX_QSPIM1_IO_2 GPIO_MUX_2
260 #define GPIO0_PIN13_MUX_SIM_RST_N GPIO_MUX_3
261 #define GPIO0_PIN13_MUX_I2SM_TX_SDO GPIO_MUX_4
262 #define GPIO0_PIN13_MUX_I2SS_TX_SDO GPIO_MUX_5
263 #define GPIO0_PIN13_MUX_SPIS_CLK GPIO_MUX_6
269 #define GPIO0_PIN14_MUX_XQSPIM_IO_1 GPIO_MUX_0
270 #define GPIO0_PIN14_MUX_SPIM_MISO GPIO_MUX_1
271 #define GPIO0_PIN14_MUX_QSPIM1_IO1 GPIO_MUX_2
272 #define GPIO0_PIN14_MUX_SIM_IO GPIO_MUX_3
273 #define GPIO0_PIN14_MUX_I2SM_RX_SDI GPIO_MUX_4
274 #define GPIO0_PIN14_MUX_I2SS_RX_SDI GPIO_MUX_5
275 #define GPIO0_PIN14_MUX_SPIS_MISO GPIO_MUX_6
281 #define GPIO0_PIN15_MUX_XQSPIM_CS_N GPIO_MUX_0
282 #define GPIO0_PIN15_MUX_SPIM_CS0 GPIO_MUX_1
283 #define GPIO0_PIN15_MUX_QSPIM1_CS_N GPIO_MUX_2
284 #define GPIO0_PIN15_MUX_SIM_CLK GPIO_MUX_3
285 #define GPIO0_PIN15_MUX_I2SM_SCLK GPIO_MUX_4
286 #define GPIO0_PIN15_MUX_I2SS_SCLK GPIO_MUX_5
287 #define GPIO0_PIN15_MUX_SPIS_MOSI GPIO_MUX_6
293 #define GPIO1_PIN0_MUX_SPIM_MISO GPIO_MUX_0
294 #define GPIO1_PIN0_MUX_SPIS_MOSI GPIO_MUX_1
295 #define GPIO1_PIN0_MUX_SIM_IO GPIO_MUX_2
296 #define GPIO1_PIN0_MUX_I2SM_RX_SDI GPIO_MUX_3
297 #define GPIO1_PIN0_MUX_I2SS_RX_SDI GPIO_MUX_4
298 #define GPIO1_PIN0_MUX_QSPIM0_IO_1 GPIO_MUX_5
299 #define GPIO1_PIN0_MUX_ISO_SYNC GPIO_MUX_6
305 #define GPIO1_PIN1_MUX_SPIM_CS0 GPIO_MUX_0
306 #define GPIO1_PIN1_MUX_SPIS_CS GPIO_MUX_1
307 #define GPIO1_PIN1_MUX_SIM_CLK GPIO_MUX_2
308 #define GPIO1_PIN1_MUX_I2SM_SCLK GPIO_MUX_3
309 #define GPIO1_PIN1_MUX_I2SS_SCLK GPIO_MUX_4
310 #define GPIO1_PIN1_MUX_QSPIM0_IO_2 GPIO_MUX_5
311 #define GPIO1_PIN1_MUX_COEX_BLE_RX GPIO_MUX_6
317 #define GPIO1_PIN2_MUX_QSPIM0_CS_N GPIO_MUX_0
318 #define GPIO1_PIN2_MUX_XQSPIM_CS_N GPIO_MUX_1
324 #define GPIO1_PIN3_MUX_QSPIM0_IO_3 GPIO_MUX_0
325 #define GPIO1_PIN3_MUX_XQSPIM_IO_3 GPIO_MUX_1
331 #define GPIO1_PIN4_MUX_QSPIM0_CLK GPIO_MUX_0
332 #define GPIO1_PIN4_MUX_XQSPIM_CLK GPIO_MUX_1
338 #define GPIO1_PIN5_MUX_QSPIM0_IO_2 GPIO_MUX_0
339 #define GPIO1_PIN5_MUX_XQSPIM_IO_2 GPIO_MUX_1
345 #define GPIO1_PIN6_MUX_QSPIM0_IO_1 GPIO_MUX_0
346 #define GPIO1_PIN6_MUX_XQSPIM_IO_1 GPIO_MUX_1
352 #define GPIO1_PIN7_MUX_QSPIM0_IO_0 GPIO_MUX_0
353 #define GPIO1_PIN7_MUX_XQSPIM_IO_0 GPIO_MUX_1
359 #define GPIO1_PIN8_MUX_SPIM_CLK GPIO_MUX_0
360 #define GPIO1_PIN8_MUX_SPIS_CLK GPIO_MUX_1
361 #define GPIO1_PIN8_MUX_SIM_PRESENCE GPIO_MUX_2
362 #define GPIO1_PIN8_MUX_I2SM_WS GPIO_MUX_3
363 #define GPIO1_PIN8_MUX_I2SS_WS GPIO_MUX_4
364 #define GPIO1_PIN8_MUX_QSPIM0_CLK GPIO_MUX_5
365 #define GPIO1_PIN8_MUX_COEX_WLAN_TX GPIO_MUX_6
371 #define GPIO1_PIN9_MUX_SPIM_MOSI GPIO_MUX_0
372 #define GPIO1_PIN9_MUX_SPIS_MISO GPIO_MUX_1
373 #define GPIO1_PIN9_MUX_SIM_RST_N GPIO_MUX_2
374 #define GPIO1_PIN9_MUX_I2SM_TX_SD0 GPIO_MUX_3
375 #define GPIO1_PIN9_MUX_I2SS_TX_SD0 GPIO_MUX_4
376 #define GPIO1_PIN9_MUX_QSPIM0_IO_0 GPIO_MUX_5
377 #define GPIO1_PIN9_MUX_COEX_BLE_PROC GPIO_MUX_6
383 #define GPIO1_PIN10_MUX_I2C1_SDA GPIO_MUX_0
384 #define GPIO1_PIN10_MUX_UART1_RX GPIO_MUX_1
385 #define GPIO1_PIN10_MUX_I2C0_SDA GPIO_MUX_2
386 #define GPIO1_PIN10_MUX_PWM0_C GPIO_MUX_3
387 #define GPIO1_PIN10_MUX_PWM1_C GPIO_MUX_4
388 #define GPIO1_PIN10_MUX_UART0_RX GPIO_MUX_5
394 #define GPIO1_PIN11_MUX_UART1_RTS GPIO_MUX_1
395 #define GPIO1_PIN11_MUX_UART0_RTS GPIO_MUX_5
401 #define GPIO1_PIN12_MUX_UART1_CTS GPIO_MUX_1
402 #define GPIO1_PIN12_MUX_UART0_CTS GPIO_MUX_5
414 #define GPIO1_PIN14_MUX_I2C1_SCL GPIO_MUX_0
415 #define GPIO1_PIN14_MUX_UART1_TX GPIO_MUX_1
416 #define GPIO1_PIN14_MUX_I2C0_SCL GPIO_MUX_2
417 #define GPIO1_PIN14_MUX_PWM0_B GPIO_MUX_3
418 #define GPIO1_PIN14_MUX_PWM1_B GPIO_MUX_4
419 #define GPIO1_PIN14_MUX_UART0_TX GPIO_MUX_5
420 #define GPIO1_PIN14_MUX_COEX_BLE_TX GPIO_MUX_6
426 #define GPIO1_PIN15_MUX_SPIM_CS1 GPIO_MUX_0
427 #define GPIO1_PIN15_MUX_PWM0_A GPIO_MUX_3
428 #define GPIO1_PIN15_MUX_PWM1_A GPIO_MUX_4
429 #define GPIO1_PIN15_MUX_QSPIM0_IO_3 GPIO_MUX_5
430 #define GPIO1_PIN15_MUX_COEX_WLAN_TX GPIO_MUX_6
438 #define IS_GPIO_MUX(__MUX__) (((__MUX__) <= GPIO_MUX_8))
439
440 /*------------------------------------------------------------------------------------------*/
441 #endif /* GR551xx */
442
447 /* Exported macro ------------------------------------------------------------*/
455 #if defined(GR551xx)
456
462 #define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIO0))? 0U : 1U)
463
464 #endif /* GR551xx */
465
470 #if defined(GR551xx)
471
477 #define GPIO_GET_IRQNUM(__GPIOx__) (((__GPIOx__) == (GPIO0))? EXT0_IRQn : EXT1_IRQn)
478
479 #endif /* GR551xx */
480
487 #ifdef __cplusplus
488 }
489 #endif
490
491 #endif /* __GR55xx_HAL_GPIO_EX_H__ */
492
gr55xx_ll_gpio.h
Header file containing functions prototypes of GPIO LL library.
gr55xx_hal_def.h
This file contains HAL common definitions, enumeration, macros and structures definitions.