新年好,TI team!
我对CMD_PROP_CS和CMD_PROP_RX_SNIFF的载波侦听过程不太理解
1.资料上说这四个过程是同时进行的,感觉难以理解,不应该是按先后顺序执行吗?
2.WOR例程中,rxSniffCmd->csEndTime设置的比相关周期时间短,也给出了理由。但是前导码不是必须在一个相关周期内判断峰值什么的吗,强制执行一次侦听能判断出是否有前导码存在么,二者究竟什么关系?
3.发送500ms的前导码,接收端在500ms末醒来还能检测到前导码吗?
4.rxSniffCmd->endTime = (uint32_t)(rxEndTimeUs * US_TO_RAT_TICKS);,按计算sniff醒来的时间是2s多,实测是几ms,这是哪里理解错了?
请帮忙有针对性的解答一下哦,争取一次结帖,谢谢!
Felix ZF:
可以结合WOR例程文件夹下的readme文档一起看一下。
Correlation Period
The correlation period is the time window in which the radio have to have detected a valid preamble. This time window will be moved forward for every valid PQT detected, which is done in the underlying hardware via correlation peaks, hence the name. The very first peak will happen after about 24 symbols of preamble has been received. Subsequent peaks will happen every two symbols. If there is no correlation peak within the Correlation Period, then there is no valid preamble on the air.
One caveat of this period is that it has to be both wide enough to get the very first correlation peak. Another is that it also has to be wide enough to be able to fit the entire sync word, with some margin. The reason for this is because if it is not, then the command will report back that it can no longer sense preamble as it is receiving the sync word.
Carrier Sense End Time
The RX Sniff command does not normally take a decision on the presence of a valid preamble until the end of the correlation period. And as mentioned above, the correlation period has to be wide enough to fit the sync word with some margin. With the carrier sense end time, it is possible to force an early check.
The earliest we can force this check is when we know that we would have gotten a correlation peak if there is any preamble present. This will be after about 24 symbols plus 150us. The subject of this, and other timing parameters, will be covered in a future Wake-on-Radio application note from Texas Instruments.
user4959119:
回复 Felix ZF:
这些资料都看过好几遍了,但并没有理解的非常清晰,能针对1,2,3解释一下吗?