发送部分我感觉应该没啥事
我就把接收的函数部分的代码传上来
[C]
纯文本查看 复制代码
u8 NRF_Rx_Dat(u8 *rxbuf){u8 state;int i;//à-¸ßòy½Åê1Äü·¢ËíÄ£ê½CE_High();state=SPI_NRF_ReadReg(STATUS); SPI_NRF_WriteReg(NRF_WRITE_REG+STATUS,state);if(state&RX_OK){GPIO_SetBits(GPIOD,GPIO_Pin_0);SPI_NRF_ReadBuf(RD_RX_PLOAD,rxbuf,RX_PLOAD_WIDTH);SPI_NRF_WriteReg(FLUSH_RX,0xFF);GPIO_ResetBits(GPIOD,GPIO_Pin_0);return SUCCESS;}else{GPIO_SetBits(GPIOD,GPIO_Pin_0);GPIO_ResetBits(GPIOD,GPIO_Pin_0);return ERROR;}
以及接收的部分配置(发送部分的参数和他一样 稍微变化)
[C]
纯文本查看 复制代码
void NRF_RX_Mode(void){int i;CE_Low();SPI_NRF_WriteBuf(NRF_WRITE_REG+TX_ADDR,(u8*)TX_ADDRESS,TX_ADR_WIDTH);SPI_NRF_WriteBuf(NRF_WRITE_REG+RX_ADDR_P0,(u8*)RX_ADDRESS,RX_ADR_WIDTH);SPI_NRF_WriteReg(NRF_WRITE_REG+EN_AA,0x01);SPI_NRF_WriteReg(NRF_WRITE_REG+EN_RXADDR,0x01);SPI_NRF_WriteReg(NRF_WRITE_REG+RF_CH,40);SPI_NRF_WriteReg(NRF_WRITE_REG+RX_PW_P0,RX_PLOAD_WIDTH);SPI_NRF_WriteReg(NRF_WRITE_REG+RF_SETUP,0x24);SPI_NRF_WriteReg(NRF_WRITE_REG+CONFIG, 0x0f);CE_High();}
发送部分我感觉应该没啥事
我就把接收的函数部分的代码传上来
[C] 纯文本查看 复制代码
u8 NRF_Rx_Dat(u8 *rxbuf){u8 state;int i;//à-¸ßòy½Åê1Äü·¢ËíÄ£ê½CE_High();state=SPI_NRF_ReadReg(STATUS); SPI_NRF_WriteReg(NRF_WRITE_REG+STATUS,state);if(state&RX_OK){GPIO_SetBits(GPIOD,GPIO_Pin_0);SPI_NRF_ReadBuf(RD_RX_PLOAD,rxbuf,RX_PLOAD_WIDTH);SPI_NRF_WriteReg(FLUSH_RX,0xFF);GPIO_ResetBits(GPIOD,GPIO_Pin_0);return SUCCESS;}else{GPIO_SetBits(GPIOD,GPIO_Pin_0);GPIO_ResetBits(GPIOD,GPIO_Pin_0);return ERROR;}
以及接收的部分配置(发送部分的参数和他一样 稍微变化)
[C] 纯文本查看 复制代码
void NRF_RX_Mode(void){int i;CE_Low();SPI_NRF_WriteBuf(NRF_WRITE_REG+TX_ADDR,(u8*)TX_ADDRESS,TX_ADR_WIDTH);SPI_NRF_WriteBuf(NRF_WRITE_REG+RX_ADDR_P0,(u8*)RX_ADDRESS,RX_ADR_WIDTH);SPI_NRF_WriteReg(NRF_WRITE_REG+EN_AA,0x01);SPI_NRF_WriteReg(NRF_WRITE_REG+EN_RXADDR,0x01);SPI_NRF_WriteReg(NRF_WRITE_REG+RF_CH,40);SPI_NRF_WriteReg(NRF_WRITE_REG+RX_PW_P0,RX_PLOAD_WIDTH);SPI_NRF_WriteReg(NRF_WRITE_REG+RF_SETUP,0x24);SPI_NRF_WriteReg(NRF_WRITE_REG+CONFIG, 0x0f);CE_High();}
举报