Rename UARTx to start at 0
This commit is contained in:
parent
3edcc0f80b
commit
9ffb8cf58c
|
@ -49,13 +49,13 @@ SerialDriver SD2;
|
||||||
SerialDriver SD3;
|
SerialDriver SD3;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/** @brief UART4 serial driver identifier.*/
|
/** @brief UART3 serial driver identifier.*/
|
||||||
#if GD32_SERIAL_USE_UART4 || defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART3 || defined(__DOXYGEN__)
|
||||||
SerialDriver SD4;
|
SerialDriver SD4;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/** @brief UART5 serial driver identifier.*/
|
/** @brief UART4 serial driver identifier.*/
|
||||||
#if GD32_SERIAL_USE_UART5 || defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART4 || defined(__DOXYGEN__)
|
||||||
SerialDriver SD5;
|
SerialDriver SD5;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -231,19 +231,19 @@ static void notify3(io_queue_t *qp) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART4 || defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART3 || defined(__DOXYGEN__)
|
||||||
static void notify4(io_queue_t *qp) {
|
static void notify4(io_queue_t *qp) {
|
||||||
|
|
||||||
(void)qp;
|
(void)qp;
|
||||||
UART4->CTL0 |= USART_CTL0_TBEIE | USART_CTL0_TCIE;
|
UART3->CTL0 |= USART_CTL0_TBEIE | USART_CTL0_TCIE;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART5 || defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART4 || defined(__DOXYGEN__)
|
||||||
static void notify5(io_queue_t *qp) {
|
static void notify5(io_queue_t *qp) {
|
||||||
|
|
||||||
(void)qp;
|
(void)qp;
|
||||||
UART5->CTL0 |= USART_CTL0_TBEIE | USART_CTL0_TCIE;
|
UART4->CTL0 |= USART_CTL0_TBEIE | USART_CTL0_TCIE;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -308,6 +308,25 @@ OSAL_IRQ_HANDLER(GD32_USART2_HANDLER) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GD32_SERIAL_USE_UART3 || defined(__DOXYGEN__)
|
||||||
|
#if !defined(GD32_UART3_HANDLER)
|
||||||
|
#error "GD32_UART3_HANDLER not defined"
|
||||||
|
#endif
|
||||||
|
/**
|
||||||
|
* @brief UART3 interrupt handler.
|
||||||
|
*
|
||||||
|
* @isr
|
||||||
|
*/
|
||||||
|
OSAL_IRQ_HANDLER(GD32_UART3_HANDLER) {
|
||||||
|
|
||||||
|
OSAL_IRQ_PROLOGUE();
|
||||||
|
|
||||||
|
serve_interrupt(&SD4);
|
||||||
|
|
||||||
|
OSAL_IRQ_EPILOGUE();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART4 || defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART4 || defined(__DOXYGEN__)
|
||||||
#if !defined(GD32_UART4_HANDLER)
|
#if !defined(GD32_UART4_HANDLER)
|
||||||
#error "GD32_UART4_HANDLER not defined"
|
#error "GD32_UART4_HANDLER not defined"
|
||||||
|
@ -321,25 +340,6 @@ OSAL_IRQ_HANDLER(GD32_UART4_HANDLER) {
|
||||||
|
|
||||||
OSAL_IRQ_PROLOGUE();
|
OSAL_IRQ_PROLOGUE();
|
||||||
|
|
||||||
serve_interrupt(&SD4);
|
|
||||||
|
|
||||||
OSAL_IRQ_EPILOGUE();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART5 || defined(__DOXYGEN__)
|
|
||||||
#if !defined(GD32_UART5_HANDLER)
|
|
||||||
#error "GD32_UART5_HANDLER not defined"
|
|
||||||
#endif
|
|
||||||
/**
|
|
||||||
* @brief UART5 interrupt handler.
|
|
||||||
*
|
|
||||||
* @isr
|
|
||||||
*/
|
|
||||||
OSAL_IRQ_HANDLER(GD32_UART5_HANDLER) {
|
|
||||||
|
|
||||||
OSAL_IRQ_PROLOGUE();
|
|
||||||
|
|
||||||
serve_interrupt(&SD5);
|
serve_interrupt(&SD5);
|
||||||
|
|
||||||
OSAL_IRQ_EPILOGUE();
|
OSAL_IRQ_EPILOGUE();
|
||||||
|
@ -372,14 +372,14 @@ void sd_lld_init(void) {
|
||||||
SD3.usart = USART2;
|
SD3.usart = USART2;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART4
|
#if GD32_SERIAL_USE_UART3
|
||||||
sdObjectInit(&SD4, NULL, notify4);
|
sdObjectInit(&SD4, NULL, notify4);
|
||||||
SD4.usart = UART4;
|
SD4.usart = UART3;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART5
|
#if GD32_SERIAL_USE_UART4
|
||||||
sdObjectInit(&SD5, NULL, notify5);
|
sdObjectInit(&SD5, NULL, notify5);
|
||||||
SD5.usart = UART5;
|
SD5.usart = UART4;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -417,16 +417,16 @@ void sd_lld_start(SerialDriver *sdp, const SerialConfig *config) {
|
||||||
eclicEnableVector(GD32_USART2_NUMBER, GD32_SERIAL_USART2_PRIORITY, GD32_SERIAL_USART2_TRIGGER);
|
eclicEnableVector(GD32_USART2_NUMBER, GD32_SERIAL_USART2_PRIORITY, GD32_SERIAL_USART2_TRIGGER);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if GD32_SERIAL_USE_UART4
|
#if GD32_SERIAL_USE_UART3
|
||||||
if (&SD4 == sdp) {
|
if (&SD4 == sdp) {
|
||||||
rccEnableUART4(true);
|
rccEnableUART3(true);
|
||||||
eclicEnableVector(GD32_UART4_NUMBER, GD32_SERIAL_UART4_PRIORITY, GD32_SERIAL_UART4_TRIGGER);
|
eclicEnableVector(GD32_UART3_NUMBER, GD32_SERIAL_UART3_PRIORITY, GD32_SERIAL_UART3_TRIGGER);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if GD32_SERIAL_USE_UART5
|
#if GD32_SERIAL_USE_UART4
|
||||||
if (&SD5 == sdp) {
|
if (&SD5 == sdp) {
|
||||||
rccEnableUART5(true);
|
rccEnableUART4(true);
|
||||||
eclicEnableVector(GD32_UART5_NUMBER, GD32_SERIAL_UART5_PRIORITY, GD32_SERIAL_UART5_TRIGGER);
|
eclicEnableVector(GD32_UART4_NUMBER, GD32_SERIAL_UART4_PRIORITY, GD32_SERIAL_UART4_TRIGGER);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -467,17 +467,17 @@ void sd_lld_stop(SerialDriver *sdp) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if GD32_SERIAL_USE_UART4
|
#if GD32_SERIAL_USE_UART3
|
||||||
if (&SD4 == sdp) {
|
if (&SD4 == sdp) {
|
||||||
rccDisableUART4();
|
rccDisableUART3();
|
||||||
eclicDisableVector(GD32_UART4_NUMBER);
|
eclicDisableVector(GD32_UART3_NUMBER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if GD32_SERIAL_USE_UART5
|
#if GD32_SERIAL_USE_UART4
|
||||||
if (&SD5 == sdp) {
|
if (&SD5 == sdp) {
|
||||||
rccDisableUART5();
|
rccDisableUART4();
|
||||||
eclicDisableVector(GD32_UART5_NUMBER);
|
eclicDisableVector(GD32_UART4_NUMBER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -66,6 +66,15 @@
|
||||||
#define GD32_SERIAL_USE_USART2 FALSE
|
#define GD32_SERIAL_USE_USART2 FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief UART3 driver enable switch.
|
||||||
|
* @details If set to @p TRUE the support for UART3 is included.
|
||||||
|
* @note The default is @p FALSE.
|
||||||
|
*/
|
||||||
|
#if !defined(GD32_SERIAL_USE_UART3) || defined(__DOXYGEN__)
|
||||||
|
#define GD32_SERIAL_USE_UART3 FALSE
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief UART4 driver enable switch.
|
* @brief UART4 driver enable switch.
|
||||||
* @details If set to @p TRUE the support for UART4 is included.
|
* @details If set to @p TRUE the support for UART4 is included.
|
||||||
|
@ -75,15 +84,6 @@
|
||||||
#define GD32_SERIAL_USE_UART4 FALSE
|
#define GD32_SERIAL_USE_UART4 FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief UART5 driver enable switch.
|
|
||||||
* @details If set to @p TRUE the support for UART5 is included.
|
|
||||||
* @note The default is @p FALSE.
|
|
||||||
*/
|
|
||||||
#if !defined(GD32_SERIAL_USE_UART5) || defined(__DOXYGEN__)
|
|
||||||
#define GD32_SERIAL_USE_UART5 FALSE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief USART0 interrupt priority level setting.
|
* @brief USART0 interrupt priority level setting.
|
||||||
*/
|
*/
|
||||||
|
@ -105,19 +105,19 @@
|
||||||
#define GD32_SERIAL_USART2_PRIORITY 12
|
#define GD32_SERIAL_USART2_PRIORITY 12
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief UART3 interrupt priority level setting.
|
||||||
|
*/
|
||||||
|
#if !defined(GD32_SERIAL_UART3_PRIORITY) || defined(__DOXYGEN__)
|
||||||
|
#define GD32_SERIAL_UART3_PRIORITY 12
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief UART4 interrupt priority level setting.
|
* @brief UART4 interrupt priority level setting.
|
||||||
*/
|
*/
|
||||||
#if !defined(GD32_SERIAL_UART4_PRIORITY) || defined(__DOXYGEN__)
|
#if !defined(GD32_SERIAL_UART4_PRIORITY) || defined(__DOXYGEN__)
|
||||||
#define GD32_SERIAL_UART4_PRIORITY 12
|
#define GD32_SERIAL_UART4_PRIORITY 12
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief UART5 interrupt priority level setting.
|
|
||||||
*/
|
|
||||||
#if !defined(GD32_SERIAL_UART5_PRIORITY) || defined(__DOXYGEN__)
|
|
||||||
#define GD32_SERIAL_UART5_PRIORITY 12
|
|
||||||
#endif
|
|
||||||
/** @} */
|
/** @} */
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
@ -136,17 +136,17 @@
|
||||||
#error "USART2 not present in the selected device"
|
#error "USART2 not present in the selected device"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GD32_SERIAL_USE_UART3 && !GD32_HAS_UART3
|
||||||
|
#error "UART3 not present in the selected device"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART4 && !GD32_HAS_UART4
|
#if GD32_SERIAL_USE_UART4 && !GD32_HAS_UART4
|
||||||
#error "UART4 not present in the selected device"
|
#error "UART4 not present in the selected device"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART5 && !GD32_HAS_UART5
|
|
||||||
#error "UART5 not present in the selected device"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !GD32_SERIAL_USE_USART0 && !GD32_SERIAL_USE_USART1 && \
|
#if !GD32_SERIAL_USE_USART0 && !GD32_SERIAL_USE_USART1 && \
|
||||||
!GD32_SERIAL_USE_USART2 && !GD32_SERIAL_USE_UART4 && \
|
!GD32_SERIAL_USE_USART2 && !GD32_SERIAL_USE_UART3 && \
|
||||||
!GD32_SERIAL_USE_UART5
|
!GD32_SERIAL_USE_UART4
|
||||||
#error "SERIAL driver activated but no USART/UART peripheral assigned"
|
#error "SERIAL driver activated but no USART/UART peripheral assigned"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -165,16 +165,16 @@
|
||||||
#error "Invalid IRQ priority assigned to USART2"
|
#error "Invalid IRQ priority assigned to USART2"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GD32_SERIAL_USE_UART3 && \
|
||||||
|
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_SERIAL_UART3_PRIORITY)
|
||||||
|
#error "Invalid IRQ priority assigned to UART3"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART4 && \
|
#if GD32_SERIAL_USE_UART4 && \
|
||||||
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_SERIAL_UART4_PRIORITY)
|
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_SERIAL_UART4_PRIORITY)
|
||||||
#error "Invalid IRQ priority assigned to UART4"
|
#error "Invalid IRQ priority assigned to UART4"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_SERIAL_USE_UART5 && \
|
|
||||||
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_SERIAL_UART5_PRIORITY)
|
|
||||||
#error "Invalid IRQ priority assigned to UART5"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Driver data structures and types. */
|
/* Driver data structures and types. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
@ -253,10 +253,10 @@ extern SerialDriver SD2;
|
||||||
#if GD32_SERIAL_USE_USART2 && !defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_USART2 && !defined(__DOXYGEN__)
|
||||||
extern SerialDriver SD3;
|
extern SerialDriver SD3;
|
||||||
#endif
|
#endif
|
||||||
#if GD32_SERIAL_USE_UART4 && !defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART3 && !defined(__DOXYGEN__)
|
||||||
extern SerialDriver SD4;
|
extern SerialDriver SD4;
|
||||||
#endif
|
#endif
|
||||||
#if GD32_SERIAL_USE_UART5 && !defined(__DOXYGEN__)
|
#if GD32_SERIAL_USE_UART4 && !defined(__DOXYGEN__)
|
||||||
extern SerialDriver SD5;
|
extern SerialDriver SD5;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,14 @@
|
||||||
GD32_DMA_GETCHANNEL(GD32_UART_USART2_TX_DMA_STREAM, \
|
GD32_DMA_GETCHANNEL(GD32_UART_USART2_TX_DMA_STREAM, \
|
||||||
GD32_USART2_TX_DMA_CHN)
|
GD32_USART2_TX_DMA_CHN)
|
||||||
|
|
||||||
|
#define UART3_RX_DMA_CHANNEL \
|
||||||
|
GD32_DMA_GETCHANNEL(GD32_UART_UART3_RX_DMA_STREAM, \
|
||||||
|
GD32_UART3_RX_DMA_CHN)
|
||||||
|
|
||||||
|
#define UART3_TX_DMA_CHANNEL \
|
||||||
|
GD32_DMA_GETCHANNEL(GD32_UART_UART3_TX_DMA_STREAM, \
|
||||||
|
GD32_UART3_TX_DMA_CHN)
|
||||||
|
|
||||||
#define UART4_RX_DMA_CHANNEL \
|
#define UART4_RX_DMA_CHANNEL \
|
||||||
GD32_DMA_GETCHANNEL(GD32_UART_UART4_RX_DMA_STREAM, \
|
GD32_DMA_GETCHANNEL(GD32_UART_UART4_RX_DMA_STREAM, \
|
||||||
GD32_UART4_RX_DMA_CHN)
|
GD32_UART4_RX_DMA_CHN)
|
||||||
|
@ -62,19 +70,11 @@
|
||||||
GD32_DMA_GETCHANNEL(GD32_UART_UART4_TX_DMA_STREAM, \
|
GD32_DMA_GETCHANNEL(GD32_UART_UART4_TX_DMA_STREAM, \
|
||||||
GD32_UART4_TX_DMA_CHN)
|
GD32_UART4_TX_DMA_CHN)
|
||||||
|
|
||||||
#define UART5_RX_DMA_CHANNEL \
|
#define GD32_UART34_CR2_CHECK_MASK \
|
||||||
GD32_DMA_GETCHANNEL(GD32_UART_UART5_RX_DMA_STREAM, \
|
|
||||||
GD32_UART5_RX_DMA_CHN)
|
|
||||||
|
|
||||||
#define UART5_TX_DMA_CHANNEL \
|
|
||||||
GD32_DMA_GETCHANNEL(GD32_UART_UART5_TX_DMA_STREAM, \
|
|
||||||
GD32_UART5_TX_DMA_CHN)
|
|
||||||
|
|
||||||
#define GD32_UART45_CR2_CHECK_MASK \
|
|
||||||
(USART_CTL1_STB_0 | USART_CTL1_CKEN | USART_CTL1_CPL | USART_CTL1_CPH | \
|
(USART_CTL1_STB_0 | USART_CTL1_CKEN | USART_CTL1_CPL | USART_CTL1_CPH | \
|
||||||
USART_CTL1_CLEN)
|
USART_CTL1_CLEN)
|
||||||
|
|
||||||
#define GD32_UART45_CR3_CHECK_MASK \
|
#define GD32_UART35_CR3_CHECK_MASK \
|
||||||
(USART_CTL2_CTSIE | USART_CTL2_CTSEN | USART_CTL2_RTSEN | USART_CTL2_SCEN | \
|
(USART_CTL2_CTSIE | USART_CTL2_CTSEN | USART_CTL2_RTSEN | USART_CTL2_SCEN | \
|
||||||
USART_CTL2_NKEN)
|
USART_CTL2_NKEN)
|
||||||
|
|
||||||
|
@ -97,13 +97,13 @@ UARTDriver UARTD2;
|
||||||
UARTDriver UARTD3;
|
UARTDriver UARTD3;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/** @brief UART4 UART driver identifier.*/
|
/** @brief UART3 UART driver identifier.*/
|
||||||
#if GD32_UART_USE_UART4 || defined(__DOXYGEN__)
|
#if GD32_UART_USE_UART3 || defined(__DOXYGEN__)
|
||||||
UARTDriver UARTD4;
|
UARTDriver UARTD4;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/** @brief UART5 UART driver identifier.*/
|
/** @brief UART4 UART driver identifier.*/
|
||||||
#if GD32_UART_USE_UART5 || defined(__DOXYGEN__)
|
#if GD32_UART_USE_UART4 || defined(__DOXYGEN__)
|
||||||
UARTDriver UARTD5;
|
UARTDriver UARTD5;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -366,6 +366,25 @@ OSAL_IRQ_HANDLER(GD32_USART2_HANDLER) {
|
||||||
}
|
}
|
||||||
#endif /* GD32_UART_USE_USART2 */
|
#endif /* GD32_UART_USE_USART2 */
|
||||||
|
|
||||||
|
#if GD32_UART_USE_UART3 || defined(__DOXYGEN__)
|
||||||
|
#if !defined(GD32_UART3_HANDLER)
|
||||||
|
#error "GD32_UART3_HANDLER not defined"
|
||||||
|
#endif
|
||||||
|
/**
|
||||||
|
* @brief UART3 IRQ handler.
|
||||||
|
*
|
||||||
|
* @isr
|
||||||
|
*/
|
||||||
|
OSAL_IRQ_HANDLER(GD32_UART3_HANDLER) {
|
||||||
|
|
||||||
|
OSAL_IRQ_PROLOGUE();
|
||||||
|
|
||||||
|
serve_usart_irq(&UARTD4);
|
||||||
|
|
||||||
|
OSAL_IRQ_EPILOGUE();
|
||||||
|
}
|
||||||
|
#endif /* GD32_UART_USE_UART3 */
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4 || defined(__DOXYGEN__)
|
#if GD32_UART_USE_UART4 || defined(__DOXYGEN__)
|
||||||
#if !defined(GD32_UART4_HANDLER)
|
#if !defined(GD32_UART4_HANDLER)
|
||||||
#error "GD32_UART4_HANDLER not defined"
|
#error "GD32_UART4_HANDLER not defined"
|
||||||
|
@ -379,30 +398,11 @@ OSAL_IRQ_HANDLER(GD32_UART4_HANDLER) {
|
||||||
|
|
||||||
OSAL_IRQ_PROLOGUE();
|
OSAL_IRQ_PROLOGUE();
|
||||||
|
|
||||||
serve_usart_irq(&UARTD4);
|
|
||||||
|
|
||||||
OSAL_IRQ_EPILOGUE();
|
|
||||||
}
|
|
||||||
#endif /* GD32_UART_USE_UART4 */
|
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5 || defined(__DOXYGEN__)
|
|
||||||
#if !defined(GD32_UART5_HANDLER)
|
|
||||||
#error "GD32_UART5_HANDLER not defined"
|
|
||||||
#endif
|
|
||||||
/**
|
|
||||||
* @brief UART5 IRQ handler.
|
|
||||||
*
|
|
||||||
* @isr
|
|
||||||
*/
|
|
||||||
OSAL_IRQ_HANDLER(GD32_UART5_HANDLER) {
|
|
||||||
|
|
||||||
OSAL_IRQ_PROLOGUE();
|
|
||||||
|
|
||||||
serve_usart_irq(&UARTD5);
|
serve_usart_irq(&UARTD5);
|
||||||
|
|
||||||
OSAL_IRQ_EPILOGUE();
|
OSAL_IRQ_EPILOGUE();
|
||||||
}
|
}
|
||||||
#endif /* GD32_UART_USE_UART5 */
|
#endif /* GD32_UART_USE_UART4 */
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Driver exported functions. */
|
/* Driver exported functions. */
|
||||||
|
@ -442,18 +442,18 @@ void uart_lld_init(void) {
|
||||||
UARTD3.dmatx = NULL;
|
UARTD3.dmatx = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4
|
#if GD32_UART_USE_UART3
|
||||||
uartObjectInit(&UARTD4);
|
uartObjectInit(&UARTD4);
|
||||||
UARTD4.usart = UART4;
|
UARTD4.usart = UART3;
|
||||||
UARTD4.dmarxmode = GD32_DMA_CTL_ERRIE;
|
UARTD4.dmarxmode = GD32_DMA_CTL_ERRIE;
|
||||||
UARTD4.dmatxmode = GD32_DMA_CTL_ERRIE;
|
UARTD4.dmatxmode = GD32_DMA_CTL_ERRIE;
|
||||||
UARTD4.dmarx = NULL;
|
UARTD4.dmarx = NULL;
|
||||||
UARTD4.dmatx = NULL;
|
UARTD4.dmatx = NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5
|
#if GD32_UART_USE_UART4
|
||||||
uartObjectInit(&UARTD5);
|
uartObjectInit(&UARTD5);
|
||||||
UARTD5.usart = UART5;
|
UARTD5.usart = UART4;
|
||||||
UARTD5.dmarxmode = GD32_DMA_CTL_ERRIE;
|
UARTD5.dmarxmode = GD32_DMA_CTL_ERRIE;
|
||||||
UARTD5.dmatxmode = GD32_DMA_CTL_ERRIE;
|
UARTD5.dmatxmode = GD32_DMA_CTL_ERRIE;
|
||||||
UARTD5.dmarx = NULL;
|
UARTD5.dmarx = NULL;
|
||||||
|
@ -537,12 +537,40 @@ void uart_lld_start(UARTDriver *uartp) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4
|
#if GD32_UART_USE_UART3
|
||||||
if (&UARTD4 == uartp) {
|
if (&UARTD4 == uartp) {
|
||||||
|
|
||||||
osalDbgAssert((uartp->config->ctl1 & GD32_UART45_CR2_CHECK_MASK) == 0,
|
osalDbgAssert((uartp->config->ctl1 & GD32_UART34_CR2_CHECK_MASK) == 0,
|
||||||
|
"specified invalid bits in UART3 CR2 register settings");
|
||||||
|
osalDbgAssert((uartp->config->ctl2 & GD32_UART35_CR3_CHECK_MASK) == 0,
|
||||||
|
"specified invalid bits in UART3 CR3 register settings");
|
||||||
|
|
||||||
|
uartp->dmarx = dmaStreamAllocI(GD32_UART_UART3_RX_DMA_STREAM,
|
||||||
|
GD32_UART_UART3_IRQ_PRIORITY,
|
||||||
|
(gd32_dmaisr_t)uart_lld_serve_rx_end_irq,
|
||||||
|
(void *)uartp);
|
||||||
|
osalDbgAssert(uartp->dmarx != NULL, "unable to allocate stream");
|
||||||
|
uartp->dmatx = dmaStreamAllocI(GD32_UART_UART3_TX_DMA_STREAM,
|
||||||
|
GD32_UART_UART3_IRQ_PRIORITY,
|
||||||
|
(gd32_dmaisr_t)uart_lld_serve_tx_end_irq,
|
||||||
|
(void *)uartp);
|
||||||
|
osalDbgAssert(uartp->dmatx != NULL, "unable to allocate stream");
|
||||||
|
|
||||||
|
rccEnableUART3(true);
|
||||||
|
eclicEnableVector(GD32_UART3_NUMBER, GD32_UART_UART3_IRQ_PRIORITY, GD32_UART_UART3_IRQ_TRIGGER);
|
||||||
|
uartp->dmarxmode |= GD32_DMA_CTL_CHSEL(UART3_RX_DMA_CHANNEL) |
|
||||||
|
GD32_DMA_CTL_PRIO(GD32_UART_UART3_DMA_PRIORITY);
|
||||||
|
uartp->dmatxmode |= GD32_DMA_CTL_CHSEL(UART3_TX_DMA_CHANNEL) |
|
||||||
|
GD32_DMA_CTL_PRIO(GD32_UART_UART3_DMA_PRIORITY);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if GD32_UART_USE_UART4
|
||||||
|
if (&UARTD5 == uartp) {
|
||||||
|
|
||||||
|
osalDbgAssert((uartp->config->ctl1 & GD32_UART34_CR2_CHECK_MASK) == 0,
|
||||||
"specified invalid bits in UART4 CR2 register settings");
|
"specified invalid bits in UART4 CR2 register settings");
|
||||||
osalDbgAssert((uartp->config->ctl2 & GD32_UART45_CR3_CHECK_MASK) == 0,
|
osalDbgAssert((uartp->config->ctl2 & GD32_UART35_CR3_CHECK_MASK) == 0,
|
||||||
"specified invalid bits in UART4 CR3 register settings");
|
"specified invalid bits in UART4 CR3 register settings");
|
||||||
|
|
||||||
uartp->dmarx = dmaStreamAllocI(GD32_UART_UART4_RX_DMA_STREAM,
|
uartp->dmarx = dmaStreamAllocI(GD32_UART_UART4_RX_DMA_STREAM,
|
||||||
|
@ -565,34 +593,6 @@ void uart_lld_start(UARTDriver *uartp) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5
|
|
||||||
if (&UARTD5 == uartp) {
|
|
||||||
|
|
||||||
osalDbgAssert((uartp->config->ctl1 & GD32_UART45_CR2_CHECK_MASK) == 0,
|
|
||||||
"specified invalid bits in UART5 CR2 register settings");
|
|
||||||
osalDbgAssert((uartp->config->ctl2 & GD32_UART45_CR3_CHECK_MASK) == 0,
|
|
||||||
"specified invalid bits in UART5 CR3 register settings");
|
|
||||||
|
|
||||||
uartp->dmarx = dmaStreamAllocI(GD32_UART_UART5_RX_DMA_STREAM,
|
|
||||||
GD32_UART_UART5_IRQ_PRIORITY,
|
|
||||||
(gd32_dmaisr_t)uart_lld_serve_rx_end_irq,
|
|
||||||
(void *)uartp);
|
|
||||||
osalDbgAssert(uartp->dmarx != NULL, "unable to allocate stream");
|
|
||||||
uartp->dmatx = dmaStreamAllocI(GD32_UART_UART5_TX_DMA_STREAM,
|
|
||||||
GD32_UART_UART5_IRQ_PRIORITY,
|
|
||||||
(gd32_dmaisr_t)uart_lld_serve_tx_end_irq,
|
|
||||||
(void *)uartp);
|
|
||||||
osalDbgAssert(uartp->dmatx != NULL, "unable to allocate stream");
|
|
||||||
|
|
||||||
rccEnableUART5(true);
|
|
||||||
eclicEnableVector(GD32_UART5_NUMBER, GD32_UART_UART5_IRQ_PRIORITY, GD32_UART_UART5_IRQ_TRIGGER);
|
|
||||||
uartp->dmarxmode |= GD32_DMA_CTL_CHSEL(UART5_RX_DMA_CHANNEL) |
|
|
||||||
GD32_DMA_CTL_PRIO(GD32_UART_UART5_DMA_PRIORITY);
|
|
||||||
uartp->dmatxmode |= GD32_DMA_CTL_CHSEL(UART5_TX_DMA_CHANNEL) |
|
|
||||||
GD32_DMA_CTL_PRIO(GD32_UART_UART5_DMA_PRIORITY);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Static DMA setup, the transfer size depends on the USART settings,
|
/* Static DMA setup, the transfer size depends on the USART settings,
|
||||||
it is 16 bits if M=1 and PCE=0 else it is 8 bits.*/
|
it is 16 bits if M=1 and PCE=0 else it is 8 bits.*/
|
||||||
if ((uartp->config->ctl0 & (USART_CTL0_WL | USART_CTL0_PCEN)) == USART_CTL0_WL) {
|
if ((uartp->config->ctl0 & (USART_CTL0_WL | USART_CTL0_PCEN)) == USART_CTL0_WL) {
|
||||||
|
@ -649,18 +649,18 @@ void uart_lld_stop(UARTDriver *uartp) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4
|
#if GD32_UART_USE_UART3
|
||||||
if (&UARTD4 == uartp) {
|
if (&UARTD4 == uartp) {
|
||||||
eclicDisableVector(GD32_UART4_NUMBER);
|
eclicDisableVector(GD32_UART3_NUMBER);
|
||||||
rccDisableUART4();
|
rccDisableUART3();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5
|
#if GD32_UART_USE_UART4
|
||||||
if (&UARTD5 == uartp) {
|
if (&UARTD5 == uartp) {
|
||||||
eclicDisableVector(GD32_UART5_NUMBER);
|
eclicDisableVector(GD32_UART4_NUMBER);
|
||||||
rccDisableUART5();
|
rccDisableUART4();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -66,6 +66,15 @@
|
||||||
#define GD32_UART_USE_USART2 FALSE
|
#define GD32_UART_USE_USART2 FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief UART driver on UART3 enable switch.
|
||||||
|
* @details If set to @p TRUE the support for UART3 is included.
|
||||||
|
* @note The default is @p FALSE.
|
||||||
|
*/
|
||||||
|
#if !defined(GD32_UART_USE_UART3) || defined(__DOXYGEN__)
|
||||||
|
#define GD32_UART_USE_UART3 FALSE
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief UART driver on UART4 enable switch.
|
* @brief UART driver on UART4 enable switch.
|
||||||
* @details If set to @p TRUE the support for UART4 is included.
|
* @details If set to @p TRUE the support for UART4 is included.
|
||||||
|
@ -75,15 +84,6 @@
|
||||||
#define GD32_UART_USE_UART4 FALSE
|
#define GD32_UART_USE_UART4 FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief UART driver on UART5 enable switch.
|
|
||||||
* @details If set to @p TRUE the support for UART5 is included.
|
|
||||||
* @note The default is @p FALSE.
|
|
||||||
*/
|
|
||||||
#if !defined(GD32_UART_USE_UART5) || defined(__DOXYGEN__)
|
|
||||||
#define GD32_UART_USE_UART5 FALSE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief USART0 interrupt priority level setting.
|
* @brief USART0 interrupt priority level setting.
|
||||||
*/
|
*/
|
||||||
|
@ -105,6 +105,13 @@
|
||||||
#define GD32_UART_USART2_IRQ_PRIORITY 12
|
#define GD32_UART_USART2_IRQ_PRIORITY 12
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief UART3 interrupt priority level setting.
|
||||||
|
*/
|
||||||
|
#if !defined(GD32_UART_UART3_IRQ_PRIORITY) || defined(__DOXYGEN__)
|
||||||
|
#define GD32_UART_UART3_IRQ_PRIORITY 12
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief UART4 interrupt priority level setting.
|
* @brief UART4 interrupt priority level setting.
|
||||||
*/
|
*/
|
||||||
|
@ -112,13 +119,6 @@
|
||||||
#define GD32_UART_UART4_IRQ_PRIORITY 12
|
#define GD32_UART_UART4_IRQ_PRIORITY 12
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief UART5 interrupt priority level setting.
|
|
||||||
*/
|
|
||||||
#if !defined(GD32_UART_UART5_IRQ_PRIORITY) || defined(__DOXYGEN__)
|
|
||||||
#define GD32_UART_UART5_IRQ_PRIORITY 12
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief USART0 DMA priority (0..3|lowest..highest).
|
* @brief USART0 DMA priority (0..3|lowest..highest).
|
||||||
* @note The priority level is used for both the TX and RX DMA channels but
|
* @note The priority level is used for both the TX and RX DMA channels but
|
||||||
|
@ -149,6 +149,16 @@
|
||||||
#define GD32_UART_USART2_DMA_PRIORITY 0
|
#define GD32_UART_USART2_DMA_PRIORITY 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief UART3 DMA priority (0..3|lowest..highest).
|
||||||
|
* @note The priority level is used for both the TX and RX DMA channels but
|
||||||
|
* because of the channels ordering the RX channel has always priority
|
||||||
|
* over the TX channel.
|
||||||
|
*/
|
||||||
|
#if !defined(GD32_UART_UART3_DMA_PRIORITY) || defined(__DOXYGEN__)
|
||||||
|
#define GD32_UART_UART3_DMA_PRIORITY 0
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief UART4 DMA priority (0..3|lowest..highest).
|
* @brief UART4 DMA priority (0..3|lowest..highest).
|
||||||
* @note The priority level is used for both the TX and RX DMA channels but
|
* @note The priority level is used for both the TX and RX DMA channels but
|
||||||
|
@ -159,16 +169,6 @@
|
||||||
#define GD32_UART_UART4_DMA_PRIORITY 0
|
#define GD32_UART_UART4_DMA_PRIORITY 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief UART5 DMA priority (0..3|lowest..highest).
|
|
||||||
* @note The priority level is used for both the TX and RX DMA channels but
|
|
||||||
* because of the channels ordering the RX channel has always priority
|
|
||||||
* over the TX channel.
|
|
||||||
*/
|
|
||||||
#if !defined(GD32_UART_UART5_DMA_PRIORITY) || defined(__DOXYGEN__)
|
|
||||||
#define GD32_UART_UART5_DMA_PRIORITY 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief USART DMA error hook.
|
* @brief USART DMA error hook.
|
||||||
* @note The default action for DMA errors is a system halt because DMA
|
* @note The default action for DMA errors is a system halt because DMA
|
||||||
|
@ -195,17 +195,17 @@
|
||||||
#error "USART2 not present in the selected device"
|
#error "USART2 not present in the selected device"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GD32_UART_USE_UART3 && !GD32_HAS_UART3
|
||||||
|
#error "UART3 not present in the selected device"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4 && !GD32_HAS_UART4
|
#if GD32_UART_USE_UART4 && !GD32_HAS_UART4
|
||||||
#error "UART4 not present in the selected device"
|
#error "UART4 not present in the selected device"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5 && !GD32_HAS_UART5
|
|
||||||
#error "UART5 not present in the selected device"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !GD32_UART_USE_USART0 && !GD32_UART_USE_USART1 && \
|
#if !GD32_UART_USE_USART0 && !GD32_UART_USE_USART1 && \
|
||||||
!GD32_UART_USE_USART2 && !GD32_UART_USE_UART4 && \
|
!GD32_UART_USE_USART2 && !GD32_UART_USE_UART3 && \
|
||||||
!GD32_UART_USE_UART5
|
!GD32_UART_USE_UART4
|
||||||
#error "UART driver activated but no USART/UART peripheral assigned"
|
#error "UART driver activated but no USART/UART peripheral assigned"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -224,16 +224,16 @@
|
||||||
#error "Invalid IRQ priority assigned to USART2"
|
#error "Invalid IRQ priority assigned to USART2"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GD32_UART_USE_UART3 && \
|
||||||
|
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_UART_UART3_IRQ_PRIORITY)
|
||||||
|
#error "Invalid IRQ priority assigned to UART3"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4 && \
|
#if GD32_UART_USE_UART4 && \
|
||||||
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_UART_UART4_IRQ_PRIORITY)
|
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_UART_UART4_IRQ_PRIORITY)
|
||||||
#error "Invalid IRQ priority assigned to UART4"
|
#error "Invalid IRQ priority assigned to UART4"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5 && \
|
|
||||||
!OSAL_IRQ_IS_VALID_PRIORITY(GD32_UART_UART5_IRQ_PRIORITY)
|
|
||||||
#error "Invalid IRQ priority assigned to UART5"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if GD32_UART_USE_USART0 && \
|
#if GD32_UART_USE_USART0 && \
|
||||||
!GD32_DMA_IS_VALID_PRIORITY(GD32_UART_USART0_DMA_PRIORITY)
|
!GD32_DMA_IS_VALID_PRIORITY(GD32_UART_USART0_DMA_PRIORITY)
|
||||||
#error "Invalid DMA priority assigned to USART0"
|
#error "Invalid DMA priority assigned to USART0"
|
||||||
|
@ -249,16 +249,16 @@
|
||||||
#error "Invalid DMA priority assigned to USART2"
|
#error "Invalid DMA priority assigned to USART2"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GD32_UART_USE_UART3 && \
|
||||||
|
!GD32_DMA_IS_VALID_PRIORITY(GD32_UART_UART3_DMA_PRIORITY)
|
||||||
|
#error "Invalid DMA priority assigned to UART3"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4 && \
|
#if GD32_UART_USE_UART4 && \
|
||||||
!GD32_DMA_IS_VALID_PRIORITY(GD32_UART_UART4_DMA_PRIORITY)
|
!GD32_DMA_IS_VALID_PRIORITY(GD32_UART_UART4_DMA_PRIORITY)
|
||||||
#error "Invalid DMA priority assigned to UART4"
|
#error "Invalid DMA priority assigned to UART4"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5 && \
|
|
||||||
!GD32_DMA_IS_VALID_PRIORITY(GD32_UART_UART5_DMA_PRIORITY)
|
|
||||||
#error "Invalid DMA priority assigned to UART5"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(GD32_DMA_REQUIRED)
|
#if !defined(GD32_DMA_REQUIRED)
|
||||||
#define GD32_DMA_REQUIRED
|
#define GD32_DMA_REQUIRED
|
||||||
#endif
|
#endif
|
||||||
|
@ -440,11 +440,11 @@ extern UARTDriver UARTD2;
|
||||||
extern UARTDriver UARTD3;
|
extern UARTDriver UARTD3;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART4 && !defined(__DOXYGEN__)
|
#if GD32_UART_USE_UART3 && !defined(__DOXYGEN__)
|
||||||
extern UARTDriver UARTD4;
|
extern UARTDriver UARTD4;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_UART_USE_UART5 && !defined(__DOXYGEN__)
|
#if GD32_UART_USE_UART4 && !defined(__DOXYGEN__)
|
||||||
extern UARTDriver UARTD5;
|
extern UARTDriver UARTD5;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -94,14 +94,14 @@
|
||||||
#define GD32_USART0_HANDLER vector56
|
#define GD32_USART0_HANDLER vector56
|
||||||
#define GD32_USART1_HANDLER vector57
|
#define GD32_USART1_HANDLER vector57
|
||||||
#define GD32_USART2_HANDLER vector58
|
#define GD32_USART2_HANDLER vector58
|
||||||
#define GD32_UART4_HANDLER vector71
|
#define GD32_UART3_HANDLER vector71
|
||||||
#define GD32_UART5_HANDLER vector72
|
#define GD32_UART4_HANDLER vector72
|
||||||
|
|
||||||
#define GD32_USART0_NUMBER 56
|
#define GD32_USART0_NUMBER 56
|
||||||
#define GD32_USART1_NUMBER 57
|
#define GD32_USART1_NUMBER 57
|
||||||
#define GD32_USART2_NUMBER 58
|
#define GD32_USART2_NUMBER 58
|
||||||
#define GD32_UART4_NUMBER 71
|
#define GD32_UART3_NUMBER 71
|
||||||
#define GD32_UART5_NUMBER 72
|
#define GD32_UART4_NUMBER 72
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* OTG units.
|
* OTG units.
|
||||||
|
@ -270,8 +270,8 @@
|
||||||
#define GD32_PWM_TIM8_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_PWM_TIM8_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_RTC_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_RTC_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_SDC_SDIO_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SDC_SDIO_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
|
#define GD32_SERIAL_UART3_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_SERIAL_UART4_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SERIAL_UART4_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_SERIAL_UART5_TRIGGER ECLIC_TRIGGER_DEFAULT
|
|
||||||
#define GD32_SERIAL_UART7_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SERIAL_UART7_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_SERIAL_UART8_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SERIAL_UART8_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_SERIAL_USART0_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SERIAL_USART0_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
|
@ -279,8 +279,8 @@
|
||||||
#define GD32_SERIAL_USART2_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SERIAL_USART2_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_SERIAL_USART6_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_SERIAL_USART6_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_ST_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_ST_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
|
#define GD32_UART_UART3_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_UART_UART4_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_UART_UART4_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_UART_UART5_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
|
||||||
#define GD32_UART_UART7_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_UART_UART7_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_UART_UART8_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_UART_UART8_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
#define GD32_UART_USART0_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
#define GD32_UART_USART0_IRQ_TRIGGER ECLIC_TRIGGER_DEFAULT
|
||||||
|
|
|
@ -1115,6 +1115,30 @@
|
||||||
*/
|
*/
|
||||||
#define rccResetUSART2() rccResetAPB1(RCC_APB1RSTR_USART2RST)
|
#define rccResetUSART2() rccResetAPB1(RCC_APB1RSTR_USART2RST)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Enables the UART3 peripheral clock.
|
||||||
|
* @note The @p lp parameter is ignored in this family.
|
||||||
|
*
|
||||||
|
* @param[in] lp low power enable flag
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*/
|
||||||
|
#define rccEnableUART3(lp) rccEnableAPB1(RCC_APB1ENR_UART3EN, lp)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Disables the UART3 peripheral clock.
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*/
|
||||||
|
#define rccDisableUART3() rccDisableAPB1(RCC_APB1ENR_UART3EN)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Resets the UART3 peripheral.
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*/
|
||||||
|
#define rccResetUART3() rccResetAPB1(RCC_APB1RSTR_UART3RST)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enables the UART4 peripheral clock.
|
* @brief Enables the UART4 peripheral clock.
|
||||||
* @note The @p lp parameter is ignored in this family.
|
* @note The @p lp parameter is ignored in this family.
|
||||||
|
@ -1138,30 +1162,6 @@
|
||||||
* @api
|
* @api
|
||||||
*/
|
*/
|
||||||
#define rccResetUART4() rccResetAPB1(RCC_APB1RSTR_UART4RST)
|
#define rccResetUART4() rccResetAPB1(RCC_APB1RSTR_UART4RST)
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Enables the UART5 peripheral clock.
|
|
||||||
* @note The @p lp parameter is ignored in this family.
|
|
||||||
*
|
|
||||||
* @param[in] lp low power enable flag
|
|
||||||
*
|
|
||||||
* @api
|
|
||||||
*/
|
|
||||||
#define rccEnableUART5(lp) rccEnableAPB1(RCC_APB1ENR_UART5EN, lp)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Disables the UART5 peripheral clock.
|
|
||||||
*
|
|
||||||
* @api
|
|
||||||
*/
|
|
||||||
#define rccDisableUART5() rccDisableAPB1(RCC_APB1ENR_UART5EN)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Resets the UART5 peripheral.
|
|
||||||
*
|
|
||||||
* @api
|
|
||||||
*/
|
|
||||||
#define rccResetUART5() rccResetAPB1(RCC_APB1RSTR_UART5RST)
|
|
||||||
/** @} */
|
/** @} */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -289,13 +289,13 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if GD32_HAS_USART_01234
|
#if GD32_HAS_USART_01234
|
||||||
|
#define GD32_HAS_UART3 TRUE
|
||||||
|
#define GD32_UART_UART3_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
||||||
|
#define GD32_UART_UART3_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 4)
|
||||||
#define GD32_HAS_UART4 TRUE
|
#define GD32_HAS_UART4 TRUE
|
||||||
#define GD32_UART_UART4_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
|
||||||
#define GD32_UART_UART4_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 4)
|
|
||||||
#define GD32_HAS_UART5 TRUE
|
|
||||||
#else
|
#else
|
||||||
|
#define GD32_HAS_UART3 FALSE
|
||||||
#define GD32_HAS_UART4 FALSE
|
#define GD32_HAS_UART4 FALSE
|
||||||
#define GD32_HAS_UART5 FALSE
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* USB attributes.*/
|
/* USB attributes.*/
|
||||||
|
|
|
@ -240,8 +240,8 @@
|
||||||
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
||||||
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
||||||
|
|
||||||
|
#define GD32_HAS_UART3 FALSE
|
||||||
#define GD32_HAS_UART4 FALSE
|
#define GD32_HAS_UART4 FALSE
|
||||||
#define GD32_HAS_UART5 FALSE
|
|
||||||
#define GD32_HAS_USART6 FALSE
|
#define GD32_HAS_USART6 FALSE
|
||||||
#define GD32_HAS_UART7 FALSE
|
#define GD32_HAS_UART7 FALSE
|
||||||
#define GD32_HAS_UART8 FALSE
|
#define GD32_HAS_UART8 FALSE
|
||||||
|
@ -425,8 +425,8 @@
|
||||||
#define GD32_UART_USART1_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 7)
|
#define GD32_UART_USART1_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 7)
|
||||||
|
|
||||||
#define GD32_HAS_USART2 FALSE
|
#define GD32_HAS_USART2 FALSE
|
||||||
|
#define GD32_HAS_UART3 FALSE
|
||||||
#define GD32_HAS_UART4 FALSE
|
#define GD32_HAS_UART4 FALSE
|
||||||
#define GD32_HAS_UART5 FALSE
|
|
||||||
#define GD32_HAS_USART6 FALSE
|
#define GD32_HAS_USART6 FALSE
|
||||||
#define GD32_HAS_UART7 FALSE
|
#define GD32_HAS_UART7 FALSE
|
||||||
#define GD32_HAS_UART8 FALSE
|
#define GD32_HAS_UART8 FALSE
|
||||||
|
@ -623,8 +623,8 @@
|
||||||
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
||||||
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
||||||
|
|
||||||
|
#define GD32_HAS_UART3 FALSE
|
||||||
#define GD32_HAS_UART4 FALSE
|
#define GD32_HAS_UART4 FALSE
|
||||||
#define GD32_HAS_UART5 FALSE
|
|
||||||
#define GD32_HAS_USART6 FALSE
|
#define GD32_HAS_USART6 FALSE
|
||||||
#define GD32_HAS_UART7 FALSE
|
#define GD32_HAS_UART7 FALSE
|
||||||
#define GD32_HAS_UART8 FALSE
|
#define GD32_HAS_UART8 FALSE
|
||||||
|
@ -860,11 +860,11 @@
|
||||||
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
||||||
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
||||||
|
|
||||||
#define GD32_HAS_UART4 TRUE
|
#define GD32_HAS_UART3 TRUE
|
||||||
#define GD32_UART_UART4_RX_DMA_STREAM GD32_DMA_STREAM_ID(2, 3)
|
#define GD32_UART_UART3_RX_DMA_STREAM GD32_DMA_STREAM_ID(2, 3)
|
||||||
#define GD32_UART_UART4_TX_DMA_STREAM GD32_DMA_STREAM_ID(2, 5)
|
#define GD32_UART_UART3_TX_DMA_STREAM GD32_DMA_STREAM_ID(2, 5)
|
||||||
|
|
||||||
#define GD32_HAS_UART5 FALSE
|
#define GD32_HAS_UART4 FALSE
|
||||||
#define GD32_HAS_USART6 FALSE
|
#define GD32_HAS_USART6 FALSE
|
||||||
#define GD32_HAS_UART7 FALSE
|
#define GD32_HAS_UART7 FALSE
|
||||||
#define GD32_HAS_UART8 FALSE
|
#define GD32_HAS_UART8 FALSE
|
||||||
|
@ -1118,11 +1118,11 @@
|
||||||
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
||||||
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
||||||
|
|
||||||
#define GD32_HAS_UART4 TRUE
|
#define GD32_HAS_UART3 TRUE
|
||||||
#define GD32_UART_UART4_RX_DMA_STREAM GD32_DMA_STREAM_ID(2, 3)
|
#define GD32_UART_UART3_RX_DMA_STREAM GD32_DMA_STREAM_ID(2, 3)
|
||||||
#define GD32_UART_UART4_TX_DMA_STREAM GD32_DMA_STREAM_ID(2, 5)
|
#define GD32_UART_UART3_TX_DMA_STREAM GD32_DMA_STREAM_ID(2, 5)
|
||||||
|
|
||||||
#define GD32_HAS_UART5 FALSE
|
#define GD32_HAS_UART4 FALSE
|
||||||
#define GD32_HAS_USART6 FALSE
|
#define GD32_HAS_USART6 FALSE
|
||||||
#define GD32_HAS_UART7 FALSE
|
#define GD32_HAS_UART7 FALSE
|
||||||
#define GD32_HAS_UART8 FALSE
|
#define GD32_HAS_UART8 FALSE
|
||||||
|
@ -1356,11 +1356,11 @@
|
||||||
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
#define GD32_UART_USART2_RX_DMA_STREAM GD32_DMA_STREAM_ID(1, 3)
|
||||||
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
#define GD32_UART_USART2_TX_DMA_STREAM GD32_DMA_STREAM_ID(1, 2)
|
||||||
|
|
||||||
#define GD32_HAS_UART4 TRUE
|
#define GD32_HAS_UART3 TRUE
|
||||||
#define GD32_UART_UART4_RX_DMA_STREAM GD32_DMA_STREAM_ID(2, 3)
|
#define GD32_UART_UART3_RX_DMA_STREAM GD32_DMA_STREAM_ID(2, 3)
|
||||||
#define GD32_UART_UART4_TX_DMA_STREAM GD32_DMA_STREAM_ID(2, 5)
|
#define GD32_UART_UART3_TX_DMA_STREAM GD32_DMA_STREAM_ID(2, 5)
|
||||||
|
|
||||||
#define GD32_HAS_UART5 TRUE
|
#define GD32_HAS_UART4 TRUE
|
||||||
|
|
||||||
#define GD32_HAS_USART6 FALSE
|
#define GD32_HAS_USART6 FALSE
|
||||||
#define GD32_HAS_UART7 FALSE
|
#define GD32_HAS_UART7 FALSE
|
||||||
|
|
|
@ -712,8 +712,8 @@ typedef struct
|
||||||
#define SPI3_BASE (APB1PERIPH_BASE + 0x00003C00U)
|
#define SPI3_BASE (APB1PERIPH_BASE + 0x00003C00U)
|
||||||
#define USART1_BASE (APB1PERIPH_BASE + 0x00004400U)
|
#define USART1_BASE (APB1PERIPH_BASE + 0x00004400U)
|
||||||
#define USART2_BASE (APB1PERIPH_BASE + 0x00004800U)
|
#define USART2_BASE (APB1PERIPH_BASE + 0x00004800U)
|
||||||
#define UART4_BASE (APB1PERIPH_BASE + 0x00004C00U)
|
#define UART3_BASE (APB1PERIPH_BASE + 0x00004C00U)
|
||||||
#define UART5_BASE (APB1PERIPH_BASE + 0x00005000U)
|
#define UART4_BASE (APB1PERIPH_BASE + 0x00005000U)
|
||||||
#define I2C0_BASE (APB1PERIPH_BASE + 0x00005400U)
|
#define I2C0_BASE (APB1PERIPH_BASE + 0x00005400U)
|
||||||
#define I2C1_BASE (APB1PERIPH_BASE + 0x5800)
|
#define I2C1_BASE (APB1PERIPH_BASE + 0x5800)
|
||||||
#define CAN1_BASE (APB1PERIPH_BASE + 0x00006400U)
|
#define CAN1_BASE (APB1PERIPH_BASE + 0x00006400U)
|
||||||
|
@ -800,8 +800,8 @@ typedef struct
|
||||||
#define SPI3 ((SPI_TypeDef *)SPI3_BASE)
|
#define SPI3 ((SPI_TypeDef *)SPI3_BASE)
|
||||||
#define USART1 ((USART_TypeDef *)USART1_BASE)
|
#define USART1 ((USART_TypeDef *)USART1_BASE)
|
||||||
#define USART2 ((USART_TypeDef *)USART2_BASE)
|
#define USART2 ((USART_TypeDef *)USART2_BASE)
|
||||||
|
#define UART3 ((USART_TypeDef *)UART3_BASE)
|
||||||
#define UART4 ((USART_TypeDef *)UART4_BASE)
|
#define UART4 ((USART_TypeDef *)UART4_BASE)
|
||||||
#define UART5 ((USART_TypeDef *)UART5_BASE)
|
|
||||||
#define I2C0 ((I2C_TypeDef *)I2C0_BASE)
|
#define I2C0 ((I2C_TypeDef *)I2C0_BASE)
|
||||||
#define I2C1 ((I2C_TypeDef *)I2C1_BASE)
|
#define I2C1 ((I2C_TypeDef *)I2C1_BASE)
|
||||||
#define CAN1 ((CAN_TypeDef *)CAN1_BASE)
|
#define CAN1 ((CAN_TypeDef *)CAN1_BASE)
|
||||||
|
@ -1600,12 +1600,12 @@ typedef struct
|
||||||
#define RCC_APB1RSTR_SPI3RST_Pos (15U)
|
#define RCC_APB1RSTR_SPI3RST_Pos (15U)
|
||||||
#define RCC_APB1RSTR_SPI3RST_Msk (0x1U << RCC_APB1RSTR_SPI3RST_Pos) /*!< 0x00008000 */
|
#define RCC_APB1RSTR_SPI3RST_Msk (0x1U << RCC_APB1RSTR_SPI3RST_Pos) /*!< 0x00008000 */
|
||||||
#define RCC_APB1RSTR_SPI3RST RCC_APB1RSTR_SPI3RST_Msk /*!< SPI 3 reset */
|
#define RCC_APB1RSTR_SPI3RST RCC_APB1RSTR_SPI3RST_Msk /*!< SPI 3 reset */
|
||||||
#define RCC_APB1RSTR_UART4RST_Pos (19U)
|
#define RCC_APB1RSTR_UART3RST_Pos (19U)
|
||||||
#define RCC_APB1RSTR_UART4RST_Msk (0x1U << RCC_APB1RSTR_UART4RST_Pos) /*!< 0x00080000 */
|
#define RCC_APB1RSTR_UART3RST_Msk (0x1U << RCC_APB1RSTR_UART3RST_Pos) /*!< 0x00080000 */
|
||||||
#define RCC_APB1RSTR_UART4RST RCC_APB1RSTR_UART4RST_Msk /*!< UART 4 reset */
|
#define RCC_APB1RSTR_UART3RST RCC_APB1RSTR_UART3RST_Msk /*!< UART 4 reset */
|
||||||
#define RCC_APB1RSTR_UART5RST_Pos (20U)
|
#define RCC_APB1RSTR_UART4RST_Pos (20U)
|
||||||
#define RCC_APB1RSTR_UART5RST_Msk (0x1U << RCC_APB1RSTR_UART5RST_Pos) /*!< 0x00100000 */
|
#define RCC_APB1RSTR_UART4RST_Msk (0x1U << RCC_APB1RSTR_UART4RST_Pos) /*!< 0x00100000 */
|
||||||
#define RCC_APB1RSTR_UART5RST RCC_APB1RSTR_UART5RST_Msk /*!< UART 5 reset */
|
#define RCC_APB1RSTR_UART4RST RCC_APB1RSTR_UART4RST_Msk /*!< UART 5 reset */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1736,12 +1736,12 @@ typedef struct
|
||||||
#define RCC_APB1ENR_SPI3EN_Pos (15U)
|
#define RCC_APB1ENR_SPI3EN_Pos (15U)
|
||||||
#define RCC_APB1ENR_SPI3EN_Msk (0x1U << RCC_APB1ENR_SPI3EN_Pos) /*!< 0x00008000 */
|
#define RCC_APB1ENR_SPI3EN_Msk (0x1U << RCC_APB1ENR_SPI3EN_Pos) /*!< 0x00008000 */
|
||||||
#define RCC_APB1ENR_SPI3EN RCC_APB1ENR_SPI3EN_Msk /*!< SPI 3 clock enable */
|
#define RCC_APB1ENR_SPI3EN RCC_APB1ENR_SPI3EN_Msk /*!< SPI 3 clock enable */
|
||||||
#define RCC_APB1ENR_UART4EN_Pos (19U)
|
#define RCC_APB1ENR_UART3EN_Pos (19U)
|
||||||
#define RCC_APB1ENR_UART4EN_Msk (0x1U << RCC_APB1ENR_UART4EN_Pos) /*!< 0x00080000 */
|
#define RCC_APB1ENR_UART3EN_Msk (0x1U << RCC_APB1ENR_UART3EN_Pos) /*!< 0x00080000 */
|
||||||
#define RCC_APB1ENR_UART4EN RCC_APB1ENR_UART4EN_Msk /*!< UART 4 clock enable */
|
#define RCC_APB1ENR_UART3EN RCC_APB1ENR_UART3EN_Msk /*!< UART 4 clock enable */
|
||||||
#define RCC_APB1ENR_UART5EN_Pos (20U)
|
#define RCC_APB1ENR_UART4EN_Pos (20U)
|
||||||
#define RCC_APB1ENR_UART5EN_Msk (0x1U << RCC_APB1ENR_UART5EN_Pos) /*!< 0x00100000 */
|
#define RCC_APB1ENR_UART4EN_Msk (0x1U << RCC_APB1ENR_UART4EN_Pos) /*!< 0x00100000 */
|
||||||
#define RCC_APB1ENR_UART5EN RCC_APB1ENR_UART5EN_Msk /*!< UART 5 clock enable */
|
#define RCC_APB1ENR_UART4EN RCC_APB1ENR_UART4EN_Msk /*!< UART 5 clock enable */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -12863,22 +12863,22 @@ typedef struct
|
||||||
#define IS_UART_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_UART_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
((INSTANCE) == USART1) || \
|
((INSTANCE) == USART1) || \
|
||||||
((INSTANCE) == USART2) || \
|
((INSTANCE) == USART2) || \
|
||||||
((INSTANCE) == UART4) || \
|
((INSTANCE) == UART3) || \
|
||||||
((INSTANCE) == UART5))
|
((INSTANCE) == UART4))
|
||||||
|
|
||||||
/******************** UART Instances : Half-Duplex mode **********************/
|
/******************** UART Instances : Half-Duplex mode **********************/
|
||||||
#define IS_UART_HALFDUPLEX_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_UART_HALFDUPLEX_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
((INSTANCE) == USART1) || \
|
((INSTANCE) == USART1) || \
|
||||||
((INSTANCE) == USART2) || \
|
((INSTANCE) == USART2) || \
|
||||||
((INSTANCE) == UART4) || \
|
((INSTANCE) == UART3) || \
|
||||||
((INSTANCE) == UART5))
|
((INSTANCE) == UART4))
|
||||||
|
|
||||||
/******************** UART Instances : LIN mode **********************/
|
/******************** UART Instances : LIN mode **********************/
|
||||||
#define IS_UART_LIN_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_UART_LIN_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
((INSTANCE) == USART1) || \
|
((INSTANCE) == USART1) || \
|
||||||
((INSTANCE) == USART2) || \
|
((INSTANCE) == USART2) || \
|
||||||
((INSTANCE) == UART4) || \
|
((INSTANCE) == UART3) || \
|
||||||
((INSTANCE) == UART5))
|
((INSTANCE) == UART4))
|
||||||
|
|
||||||
/****************** UART Instances : Hardware Flow control ********************/
|
/****************** UART Instances : Hardware Flow control ********************/
|
||||||
#define IS_UART_HWFLOW_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_UART_HWFLOW_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
|
@ -12894,21 +12894,21 @@ typedef struct
|
||||||
#define IS_IRDA_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_IRDA_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
((INSTANCE) == USART1) || \
|
((INSTANCE) == USART1) || \
|
||||||
((INSTANCE) == USART2) || \
|
((INSTANCE) == USART2) || \
|
||||||
((INSTANCE) == UART4) || \
|
((INSTANCE) == UART3) || \
|
||||||
((INSTANCE) == UART5))
|
((INSTANCE) == UART4))
|
||||||
|
|
||||||
/***************** UART Instances : Multi-Processor mode **********************/
|
/***************** UART Instances : Multi-Processor mode **********************/
|
||||||
#define IS_UART_MULTIPROCESSOR_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_UART_MULTIPROCESSOR_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
((INSTANCE) == USART1) || \
|
((INSTANCE) == USART1) || \
|
||||||
((INSTANCE) == USART2) || \
|
((INSTANCE) == USART2) || \
|
||||||
((INSTANCE) == UART4) || \
|
((INSTANCE) == UART3) || \
|
||||||
((INSTANCE) == UART5))
|
((INSTANCE) == UART4))
|
||||||
|
|
||||||
/***************** UART Instances : DMA mode available **********************/
|
/***************** UART Instances : DMA mode available **********************/
|
||||||
#define IS_UART_DMA_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
#define IS_UART_DMA_INSTANCE(INSTANCE) (((INSTANCE) == USART0) || \
|
||||||
((INSTANCE) == USART1) || \
|
((INSTANCE) == USART1) || \
|
||||||
((INSTANCE) == USART2) || \
|
((INSTANCE) == USART2) || \
|
||||||
((INSTANCE) == UART4))
|
((INSTANCE) == UART3))
|
||||||
|
|
||||||
/****************************** RTC Instances *********************************/
|
/****************************** RTC Instances *********************************/
|
||||||
#define IS_RTC_ALL_INSTANCE(INSTANCE) ((INSTANCE) == RTC)
|
#define IS_RTC_ALL_INSTANCE(INSTANCE) ((INSTANCE) == RTC)
|
||||||
|
|
Loading…
Reference in New Issue