uart_config.h 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. /*
  2. * Copyright (c) 2006-2021, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2018-10-30 SummerGift first version
  9. * 2019-01-05 zylx modify dma support
  10. * 2020-05-02 whj4674672 support stm32h7 uart dma
  11. */
  12. #ifndef __UART_CONFIG_H__
  13. #define __UART_CONFIG_H__
  14. #include <rtthread.h>
  15. #ifdef __cplusplus
  16. extern "C" {
  17. #endif
  18. #if defined(BSP_USING_UART1)
  19. #ifndef UART1_CONFIG
  20. #define UART1_CONFIG \
  21. { \
  22. .name = "uart1", \
  23. .Instance = USART1, \
  24. .irq_type = USART1_IRQn, \
  25. }
  26. #endif /* UART1_CONFIG */
  27. #endif /* BSP_USING_UART1 */
  28. #if defined(BSP_UART1_RX_USING_DMA)
  29. #ifndef UART1_DMA_RX_CONFIG
  30. #define UART1_DMA_RX_CONFIG \
  31. { \
  32. .Instance = UART1_RX_DMA_INSTANCE, \
  33. .request = UART1_RX_DMA_REQUEST, \
  34. .dma_rcc = UART1_RX_DMA_RCC, \
  35. .dma_irq = UART1_RX_DMA_IRQ, \
  36. }
  37. #endif /* UART1_DMA_RX_CONFIG */
  38. #endif /* BSP_UART1_RX_USING_DMA */
  39. #if defined(BSP_USING_UART2)
  40. #ifndef UART2_CONFIG
  41. #define UART2_CONFIG \
  42. { \
  43. .name = "uart2", \
  44. .Instance = USART2, \
  45. .irq_type = USART2_IRQn, \
  46. }
  47. #endif /* UART2_CONFIG */
  48. #endif /* BSP_USING_UART2 */
  49. #if defined(BSP_UART2_RX_USING_DMA)
  50. #ifndef UART2_DMA_RX_CONFIG
  51. #define UART2_DMA_RX_CONFIG \
  52. { \
  53. .Instance = UART2_RX_DMA_INSTANCE, \
  54. .request = UART2_RX_DMA_REQUEST, \
  55. .dma_rcc = UART2_RX_DMA_RCC, \
  56. .dma_irq = UART2_RX_DMA_IRQ, \
  57. }
  58. #endif /* UART2_DMA_RX_CONFIG */
  59. #endif /* BSP_UART2_RX_USING_DMA */
  60. #if defined(BSP_UART2_TX_USING_DMA)
  61. #ifndef UART2_DMA_TX_CONFIG
  62. #define UART2_DMA_TX_CONFIG \
  63. { \
  64. .Instance = UART2_TX_DMA_INSTANCE, \
  65. .request = UART2_TX_DMA_REQUEST, \
  66. .dma_rcc = UART2_TX_DMA_RCC, \
  67. .dma_irq = UART2_TX_DMA_IRQ, \
  68. }
  69. #endif /* UART2_DMA_TX_CONFIG */
  70. #endif /* BSP_UART2_TX_USING_DMA */
  71. #if defined(BSP_USING_UART3)
  72. #ifndef UART3_CONFIG
  73. #define UART3_CONFIG \
  74. { \
  75. .name = "uart3", \
  76. .Instance = USART3, \
  77. .irq_type = USART3_IRQn, \
  78. }
  79. #endif /* UART3_CONFIG */
  80. #endif /* BSP_USING_UART3 */
  81. #if defined(BSP_UART3_RX_USING_DMA)
  82. #ifndef UART3_DMA_RX_CONFIG
  83. #define UART3_DMA_RX_CONFIG \
  84. { \
  85. .Instance = UART3_RX_DMA_INSTANCE, \
  86. .request = UART3_RX_DMA_REQUEST, \
  87. .dma_rcc = UART3_RX_DMA_RCC, \
  88. .dma_irq = UART3_RX_DMA_IRQ, \
  89. }
  90. #endif /* UART3_DMA_RX_CONFIG */
  91. #endif /* BSP_UART3_RX_USING_DMA */
  92. #if defined(BSP_USING_UART4)
  93. #ifndef UART4_CONFIG
  94. #define UART4_CONFIG \
  95. { \
  96. .name = "uart4", \
  97. .Instance = UART4, \
  98. .irq_type = UART4_IRQn, \
  99. }
  100. #endif /* UART4_CONFIG */
  101. #endif /* BSP_USING_UART4 */
  102. #if defined(BSP_UART4_RX_USING_DMA)
  103. #ifndef UART4_DMA_RX_CONFIG
  104. #define UART4_DMA_RX_CONFIG \
  105. { \
  106. .Instance = UART4_RX_DMA_INSTANCE, \
  107. .request = UART4_RX_DMA_REQUEST, \
  108. .dma_rcc = UART4_RX_DMA_RCC, \
  109. .dma_irq = UART4_RX_DMA_IRQ, \
  110. }
  111. #endif /* UART4_DMA_RX_CONFIG */
  112. #endif /* BSP_UART4_RX_USING_DMA */
  113. #if defined(BSP_USING_UART5)
  114. #ifndef UART5_CONFIG
  115. #define UART5_CONFIG \
  116. { \
  117. .name = "uart5", \
  118. .Instance = UART5, \
  119. .irq_type = UART5_IRQn, \
  120. }
  121. #endif /* UART5_CONFIG */
  122. #endif /* BSP_USING_UART5 */
  123. #if defined(BSP_UART5_RX_USING_DMA)
  124. #ifndef UART5_DMA_RX_CONFIG
  125. #define UART5_DMA_RX_CONFIG \
  126. { \
  127. .Instance = UART5_RX_DMA_INSTANCE, \
  128. .request = UART5_RX_DMA_REQUEST, \
  129. .dma_rcc = UART5_RX_DMA_RCC, \
  130. .dma_irq = UART5_RX_DMA_IRQ, \
  131. }
  132. #endif /* UART5_DMA_RX_CONFIG */
  133. #endif /* BSP_UART5_RX_USING_DMA */
  134. #ifdef __cplusplus
  135. }
  136. #endif
  137. #endif