[bsp][stm32]添加 uart6 的支持
This commit is contained in:
parent
762cdcc272
commit
6013aafb6b
|
@ -123,6 +123,12 @@ extern "C" {
|
|||
#define SPI4_TX_DMA_INSTANCE DMA2_Stream1
|
||||
#define SPI4_TX_DMA_CHANNEL DMA_CHANNEL_4
|
||||
#define SPI4_TX_DMA_IRQ DMA2_Stream1_IRQn
|
||||
#elif defined(BSP_UART6_RX_USING_DMA) && !defined(UART6_RX_DMA_INSTANCE)
|
||||
#define UART6_DMA_RX_IRQHandler DMA2_Stream1_IRQHandler
|
||||
#define UART6_RX_DMA_RCC RCC_AHB1ENR_DMA2EN
|
||||
#define UART6_RX_DMA_INSTANCE DMA2_Stream1
|
||||
#define UART6_RX_DMA_CHANNEL DMA_CHANNEL_5
|
||||
#define UART6_RX_DMA_IRQ DMA2_Stream1_IRQn
|
||||
#endif
|
||||
|
||||
/* DMA2 stream2 */
|
||||
|
|
|
@ -133,6 +133,29 @@ extern "C" {
|
|||
#endif /* UART5_DMA_CONFIG */
|
||||
#endif /* BSP_UART5_RX_USING_DMA */
|
||||
|
||||
#if defined(BSP_USING_UART6)
|
||||
#ifndef UART6_CONFIG
|
||||
#define UART6_CONFIG \
|
||||
{ \
|
||||
.name = "uart6", \
|
||||
.Instance = USART6, \
|
||||
.irq_type = USART6_IRQn, \
|
||||
}
|
||||
#endif /* UART6_CONFIG */
|
||||
#endif /* BSP_USING_UART6 */
|
||||
|
||||
#if defined(BSP_UART6_RX_USING_DMA)
|
||||
#ifndef UART6_DMA_CONFIG
|
||||
#define UART6_DMA_CONFIG \
|
||||
{ \
|
||||
.Instance = UART6_RX_DMA_INSTANCE, \
|
||||
.channel = UART6_RX_DMA_CHANNEL, \
|
||||
.dma_rcc = UART6_RX_DMA_RCC, \
|
||||
.dma_irq = UART6_RX_DMA_IRQ, \
|
||||
}
|
||||
#endif /* UART6_DMA_CONFIG */
|
||||
#endif /* BSP_UART6_RX_USING_DMA */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -45,6 +45,9 @@ enum
|
|||
#ifdef BSP_USING_UART5
|
||||
UART5_INDEX,
|
||||
#endif
|
||||
#ifdef BSP_USING_UART6
|
||||
UART6_INDEX,
|
||||
#endif
|
||||
#ifdef BSP_USING_LPUART1
|
||||
LPUART1_INDEX,
|
||||
#endif
|
||||
|
@ -67,6 +70,9 @@ static struct stm32_uart_config uart_config[] =
|
|||
#ifdef BSP_USING_UART5
|
||||
UART5_CONFIG,
|
||||
#endif
|
||||
#ifdef BSP_USING_UART6
|
||||
UART6_CONFIG,
|
||||
#endif
|
||||
#ifdef BSP_USING_LPUART1
|
||||
LPUART1_CONFIG,
|
||||
#endif
|
||||
|
@ -431,6 +437,31 @@ void UART5_DMA_RX_IRQHandler(void)
|
|||
#endif /* defined(RT_SERIAL_USING_DMA) && defined(BSP_UART5_RX_USING_DMA) */
|
||||
#endif /* BSP_USING_UART5*/
|
||||
|
||||
#if defined(BSP_USING_UART6)
|
||||
void USART6_IRQHandler(void)
|
||||
{
|
||||
/* enter interrupt */
|
||||
rt_interrupt_enter();
|
||||
|
||||
uart_isr(&(uart_obj[UART6_INDEX].serial));
|
||||
|
||||
/* leave interrupt */
|
||||
rt_interrupt_leave();
|
||||
}
|
||||
#if defined(RT_SERIAL_USING_DMA) && defined(BSP_UART6_RX_USING_DMA)
|
||||
void UART6_DMA_RX_IRQHandler(void)
|
||||
{
|
||||
/* enter interrupt */
|
||||
rt_interrupt_enter();
|
||||
|
||||
HAL_DMA_IRQHandler(&uart_obj[UART6_INDEX].dma.handle);
|
||||
|
||||
/* leave interrupt */
|
||||
rt_interrupt_leave();
|
||||
}
|
||||
#endif /* defined(RT_SERIAL_USING_DMA) && defined(BSP_UART6_RX_USING_DMA) */
|
||||
#endif /* BSP_USING_UART6*/
|
||||
|
||||
#if defined(BSP_USING_LPUART1)
|
||||
void LPUART1_IRQHandler(void)
|
||||
{
|
||||
|
@ -608,6 +639,11 @@ static void stm32_uart_get_dma_config(void)
|
|||
static struct dma_config uart5_dma_rx = UART5_DMA_CONFIG;
|
||||
uart_config[UART5_INDEX].dma_rx = &uart5_dma_rx;
|
||||
#endif
|
||||
#ifdef BSP_UART6_RX_USING_DMA
|
||||
uart_obj[UART6_INDEX].uart_dma_flag = 1;
|
||||
static struct dma_config uart6_dma_rx = UART6_DMA_CONFIG;
|
||||
uart_config[UART6_INDEX].dma_rx = &uart6_dma_rx;
|
||||
#endif
|
||||
#ifdef BSP_LPUART1_RX_USING_DMA
|
||||
uart_obj[LPUART1_INDEX].uart_dma_flag = 1;
|
||||
static struct dma_config lpuart1_dma_rx = LPUART1_DMA_CONFIG;
|
||||
|
|
Loading…
Reference in New Issue