uart_config.h 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  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 BalanceTWK first version
  9. * 2019-01-05 SummerGift modify DMA support
  10. */
  11. #ifndef __UART_CONFIG_H__
  12. #define __UART_CONFIG_H__
  13. #include <rtthread.h>
  14. #include "dma_config.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. #if defined(BSP_UART1_RX_USING_DMA)
  28. #ifndef UART1_DMA_RX_CONFIG
  29. #define UART1_DMA_RX_CONFIG \
  30. { \
  31. .Instance = UART1_RX_DMA_INSTANCE, \
  32. .dma_rcc = UART1_RX_DMA_RCC, \
  33. .dma_irq = UART1_RX_DMA_IRQ, \
  34. }
  35. #endif /* UART1_DMA_RX_CONFIG */
  36. #endif /* BSP_UART1_RX_USING_DMA */
  37. #if defined(BSP_UART1_TX_USING_DMA)
  38. #ifndef UART1_DMA_TX_CONFIG
  39. #define UART1_DMA_TX_CONFIG \
  40. { \
  41. .Instance = UART1_TX_DMA_INSTANCE, \
  42. .dma_rcc = UART1_TX_DMA_RCC, \
  43. .dma_irq = UART1_TX_DMA_IRQ, \
  44. }
  45. #endif /* UART1_DMA_TX_CONFIG */
  46. #endif /* BSP_UART1_TX_USING_DMA */
  47. #endif /* BSP_USING_UART1 */
  48. #if defined(BSP_USING_UART2)
  49. #ifndef UART2_CONFIG
  50. #define UART2_CONFIG \
  51. { \
  52. .name = "uart2", \
  53. .Instance = USART2, \
  54. .irq_type = USART2_IRQn, \
  55. }
  56. #endif /* UART2_CONFIG */
  57. #if defined(BSP_UART2_RX_USING_DMA)
  58. #ifndef UART2_DMA_RX_CONFIG
  59. #define UART2_DMA_RX_CONFIG \
  60. { \
  61. .Instance = UART2_RX_DMA_INSTANCE, \
  62. .dma_rcc = UART2_RX_DMA_RCC, \
  63. .dma_irq = UART2_RX_DMA_IRQ, \
  64. }
  65. #endif /* UART2_DMA_RX_CONFIG */
  66. #endif /* BSP_UART2_RX_USING_DMA */
  67. #if defined(BSP_UART2_TX_USING_DMA)
  68. #ifndef UART2_DMA_TX_CONFIG
  69. #define UART2_DMA_TX_CONFIG \
  70. { \
  71. .Instance = UART2_TX_DMA_INSTANCE, \
  72. .dma_rcc = UART2_TX_DMA_RCC, \
  73. .dma_irq = UART2_TX_DMA_IRQ, \
  74. }
  75. #endif /* UART2_DMA_TX_CONFIG */
  76. #endif /* BSP_UART2_TX_USING_DMA */
  77. #endif /* BSP_USING_UART2 */
  78. #if defined(BSP_USING_UART3)
  79. #ifndef UART3_CONFIG
  80. #define UART3_CONFIG \
  81. { \
  82. .name = "uart3", \
  83. .Instance = USART3, \
  84. .irq_type = USART3_IRQn, \
  85. }
  86. #endif /* UART3_CONFIG */
  87. #if defined(BSP_UART3_RX_USING_DMA)
  88. #ifndef UART3_DMA_RX_CONFIG
  89. #define UART3_DMA_RX_CONFIG \
  90. { \
  91. .Instance = UART3_RX_DMA_INSTANCE, \
  92. .dma_rcc = UART3_RX_DMA_RCC, \
  93. .dma_irq = UART3_RX_DMA_IRQ, \
  94. }
  95. #endif /* UART3_DMA_RX_CONFIG */
  96. #endif /* BSP_UART3_RX_USING_DMA */
  97. #if defined(BSP_UART3_TX_USING_DMA)
  98. #ifndef UART3_DMA_TX_CONFIG
  99. #define UART3_DMA_TX_CONFIG \
  100. { \
  101. .Instance = UART3_TX_DMA_INSTANCE, \
  102. .dma_rcc = UART3_TX_DMA_RCC, \
  103. .dma_irq = UART3_TX_DMA_IRQ, \
  104. }
  105. #endif /* UART3_DMA_TX_CONFIG */
  106. #endif /* BSP_UART3_TX_USING_DMA */
  107. #endif /* BSP_USING_UART3 */
  108. #if defined(BSP_USING_UART4)
  109. #ifndef UART4_CONFIG
  110. #define UART4_CONFIG \
  111. { \
  112. .name = "uart4", \
  113. .Instance = UART4, \
  114. .irq_type = UART4_IRQn, \
  115. }
  116. #endif /* UART4_CONFIG */
  117. #if defined(BSP_UART4_RX_USING_DMA)
  118. #ifndef UART4_DMA_RX_CONFIG
  119. #define UART4_DMA_RX_CONFIG \
  120. { \
  121. .Instance = UART4_RX_DMA_INSTANCE, \
  122. .dma_rcc = UART4_RX_DMA_RCC, \
  123. .dma_irq = UART4_RX_DMA_IRQ, \
  124. }
  125. #endif /* UART4_DMA_RX_CONFIG */
  126. #endif /* BSP_UART4_RX_USING_DMA */
  127. #if defined(BSP_UART4_TX_USING_DMA)
  128. #ifndef UART4_DMA_TX_CONFIG
  129. #define UART4_DMA_TX_CONFIG \
  130. { \
  131. .Instance = UART4_TX_DMA_INSTANCE, \
  132. .dma_rcc = UART4_TX_DMA_RCC, \
  133. .dma_irq = UART4_TX_DMA_IRQ, \
  134. }
  135. #endif /* UART4_DMA_TX_CONFIG */
  136. #endif /* BSP_UART4_TX_USING_DMA */
  137. #endif /* BSP_USING_UART4 */
  138. #if defined(BSP_USING_UART5)
  139. #ifndef UART5_CONFIG
  140. #define UART5_CONFIG \
  141. { \
  142. .name = "uart5", \
  143. .Instance = UART5, \
  144. .irq_type = UART5_IRQn, \
  145. }
  146. #endif /* UART5_CONFIG */
  147. #endif /* BSP_USING_UART5 */
  148. #if defined(BSP_UART5_RX_USING_DMA)
  149. #ifndef UART5_DMA_RX_CONFIG
  150. #define UART5_DMA_RX_CONFIG \
  151. { \
  152. .Instance = DMA_NOT_AVAILABLE, \
  153. }
  154. #endif /* UART5_DMA_RX_CONFIG */
  155. #endif /* BSP_UART5_RX_USING_DMA */
  156. #ifdef __cplusplus
  157. }
  158. #endif
  159. #endif