尊敬的 TI 技术支持:我使用 CC1101的 RSSI 功能来检测大约5us 的回波信号强度、并使用 STM32来控制 CC1101、但我发现在缺少回波信号的情况下完成读取 RSSI 寄存器的过程大约需要10us。
这是我编写的程序
while ((SPI1->SR&1<<1)=0)//等待发送缓冲区为空
{
i++;
if (i>0xFFFE)返回0;
}
I=0;
SPI1->DR = 0xF4;//发送数据、读取 RSSI 寄存器
while ((SPI1->SR &(uint16_t) 0x0001)==0)//等待接收一个字节
{i++;
if (i>0xFFFE)返回0;}
AVE_RSSI =(uint8_t) SPI1->DR;
I=0;
while ((SPI1->SR&1<<1)=0)//等待发送缓冲区为空
{
i++;
if (i>0xFFFE)返回0;
}
I=0;
SPI1->DR = 0xFF;//发送数据
while ((SPI1->SR &(uint16_t) 0x0001)==0)//等待接收一个字节
{i++;
if (i>0xFFFE)返回0;}
AVE_RSSI =(uint8_t) SPI1->DR;
我想问、如何修改该程序以缩短时间并读取回波信号? 我还想更详细地了解 RSSI 寄存器的设计。 它的更新频率和读取频率如何?
