关于FIFO操作时间说明¶
1. 概述¶
pan262x使用的51内核,不同数据类型的操作时间不同,而且时间相差比较大,现对usb fifo和rf fifo相对不同类型数据的操作时间差异测试出来供用户参考。
2. USB FIFO操作时间¶
由上表可以推测出,对USB FIFO的操作速度:idata数据指针 > xdata数据指针 > 通用指针。
用户可以根据自己的实际需要采取适合自己的FIFO操作方式。
3. RF FIFO操作时间¶
由上表可以推测出,RF的FIFO操作速度与USB FIFO的操作速度规律相似:idata数据指针 > xdata数据指针 > 通用指针。
4. 增强型接收端RF处理流程说明¶
在增强型接收端收到一包数据且需要回复一包数据给发送端时,用户在接收端的写fifo时间需要与rf的发送时间匹配才能正常发送,否则可能会面临回复的数据还没有写完,rf就开始发送的问题。
现以64字节的xdata数据操作为例,接收端的代码处理步骤如下:
接收到rf rx中断
读取rf接收的数据长度(64bytes)
根据长度读取rf rx fifo中接收到数据(使用RF_ReadPayloadByXDATA接口),查以上时间表,此操作约需要121.1us时间
将回复的数据写入rf tx fifo中(使用RF_WriteAckPayloadByXDATA接口 ),查以上时间表,此操作约需要129.1us时间
清除接收中断
由以上步骤大概可以推算出从rf接收中断产生到用户将回复的64bytes数据完全写入rf tx fifo中,需要的时间大于250us,所以rf发送的建立时间要大于250us,保险起见将发送建立时间设置为300us。
RF_SetTxSetupTime(300);//设置rf发送建立时间为300us
以上只是一种典型应用说明,具体的时间用户根据自己代码流程耗时灵活配置。