请问 有没有用过cc1101的无限数据包模式的,小弟看了一下文档,不是很理解其工作流程,往大牛不吝赐教!!!!!!
Susan Yang:
当数据包长度>255 时,可以使用无限数据包长度模式。
PKTCTRL0.LENGTH_CONFIG=2 时,数据包长度设置为无限,发送和接收工作将继续进行,直到手动关闭为止。
在数据包一开始,必须激活无限数据包长度模式(PKTCTRL0.LENGTH_CONFIG=2)。在TX 端,将PKTLEN 寄存器设置为mod (length,256)。在RX 端,MCU读取足够的字节以解释数据包中的长度域,并将PKTLEN 寄存器设置为mod (length,256)。当数据包剩余字节少于256 字节时,MCU 关闭无限数据包长度模式,并开启固定数据包长度模式。当内部字节计数器达到PKTLEN 值时,则发送或接收终止(无线电设备进入由TXOFF_MODE 或RXOFF_MODE 决定的状态)。
例如,当发送一个600 字节的数据包时,MCU 应完成如下步骤:1 设置PKTCTRL0.LENGTH_CONFIG=2 2 预编程PKTLEN 寄存器为mod (600,256) = 88 3 发送至少345 字节(600 – 255),例如填充64 字节TX FIFO 六次(发送了384 字节)。4 设置PKTCTRL0.LENGTH_CONFIG=0 5 数据包计数器达到88 时结束发送。总计发送了600 字节。
guangping du:
回复 Susan Yang:
您好,我想问一下:填充TX FIFO六次?这个是怎么操作?中间可以又间断吗? 我还想请教一下 让cc1101一直处在Wor模式下,差不多4个小时左右,就会进入Idle模式(我是通过看电流,I=1.7mA);不知道这是啥原因??
guangping du:
回复 Susan Yang:
还是问一下WOR功能; 我设置IOCFG0.GDO0_CFG= 0x24;开始的时候很正常 GDO0引脚能检测到脉冲,并且电流有跳变,但是运行时间一长GDO0引脚有脉冲,但是电流保持1.7mA,应该是IDLE的功耗电流;请问有什么方法解决吗??