uart_config.h 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  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-03 zylx modify dma support
  10. */
  11. #ifndef __UART_CONFIG_H__
  12. #define __UART_CONFIG_H__
  13. #include <rtthread.h>
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17. #if defined(BSP_USING_UART1)
  18. #ifndef UART1_CONFIG
  19. #define UART1_CONFIG \
  20. { \
  21. .name = "uart1", \
  22. .Instance = USART1, \
  23. .irq_type = USART1_IRQn, \
  24. }
  25. #endif /* UART1_CONFIG */
  26. #if defined(BSP_UART1_RX_USING_DMA)
  27. #ifndef UART1_DMA_RX_CONFIG
  28. #define UART1_DMA_RX_CONFIG \
  29. { \
  30. .Instance = UART1_RX_DMA_INSTANCE, \
  31. .channel = UART1_RX_DMA_CHANNEL, \
  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. .channel = UART1_TX_DMA_CHANNEL, \
  43. .dma_rcc = UART1_TX_DMA_RCC, \
  44. .dma_irq = UART1_TX_DMA_IRQ, \
  45. }
  46. #endif /* UART1_DMA_TX_CONFIG */
  47. #endif /* BSP_UART1_TX_USING_DMA */
  48. #endif /* BSP_USING_UART1 */
  49. #if defined(BSP_USING_UART2)
  50. #ifndef UART2_CONFIG
  51. #define UART2_CONFIG \
  52. { \
  53. .name = "uart2", \
  54. .Instance = USART2, \
  55. .irq_type = USART2_IRQn, \
  56. }
  57. #endif /* UART2_CONFIG */
  58. #if defined(BSP_UART2_RX_USING_DMA)
  59. #ifndef UART2_DMA_RX_CONFIG
  60. #define UART2_DMA_RX_CONFIG \
  61. { \
  62. .Instance = UART2_RX_DMA_INSTANCE, \
  63. .channel = UART2_RX_DMA_CHANNEL, \
  64. .dma_rcc = UART2_RX_DMA_RCC, \
  65. .dma_irq = UART2_RX_DMA_IRQ, \
  66. }
  67. #endif /* UART2_DMA_RX_CONFIG */
  68. #endif /* BSP_UART2_RX_USING_DMA */
  69. #if defined(BSP_UART2_TX_USING_DMA)
  70. #ifndef UART2_DMA_TX_CONFIG
  71. #define UART2_DMA_TX_CONFIG \
  72. { \
  73. .Instance = UART2_TX_DMA_INSTANCE, \
  74. .channel = UART2_TX_DMA_CHANNEL, \
  75. .dma_rcc = UART2_TX_DMA_RCC, \
  76. .dma_irq = UART2_TX_DMA_IRQ, \
  77. }
  78. #endif /* UART2_DMA_TX_CONFIG */
  79. #endif /* BSP_UART2_TX_USING_DMA */
  80. #endif /* BSP_USING_UART2 */
  81. #if defined(BSP_USING_UART3)
  82. #ifndef UART3_CONFIG
  83. #define UART3_CONFIG \
  84. { \
  85. .name = "uart3", \
  86. .Instance = USART3, \
  87. .irq_type = USART3_IRQn, \
  88. }
  89. #endif /* UART3_CONFIG */
  90. #if defined(BSP_UART3_RX_USING_DMA)
  91. #ifndef UART3_DMA_RX_CONFIG
  92. #define UART3_DMA_RX_CONFIG \
  93. { \
  94. .Instance = UART3_RX_DMA_INSTANCE, \
  95. .channel = UART3_RX_DMA_CHANNEL, \
  96. .dma_rcc = UART3_RX_DMA_RCC, \
  97. .dma_irq = UART3_RX_DMA_IRQ, \
  98. }
  99. #endif /* UART3_DMA_RX_CONFIG */
  100. #endif /* BSP_UART3_RX_USING_DMA */
  101. #if defined(BSP_UART3_TX_USING_DMA)
  102. #ifndef UART3_DMA_TX_CONFIG
  103. #define UART3_DMA_TX_CONFIG \
  104. { \
  105. .Instance = UART3_TX_DMA_INSTANCE, \
  106. .channel = UART3_TX_DMA_CHANNEL, \
  107. .dma_rcc = UART3_TX_DMA_RCC, \
  108. .dma_irq = UART3_TX_DMA_IRQ, \
  109. }
  110. #endif /* UART3_DMA_TX_CONFIG */
  111. #endif /* BSP_UART3_TX_USING_DMA */
  112. #endif /* BSP_USING_UART3 */
  113. #if defined(BSP_USING_UART4)
  114. #ifndef UART4_CONFIG
  115. #define UART4_CONFIG \
  116. { \
  117. .name = "uart4", \
  118. .Instance = UART4, \
  119. .irq_type = UART4_IRQn, \
  120. }
  121. #endif /* UART4_CONFIG */
  122. #if defined(BSP_UART4_RX_USING_DMA)
  123. #ifndef UART4_DMA_RX_CONFIG
  124. #define UART4_DMA_RX_CONFIG \
  125. { \
  126. .Instance = UART4_RX_DMA_INSTANCE, \
  127. .channel = UART4_RX_DMA_CHANNEL, \
  128. .dma_rcc = UART4_RX_DMA_RCC, \
  129. .dma_irq = UART4_RX_DMA_IRQ, \
  130. }
  131. #endif /* UART4_DMA_RX_CONFIG */
  132. #endif /* BSP_UART4_RX_USING_DMA */
  133. #if defined(BSP_UART4_TX_USING_DMA)
  134. #ifndef UART4_DMA_TX_CONFIG
  135. #define UART4_DMA_TX_CONFIG \
  136. { \
  137. .Instance = UART4_TX_DMA_INSTANCE, \
  138. .channel = UART4_TX_DMA_CHANNEL, \
  139. .dma_rcc = UART4_TX_DMA_RCC, \
  140. .dma_irq = UART4_TX_DMA_IRQ, \
  141. }
  142. #endif /* UART4_DMA_TX_CONFIG */
  143. #endif /* BSP_UART4_RX_USING_DMA */
  144. #endif /* BSP_USING_UART4 */
  145. #if defined(BSP_USING_UART5)
  146. #ifndef UART5_CONFIG
  147. #define UART5_CONFIG \
  148. { \
  149. .name = "uart5", \
  150. .Instance = UART5, \
  151. .irq_type = UART5_IRQn, \
  152. }
  153. #endif /* UART5_CONFIG */
  154. #if defined(BSP_UART5_RX_USING_DMA)
  155. #ifndef UART5_DMA_RX_CONFIG
  156. #define UART5_DMA_RX_CONFIG \
  157. { \
  158. .Instance = UART5_RX_DMA_INSTANCE, \
  159. .channel = UART5_RX_DMA_CHANNEL, \
  160. .dma_rcc = UART5_RX_DMA_RCC, \
  161. .dma_irq = UART5_RX_DMA_IRQ, \
  162. }
  163. #endif /* UART5_DMA_RX_CONFIG */
  164. #endif /* BSP_UART5_RX_USING_DMA */
  165. #if defined(BSP_UART5_TX_USING_DMA)
  166. #ifndef UART5_DMA_TX_CONFIG
  167. #define UART5_DMA_TX_CONFIG \
  168. { \
  169. .Instance = UART5_TX_DMA_INSTANCE, \
  170. .channel = UART5_TX_DMA_CHANNEL, \
  171. .dma_rcc = UART5_TX_DMA_RCC, \
  172. .dma_irq = UART5_TX_DMA_IRQ, \
  173. }
  174. #endif /* UART5_DMA_TX_CONFIG */
  175. #endif /* BSP_UART5_TX_USING_DMA */
  176. #endif /* BSP_USING_UART5 */
  177. #if defined(BSP_USING_UART6)
  178. #ifndef UART6_CONFIG
  179. #define UART6_CONFIG \
  180. { \
  181. .name = "uart6", \
  182. .Instance = USART6, \
  183. .irq_type = USART6_IRQn, \
  184. }
  185. #endif /* UART6_CONFIG */
  186. #if defined(BSP_UART6_RX_USING_DMA)
  187. #ifndef UART6_DMA_RX_CONFIG
  188. #define UART6_DMA_RX_CONFIG \
  189. { \
  190. .Instance = UART6_RX_DMA_INSTANCE, \
  191. .channel = UART6_RX_DMA_CHANNEL, \
  192. .dma_rcc = UART6_RX_DMA_RCC, \
  193. .dma_irq = UART6_RX_DMA_IRQ, \
  194. }
  195. #endif /* UART6_DMA_RX_CONFIG */
  196. #endif /* BSP_UART6_RX_USING_DMA */
  197. #if defined(BSP_UART6_TX_USING_DMA)
  198. #ifndef UART6_DMA_TX_CONFIG
  199. #define UART6_DMA_TX_CONFIG \
  200. { \
  201. .Instance = UART6_TX_DMA_INSTANCE, \
  202. .channel = UART6_TX_DMA_CHANNEL, \
  203. .dma_rcc = UART6_TX_DMA_RCC, \
  204. .dma_irq = UART6_TX_DMA_IRQ, \
  205. }
  206. #endif /* UART6_DMA_TX_CONFIG */
  207. #endif /* BSP_UART6_TX_USING_DMA */
  208. #endif /* BSP_USING_UART6 */
  209. #ifdef __cplusplus
  210. }
  211. #endif
  212. #endif