12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #ifndef __MYRADIO_GPIO_H_
- #define __MYRADIO_GPIO_H_
- #include <stdint.h>
- #include <stdbool.h>
- #include "stm32f10x.h"
- #include "stm32f10x_gpio.h"
- #include "stm32f10x_spi.h"
- #include "board.h"
- #define SPI_4LINE
- #define SPI_HARD
- typedef void (*RADIO_GPIO_CALLBACK)(uint8_t index);
- //-------------射频模块引脚映射到转接板排针---------------
- //SPI data IO
- #define RF_A5133_SDIO_PIN BOARD_PIN_SPI_MOSI //
- #define RF_A5133_SDIO_PORT BOARD_PORT_SPI_MOSI
- #define RF_A5133_SDIO RF_A5133_SDIO_PORT, RF_A5133_SDIO_PIN //
- //SPI clock input.
- #define RF_A5133_SCK_PIN BOARD_PIN_SPI_CLK //
- #define RF_A5133_SCK_PORT BOARD_PORT_SPI_CLK
- #define RF_A5133_SCK RF_A5133_SCK_PORT, RF_A5133_SCK_PIN //
- //SPI chip select input.
- #define RF_A5133_SCS_PIN BOARD_PIN_SPI_CSN //
- #define RF_A5133_SCS_PORT BOARD_PORT_SPI_CSN
- #define RF_A5133_SCS RF_A5133_SCS_PORT, RF_A5133_SCS_PIN //
- //General purpose input/output
- #define RF_A5133_GPIO1_PIN BOARD_PIN_SPI_GPIOD //
- #define RF_A5133_GPIO1_PORT BOARD_PORT_SPI_GPIOD
- #define RF_A5133_GPIO1 RF_A5133_GPIO1_PORT, RF_A5133_GPIO1_PIN //
- //General purpose input/output
- //可配置为SPI的MISO脚
- #define RF_A5133_GPIO2_PIN BOARD_PIN_SPI_MISO //
- #define RF_A5133_GPIO2_PORT BOARD_PORT_SPI_MISO
- #define RF_A5133_GPIO2 RF_A5133_GPIO2_PORT, RF_A5133_GPIO2_PIN //
- //General purpose input/output
- #define RF_A5133_CKO_PIN BOARD_PIN_SPI_GPIOA //
- #define RF_A5133_CKO_PORT BOARD_PORT_SPI_GPIOA
- #define RF_A5133_CKO RF_A5133_CKO_PORT, RF_A5133_CKO_PIN //
- //外部PA和LNA控制脚
- #define RF_EXTPA_CTR_PIN BOARD_PIN_SPI_GPIOE //
- #define RF_EXTPA_CTR_PORT BOARD_PORT_SPI_GPIOE
- #define RF_EXTPA_CTR RF_EXTPA_CTR_PORT, RF_EXTPA_CTR_PIN //
- #define RF_EXTPA_RE_PIN BOARD_PIN_SPI_GPIOG //
- #define RF_EXTPA_RE_PORT BOARD_PORT_SPI_GPIOG
- #define RF_EXTPA_RE RF_EXTPA_RE_PORT, RF_EXTPA_RE_PIN //
- #define RF_EXTPA_TE_PIN BOARD_PIN_SPI_GPIOF //
- #define RF_EXTPA_TE_PORT BOARD_PORT_SPI_GPIOF
- #define RF_EXTPA_TE RF_EXTPA_TE_PORT, RF_EXTPA_TE_PIN //
- //-------------射频模块引脚映射到转接板排针---------------END
- uint8_t READ_RF_A5133_GPIO1(void);
- void RF_A5133_GPIO1_H(void);
- void RF_A5133_GPIO1_L(void);
- void BOARD_A5133_SDIO_H(void);
- void BOARD_A5133_SDIO_L(void);
- void BOARD_A5133_SCS_H(void);
- void BOARD_A5133_SCS_L(void);
- void BOARD_A5133_SCK_H(void);
- void BOARD_A5133_SCK_L(void);
- void RF_EXT_PA_RE_H(void);
- void RF_EXT_PA_RE_L(void);
- void RF_EXT_PA_TE_H(void);
- void RF_EXT_PA_TE_L(void);
- void RF_EXT_PA_CTR_H(void);
- void RF_EXT_PA_CTR_L(void);
- void SET_A5133_GPIO1_IN(void);
- void SET_A5133_GPIO1_OUT(void);
- #define RF_EXT_PA_TO_TX() RF_EXT_PA_CTR_H();RF_EXT_PA_TE_H();RF_EXT_PA_RE_L()
- #define RF_EXT_PA_TO_RX() RF_EXT_PA_CTR_H();RF_EXT_PA_TE_L();RF_EXT_PA_RE_H()
- #define RF_EXT_PA_TO_IDLE() RF_EXT_PA_CTR_L();RF_EXT_PA_TE_L();RF_EXT_PA_RE_L()
- //-------------将封装的API映射到射频模块硬件层---------------
- void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb);
- void myRadio_gpio_intoLwPwr(bool sta);
- uint8_t myRadioSpi_rByte(void);
- void myRadioSpi_wByte(uint8_t byteToWrite);
- uint8_t myRadioSpi_rwByte(uint8_t byteToWrite);
- void myRadioSpi_wBuffer(uint8_t* pData, uint8_t len);
- void myRadioSpi_rBuffer(uint8_t* pData, uint8_t len);
- void myRadioSpi_rwBuffer(uint8_t* pDataR, uint8_t* pDataW, uint8_t len);
- void gpio_delayUs(uint32_t time);
- void gpio_delayMs(uint32_t time);
- #define SpiReadWrite(p) myRadioSpi_rwByte(p)
- #define SpiWriteData(p1, p2) myRadioSpi_wBuffer(p1, p2)
- #define SpiReadData(p1, p2) myRadioSpi_rBuffer(p1, p2)
- #define SpiWriteReadData(p1, p2, p3) myRadioSpi_rwBuffer(p2, p1, p3)
- //-------------将封装的API映射到射频模块硬件层---------------END
- #endif
|