spi_config.h 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /*
  2. * Copyright (c) 2006-2018, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2018-11-06 SummerGift first version
  9. */
  10. #ifndef __SPI_CONFIG_H__
  11. #define __SPI_CONFIG_H__
  12. #include <rtthread.h>
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. #ifdef BSP_USING_SPI1
  17. #ifndef SPI1_BUS_CONFIG
  18. #define SPI1_BUS_CONFIG \
  19. { \
  20. .Instance = SPI1, \
  21. .bus_name = "spi1", \
  22. }
  23. #endif /* SPI1_BUS_CONFIG */
  24. #endif /* BSP_USING_SPI1 */
  25. #ifdef BSP_SPI1_TX_USING_DMA
  26. #ifndef SPI1_TX_DMA_CONFIG
  27. #define SPI1_TX_DMA_CONFIG \
  28. { \
  29. .dma_rcc = SPI1_TX_DMA_RCC, \
  30. .Instance = SPI1_TX_DMA_INSTANCE, \
  31. .request = SPI1_TX_DMA_REQUEST, \
  32. .dma_irq = SPI1_TX_DMA_IRQ, \
  33. }
  34. #endif /* SPI1_TX_DMA_CONFIG */
  35. #endif /* BSP_SPI1_TX_USING_DMA */
  36. #ifdef BSP_SPI1_RX_USING_DMA
  37. #ifndef SPI1_RX_DMA_CONFIG
  38. #define SPI1_RX_DMA_CONFIG \
  39. { \
  40. .dma_rcc = SPI1_RX_DMA_RCC, \
  41. .Instance = SPI1_RX_DMA_INSTANCE, \
  42. .request = SPI1_RX_DMA_REQUEST, \
  43. .dma_irq = SPI1_RX_DMA_IRQ, \
  44. }
  45. #endif /* SPI1_RX_DMA_CONFIG */
  46. #endif /* BSP_SPI1_RX_USING_DMA */
  47. #ifdef BSP_USING_SPI2
  48. #define SPI2_BUS_CONFIG \
  49. { \
  50. .Instance = SPI2, \
  51. .bus_name = "spi2", \
  52. .dma_rx.dma_rcc = RCC_AHB1ENR_DMA1EN, \
  53. .dma_tx.dma_rcc = RCC_AHB1ENR_DMA1EN, \
  54. .dma_rx.Instance = DMA1_Channel4, \
  55. .dma_rx.request = DMA_REQUEST_1, \
  56. .dma_rx.dma_irq = DMA1_Channel4_IRQn, \
  57. .dma_tx.Instance = DMA1_Channel5, \
  58. .dma_tx.request = DMA_REQUEST_1, \
  59. .dma_tx.dma_irq = DMA1_Channel5_IRQn, \
  60. }
  61. #endif
  62. #ifdef BSP_USING_SPI3
  63. #define SPI3_BUS_CONFIG \
  64. { \
  65. .Instance = SPI3, \
  66. .bus_name = "spi3", \
  67. .dma_rx.dma_rcc = RCC_AHB1ENR_DMA2EN, \
  68. .dma_tx.dma_rcc = RCC_AHB1ENR_DMA2EN, \
  69. .dma_rx.Instance = DMA2_Channel1, \
  70. .dma_rx.request = DMA_REQUEST_3, \
  71. .dma_rx.dma_irq = DMA2_Channel1_IRQn, \
  72. .dma_tx.Instance = DMA2_Channel2, \
  73. .dma_tx.request = DMA_REQUEST_3, \
  74. .dma_tx.dma_irq = DMA2_Channel2_IRQn, \
  75. }
  76. #endif
  77. #ifdef __cplusplus
  78. }
  79. #endif
  80. #endif /*__SPI_CONFIG_H__ */