123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- #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"
- #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
|