51uwb.cn

 找回密码
 立即注册
查看: 4673|回复: 1
打印 上一主题 下一主题

请问frame_len的具体运算规则

[复制链接]

35

主题

76

帖子

197

积分

官方会员

Rank: 8Rank: 8

积分
197
跳转到指定楼层
楼主
发表于 2021-9-12 18:43:24 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
frame_len = dwt_read32bitreg(RX_FINFO_ID) & RX_FINFO_RXFL_MASK_1023;

dwt_read32bitreg(RX_FINFO_ID)  我现在知道 dwt_read32bitreg  是读取寄存器 并返回int


RX_FINFO_ID   是接收模块的地址
                  #define RX_FINFO_ID             0x10            /* RX Frame Information (in double buffer set) */     接收模块的信息

#define RX_FINFO_RXFLEN_MASK    0x0000007FUL    /* Receive Frame Length (0 to 127) */
#define RX_FINFO_RXFLE_MASK     0x00000380UL    /* Receive Frame Length Extension (0 to 7)<<7 */
#define RX_FINFO_RXFL_MASK_1023 0x000003FFUL    /* Receive Frame Length Extension (0 to 1023) */


RX_FINFO的定义如上    请问上三者定义有什么区别
还有为什么选用1023这一项
和frame_len中int值与该FINFO的计算规则?
谢谢大大~
                                                                         





回复

使用道具 举报

35

主题

1053

帖子

4531

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4531
沙发
发表于 2021-9-12 19:28:55 | 只看该作者
  #define RX_FINFO_ID             0x10   
这是定义的读取寄存器的offset,这部分,你可以参考user_manaul

不同UWB配置,可以发送数据长度不同,这个长度在代码中用mask 定义的


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

bphero Inc.  

GMT+8, 2024-11-23 08:13 , Processed in 0.010376 second(s), 6 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

快速回复 返回顶部 返回列表