RSSI瞬时值的测量问题?
CC1100E按以下过程测量RSSI瞬时值:
TI_CC_SPIStrobe(TI_CCxxx0_SRX); //进入接收状态
TimerA_1ms(); //
//第一次RSSI采样
RSSI = 0x80; //赋初值为-128
RSSI = TI_CC_SPIReadStatus(TI_CCxxx0_RSSI); //读取RSSI瞬时值
RSSI += 128; //加上128以全部按正数处理
请问RSSI的噪声电平(加上128后)一般为多少?能够接收数据的最小RSSI阈值(加上128后)一般是多少?
如果读取RSSI瞬时值失败,应该如何判断呢?RSSI(加上128后)是否为0?
参考SImpliciTI协议栈Familiy 1中Mrfi_radio.c中的做法,你是否想实现TX-IF-CCA就是冲突避免?另外,TI网站有对RSSI的详细介绍的文档,www.ti.com/.../swra114d
#define MRFI_RSSI_VALID_WAIT() \
{ \
int16_t delay = MRFI_RSSI_VALID_DELAY_US; \
do \
{ \
if(mrfiSpiReadReg(PKTSTATUS) & (MRFI_PKTSTATUS_CCA | MRFI_PKTSTATUS_CS)) \
{ \
break; \
} \
Mrfi_DelayUsec(64); /* sleep */ \
delay -= 64; \
}while(delay > 0); \
} \
#endif // !MRFI_TIMER_ALWAYS_ACTIVE
#define MRFI_STROBE_IDLE_AND_WAIT() \
{ \
mrfiSpiCmdStrobe( SIDLE ); \
while (mrfiSpiCmdStrobe( SNOP ) & 0xF0) ; \
}
您好,可否请教下如果是CC2530,应该怎么进行读取呢?
您好!我CC1101的RSSI寄存器读出来的值一直是80,不变化,不知是什么原因,能否请教您到底是什么问题呢?
你好!我读一次寄存器,并把改值在串口显示,但是每次串口都显示4096个字节,这到底是为什么呢?