初级会员

- 积分
- 79
- 金钱
- 79
- 注册时间
- 2018-6-18
- 在线时间
- 18 小时
|
发表于 2018-7-4 15:47:12
|
显示全部楼层
程序有问题,你试着调试一下,就会发现程序卡在了
void halRfSendPacket(u8 *txBuffer, u8 size)
{
halSpiStrobe(CCxxx0_SIDLE); //进入IDLE空闲状态
halSpiStrobe(CCxxx0_SFTX); // 清空TX_FIFO
halSpiWriteReg(CCxxx0_TXFIFO, size); //发送本次要发送的数据长度(必须的不然就会把txBuffer的第一个字节作为发送的数据长度)
halSpiWriteBurstReg(CCxxx0_TXFIFO, txBuffer, size); //写入要发送的数据
halSpiStrobe(CCxxx0_STX); //进入发送模式发送数据
// Wait for GDO0 to be set -> sync transmitted
while (!GDO0);
// Wait for GDO0 to be cleared -> end of packet
while (GDO0);
}的 while (!GDO0);,需要注释掉,不然就只发一次数据,然后你收到的为什么一直是正确的,原因是因为你的接收数组没有清空,一直打印是第一次接收的 |
|