myRadio_gpio.h 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #ifndef __MYRADIO_GPIO_H_
  2. #define __MYRADIO_GPIO_H_
  3. #include <stdint.h>
  4. #include "common.h"
  5. #ifndef SPI_SOFT_3LINE
  6. #define SPI_HARD
  7. #endif
  8. // #define SPI_SOFT_3LINE
  9. typedef void (*RADIO_GPIO_CALLBACK)(uint8_t index);
  10. //-------------射频模块引脚映射到转接板排针---------------
  11. #define BOARD_PIN_SPI_CLK GPIO_PIN_0 //
  12. #define BOARD_PORT_SPI_CLK GPIOB //
  13. #define BOARD_GPIO_SPI_CLK BOARD_PORT_SPI_CLK, BOARD_PIN_SPI_CLK //
  14. #define BOARD_PIN_SPI_MISO GPIO_PIN_1 //
  15. #define BOARD_PORT_SPI_MISO GPIOA //
  16. #define BOARD_GPIO_SPI_MISO BOARD_PORT_SPI_MISO, BOARD_PIN_SPI_MISO //
  17. #define BOARD_PIN_SPI_MOSI GPIO_PIN_0 //
  18. #define BOARD_PORT_SPI_MOSI GPIOA //
  19. #define BOARD_GPIO_SPI_MOSI BOARD_PORT_SPI_MOSI, BOARD_PIN_SPI_MOSI //
  20. #define BOARD_PIN_SPI_CSN GPIO_PIN_1 //
  21. #define BOARD_PORT_SPI_CSN GPIOB //
  22. #define BOARD_GPIO_SPI_CSN BOARD_PORT_SPI_CSN, BOARD_PIN_SPI_CSN //
  23. //用于射频中断响应
  24. #define RF_PAN3029_IRQ_PIN GPIO_PIN_2 //
  25. #define RF_PAN3029_IRQ_PORT GPIOB
  26. #define RF_PAN3029_IRQ RF_PAN3029_IRQ_PORT, RF_PAN3029_IRQ_PIN //
  27. //
  28. // #define RF_PAN3029_NRST_PIN GPIO_PIN_1 //
  29. // #define RF_PAN3029_NRST_PORT GPIOB
  30. // #define RF_PAN3029_NRST RF_PAN3029_NRST_PORT, RF_PAN3029_NRST_PIN //
  31. //
  32. // #define RF_PAN3029_IO3_PIN GPIO_PIN_5 //
  33. // #define RF_PAN3029_IO3_PORT GPIOC
  34. // #define RF_PAN3029_IO3 RF_PAN3029_IO3_PORT, RF_PAN3029_IO3_PIN //
  35. //
  36. #define RF_PAN3029_IO11_PIN GPIO_PIN_3 //
  37. #define RF_PAN3029_IO11_PORT GPIOA
  38. #define RF_PAN3029_IO11 RF_PAN3029_IO11_PORT, RF_PAN3029_IO11_PIN //
  39. //用于大功率模块的PA和LNA控制脚
  40. // #define RF_EXTPA_RE_PIN GPIO_PIN_10 //
  41. // #define RF_EXTPA_RE_PORT GPIOB
  42. // #define RF_EXTPA_RE RF_EXTPA_RE_PORT, RF_EXTPA_RE_PIN //
  43. // #define RF_EXTPA_TE_PIN GPIO_PIN_11 //
  44. // #define RF_EXTPA_TE_PORT GPIOB
  45. // #define RF_EXTPA_TE RF_EXTPA_TE_PORT, RF_EXTPA_TE_PIN //
  46. //-------------射频模块引脚映射到转接板排针---------------END
  47. void RF_PAN3029_NRST_H(void);
  48. void RF_PAN3029_NRST_L(void);
  49. uint8_t READ_RF_PAN3029_IRQ(void);
  50. void RF_PAN3029_IRQ_H(void);
  51. void RF_PAN3029_IRQ_L(void);
  52. uint8_t READ_RF_PAN3029_IO11(void);
  53. void RF_EXT_PA_RE_H(void);
  54. void RF_EXT_PA_RE_L(void);
  55. void RF_EXT_PA_TE_H(void);
  56. void RF_EXT_PA_TE_L(void);
  57. #define RF_EXT_PA_TO_TX() //RF_EXT_PA_TE_H();RF_EXT_PA_RE_L()
  58. #define RF_EXT_PA_TO_RX() //RF_EXT_PA_TE_L();RF_EXT_PA_RE_H()
  59. #define RF_EXT_PA_TO_IDLE() //RF_EXT_PA_TE_L();RF_EXT_PA_RE_L()
  60. void BOARD_SPI_NSS_H(void);
  61. void BOARD_SPI_NSS_L(void);
  62. void BOARD_SPI_SCK_H(void);
  63. void BOARD_SPI_SCK_L(void);
  64. void BOARD_SPI_MISO_H(void);
  65. void BOARD_SPI_MISO_L(void);
  66. void BOARD_SPI_MOSI_H(void);
  67. void BOARD_SPI_MOSI_L(void);
  68. uint8_t READ_BOARD_SPI_MISO(void);
  69. //-------------将封装的API映射到射频模块硬件层---------------
  70. void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb);
  71. uint8_t myRadioSpi_rwByte(uint8_t byteToWrite);
  72. void myRadioSpi_wBuffer(uint8_t* pData, uint8_t len);
  73. void myRadioSpi_rBuffer(uint8_t* pData, uint8_t len);
  74. #define SpiReadWrite(p) myRadioSpi_rwByte(p)
  75. #define SpiWriteData(p1, p2) myRadioSpi_wBuffer(p2, p1)
  76. #define SpiReadData(p1, p2) myRadioSpi_rBuffer(p2, p1)
  77. //-------------将封装的API映射到射频模块硬件层---------------END
  78. #endif