logo资料库

SI4438 WDS 配置教程与选项说明.pdf

第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
资料共11页,剩余部分请下载后查看
Si4438 WDS 配置教程 本方法能够正常工作都是基于接收启动函数如下调用:注意后三个参数的修改,全部改为 8 后,方能正常工作,否则只能接收到一次。虽然 CRC 没错,但是再不会启动下一次接收, 具体是什么原因,待查正。 发送函数的调用也要注意:如下图示,看绿色注释行处,指定还是不指定发送长度,不 管用哪种方式调用,都能正常工作。现在暂时用指定长度发送也能够正常工作,但手册上说, 要启用 packet handler 功能,对数据进行曼彻斯特、白化、CRC,则需要用 0 长度调用,不 知为何,请参看绿色注释掉的哪行。 1. 选择 WDS 配置输出头文件时,只需要输出可变长度接收(CustomRx)的寄存器配置文件即 可,因为配置时,只可设置 Packet Rx threshold 的值为自己想要的值,而 Packet Tx threshold 的值,配置软件默认输出一个 48(0x30),所以,这个值如果想要修改,只能自己在 Config.h 文件中自己修改。如下图示:/*0x30*/0x02 处
2. 在发送时再行修改 Tx 模式时寄存器的发送模式为单域,在 config 文件中切记要修改 PKT_FIELD_2_CRC_CONFIG 寄存器的配置:如下图中 0x2A/*0x0A*/处。 3. 发送函数前做如下配置: 看最长的那行。 另外:注意黑条处的寄存器 PKT_LEN,在发送时不用去管里头的长度大小端设置,其实, 发送的时候就是配置寄存器的一个域工作就可了。数据包的封装(与 Rx 端的协议)由用户 自己在填充 TxFIFO 时,组织完成。 4. 接收函数前做如下的配置:
看最长的那行。 另外,注意,本配置中,未将长度字节配置填充到 RxFIFO 中。若需要的话,可在下图选 中 Add length to RX FIFO 即可: 5. 完整配置图如下: 第一步:选中 Custom packet RX,配置前导码,同步头,选 2 个域,设置接收缓冲阈值等, 详见下图:
第二步:选可变长度数据包模式,配置如下图示:
第三步:配置同步头,这里选默认的 2 字节 2D D4,同步头用户可自己 1~4 字节的任意值。
第四步:配置长度域为 2 字节(注意:这两个字节包含在数据载荷 payload 中),使能该
域参与 CRC 计算(这里主要指接收后的校验计算)。 第五步:配置数据载荷域,这个域就是数据域。注意,如下图:Max length: 12,这个
值只界定了数据载荷域的最大长度,不包括后面的 CRC1 域。可变长度接收时,在 这个域的尾巴上要进行 CRC 校验计算 第六步:选定 CRC 生成多项式,CRC 种子,全 0 或全 1,选中从包头开始计算 CRC 选项
分享到:
收藏