myRadio_gpio.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #ifndef __MYRADIO_GPIO_H_
  2. #define __MYRADIO_GPIO_H_
  3. #include <stdint.h>
  4. #include "stm32f10x.h"
  5. #include "stm32f10x_gpio.h"
  6. #include "stm32f10x_spi.h"
  7. #include "board.h"
  8. #ifndef SPI_HARD
  9. #define SPI_HARD
  10. #endif
  11. typedef void (*RADIO_GPIO_CALLBACK)(uint8_t index);
  12. //-------------射频模块引脚映射到转接板排针---------------
  13. //IO1用于射频中断响应
  14. #define RF_24x1_IRQ_PIN BOARD_PIN_SPI_GPIOC //
  15. #define RF_24x1_IRQ_PORT BOARD_PORT_SPI_GPIOC
  16. #define RF_24x1_IRQ RF_24x1_IRQ_PORT, RF_24x1_IRQ_PIN //
  17. //
  18. #define RF_24x1_CE_PIN BOARD_PIN_SPI_GPIOA //
  19. #define RF_24x1_CE_PORT BOARD_PORT_SPI_GPIOA
  20. #define RF_24x1_CE RF_24x1_CE_PORT, RF_24x1_CE_PIN //
  21. //外部PA和LNA控制脚
  22. #define RF_EXTPA_RE_PIN BOARD_PIN_SPI_GPIOG //
  23. #define RF_EXTPA_RE_PORT BOARD_PORT_SPI_GPIOG
  24. #define RF_EXTPA_RE RF_EXTPA_RE_PORT, RF_EXTPA_RE_PIN //
  25. #define RF_EXTPA_TE_PIN BOARD_PIN_SPI_GPIOF //
  26. #define RF_EXTPA_TE_PORT BOARD_PORT_SPI_GPIOF
  27. #define RF_EXTPA_TE RF_EXTPA_TE_PORT, RF_EXTPA_TE_PIN //
  28. //-------------射频模块引脚映射到转接板排针---------------END
  29. uint8_t READ_24x1_IRQ_IRQ(void);
  30. void RF_24x1_CE_H(void);
  31. void RF_24x1_CE_L(void);
  32. void RF_EXT_PA_RE_H(void);
  33. void RF_EXT_PA_RE_L(void);
  34. void RF_EXT_PA_TE_H(void);
  35. void RF_EXT_PA_TE_L(void);
  36. #define RF_EXT_PA_TO_TX() RF_EXT_PA_TE_H();RF_EXT_PA_RE_L()
  37. #define RF_EXT_PA_TO_RX() RF_EXT_PA_TE_L();RF_EXT_PA_RE_H()
  38. #define RF_EXT_PA_TO_IDLE() RF_EXT_PA_TE_L();RF_EXT_PA_RE_L()
  39. void BOARD_SPI_NSS_H(void);
  40. void BOARD_SPI_NSS_L(void);
  41. //-------------将封装的API映射到射频模块硬件层---------------
  42. void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb);
  43. uint8_t myRadioSpi_rwByte(uint8_t byteToWrite);
  44. void myRadioSpi_wBuffer(uint8_t* pData, uint8_t len);
  45. void myRadioSpi_rBuffer(uint8_t* pData, uint8_t len);
  46. #define SpiReadWrite(p) myRadioSpi_rwByte(p)
  47. #define SpiWriteData(p1, p2) myRadioSpi_wBuffer(p1, p2)
  48. #define SpiReadData(p1, p2) myRadioSpi_rBuffer(p1, p2)
  49. #define RF_SPI_NSS_H() BOARD_SPI_NSS_H()
  50. #define RF_SPI_NSS_L() BOARD_SPI_NSS_L()
  51. #define RF_NRF_CE_H() RF_24x1_CE_H()
  52. #define RF_NRF_CE_L() RF_24x1_CE_L()
  53. //-------------将封装的API映射到射频模块硬件层---------------END
  54. #endif