#ifndef __MYRADIO_GPIO_H_ #define __MYRADIO_GPIO_H_ #include #include #include "stm32f10x.h" #include "stm32f10x_gpio.h" #include "stm32f10x_spi.h" #include "board.h" #ifndef SPI_HARD #define SPI_HARD #endif typedef void (*RADIO_GPIO_CALLBACK)(uint8_t index); //-------------射频模块引脚映射到转接板排针--------------- //IO1用于发射中断响应判断,@radio.c->RF_Config #define RF_CMT2300A_GPIO1_PIN BOARD_PIN_SPI_GPIOB // #define RF_CMT2300A_GPIO1_PORT BOARD_PORT_SPI_GPIOB #define RF_CMT2300A_GPIO1 RF_CMT2300A_GPIO1_PORT, RF_CMT2300A_GPIO1_PIN // //IO1用于接收中断响应判断,@radio.c->RF_Config #define RF_CMT2300A_GPIO2_PIN BOARD_PIN_SPI_GPIOC // #define RF_CMT2300A_GPIO2_PORT BOARD_PORT_SPI_GPIOC #define RF_CMT2300A_GPIO2 RF_CMT2300A_GPIO2_PORT, RF_CMT2300A_GPIO2_PIN // //用于接收灵敏度测试data out输出映射,@myRadio.c->myRadio_setCtrl->RADIO_EXT_CONTROL_RX_SENSITIVITY #define RF_CMT2300A_GPIO3_PIN BOARD_PIN_SPI_GPIOD // #define RF_CMT2300A_GPIO3_PORT BOARD_PORT_SPI_GPIOD #define RF_CMT2300A_GPIO3 RF_CMT2300A_GPIO3_PORT, RF_CMT2300A_GPIO3_PIN // // #define RF_CMT2300A_FCSB_PIN BOARD_PIN_SPI_GPIOA // #define RF_CMT2300A_FCSB_PORT BOARD_PORT_SPI_GPIOA #define RF_CMT2300A_FCSB RF_CMT2300A_FCSB_PORT, RF_CMT2300A_FCSB_PIN // //外部PA和LNA控制脚 #define RF_EXTPA_RE_PIN BOARD_PIN_SPI_GPIOE // #define RF_EXTPA_RE_PORT BOARD_PORT_SPI_GPIOE #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_CMT2300A_GPIO1(void); uint8_t READ_RF_CMT2300A_GPIO2(void); uint8_t READ_RF_CMT2300A_GPIO3(void); void RF_CMT2300A_GPIO1_H(void); void RF_CMT2300A_GPIO1_L(void); void RF_CMT2300A_GPIO2_H(void); void RF_CMT2300A_GPIO2_L(void); void RF_CMT2300A_GPIO3_H(void); void RF_CMT2300A_GPIO3_L(void); void RF_CMT2300A_FCSB_H(void); void RF_CMT2300A_FCSB_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); #define RF_EXT_PA_TO_TX() RF_EXT_PA_TE_H();RF_EXT_PA_RE_L() #define RF_EXT_PA_TO_RX() RF_EXT_PA_TE_L();RF_EXT_PA_RE_H() #define RF_EXT_PA_TO_IDLE() RF_EXT_PA_TE_L();RF_EXT_PA_RE_L() void BOARD_SPI_NSS_H(void); void BOARD_SPI_NSS_L(void); //-------------将封装的API映射到射频模块硬件层--------------- void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb); void myRadio_gpio_intoLwPwr(bool sta); uint8_t myRadioSpi_read(void); void myRadioSpi_write(uint8_t byteToWrite); void myRadio_delayMs(uint32_t delayMs); void myRadio_delayUs(uint32_t delayUs); #define Cmt2300_ReadGpio1() READ_RF_CMT2300A_GPIO1() #define Cmt2300_ReadGpio2() READ_RF_CMT2300A_GPIO2() #define Cmt2300_ReadGpio3() READ_RF_CMT2300A_GPIO3() #define cmt_spi3_fcsb_1() RF_CMT2300A_FCSB_H() #define cmt_spi3_fcsb_0() RF_CMT2300A_FCSB_L() #define cmt_spi3_csb_1() BOARD_SPI_NSS_H() #define cmt_spi3_csb_0() BOARD_SPI_NSS_L() #define cmt_spi3_scl_1() BOARD_SPI_SCK_H() #define cmt_spi3_scl_0() BOARD_SPI_SCK_L() #define cmt_spi3_sda_1() BOARD_SPI_MISO_H() #define cmt_spi3_sda_0() BOARD_SPI_MISO_L() #define cmt_spi3_sda_in() SET_BOARD_SPI_MISO_IN() #define cmt_spi3_sda_out() SET_BOARD_SPI_MISO_OUT() #define cmt_spi3_scl_out() SET_BOARD_SPI_CLK_OUT() #define cmt_spi3_sda_read() READ_BOARD_SPI_MISO() #define cmt_spi3_recv() myRadioSpi_read() #define cmt_spi3_send(p) myRadioSpi_write(p) #define Cmt2300_DelayMs(p) myRadio_delayMs(p) #define Cmt2300_DelayUs(p) myRadio_delayUs(p) #define cmt_spi3_delay() myRadio_delayUs(1) #define cmt_spi3_delay_us() myRadio_delayUs(1) //-------------将封装的API映射到射频模块硬件层---------------END #endif