Panchip Cop.

查看: 9491|回复: 4

XN297L系列芯片RSSI读取方法

[复制链接]

137

主题

203

帖子

1万

积分

磐启论坛管理员

Rank: 9Rank: 9Rank: 9

积分
18717
发表于 2020-3-24 16:01:16 | 显示全部楼层 |阅读模式
本帖最后由 刘敏 于 2020-4-3 17:23 编辑

1、读取RSSI介绍参考03文档,
03软件参考文档地址RSSI用来指示接收信号的强度。将寄存器RSSI_EN和RSSI_SEL设置为高,DATAOUT_SEL设置为低,就可以从寄存器DATAOUT读出RSSI的值。DATAOUT低四位表示接收数据的信号强度,DATAOUT高四位表示接收信号前干扰信号的强度。要求接收数据的信号强度需要在收到数据包后的100ms内读出。可以调节RSSI_Gain_CTR来适应待检
测信号功率范围。最小信号衰减情况(RSSI_Gain_CTR=00)下,接收数据的信号强度(x轴,dBm)和RSSI输出值(y轴,code)的对应关系,5dB左右对应一档,0~10档对应-100dBm~-45dBm。对于通信距离与信号辐射损耗的关系,理论上通信距离每增加一倍,信号损耗6dB。


2、软件配置,
uint8_t  RF_cal_data[]    = {0xF6,0xF7,0x5D};                                            //F7 打开RSSI,读09寄存器
配置RSSI功能打开后,接收数据后读09寄存器,测试结果可以调整RSSI_Gain_CTR来调节RSSI灵敏度,

3、RSSI的档位不多,建议排除硬件影响,保持一致性,优先考虑板载天线,天线的方向性也会影响RSSI的值。



回复

使用道具 举报

0

主题

2

帖子

109

积分

注册客户

Rank: 3Rank: 3

积分
109
发表于 2021-3-1 11:32:57 | 显示全部楼层
你好,

我正在尝试读取RSSI值,并且仅获得很小的变化。 如果模块距离太近,则将获得0x07或0x06的值;如果模块之间相距1米,则该值为0x02或0x01。 总是在sync(3:0)之后获得RSSI值。.realtime(7:4)rssi值始终为0。我可以知道RSSI_Gain_CTR的寄存器详细信息吗? 我在数据表中找不到寄存器的详细信息。 正在使用XN297LBW。 任何帮助将非常有用。 提前致谢。
回复

使用道具 举报

0

主题

9

帖子

113

积分

注册客户

Rank: 3Rank: 3

积分
113
发表于 2021-5-27 22:04:27 | 显示全部楼层
RSSI非常不准确的
回复

使用道具 举报

137

主题

203

帖子

1万

积分

磐启论坛管理员

Rank: 9Rank: 9Rank: 9

积分
18717
 楼主| 发表于 2021-7-5 11:25:11 | 显示全部楼层
Manikandan 发表于 2021-3-1 11:32
你好,

我正在尝试读取RSSI值,并且仅获得很小的变化。 如果模块距离太近,则将获得0x07或0x06的值;如果 ...

XN297L产品说明书_v4.8-ZH.pdf 中1E寄存器有说明
回复

使用道具 举报

137

主题

203

帖子

1万

积分

磐启论坛管理员

Rank: 9Rank: 9Rank: 9

积分
18717
 楼主| 发表于 2021-7-5 11:27:38 | 显示全部楼层

根据项目的要求来评估,RSSI不是非常精确,但对大致的位置方向判断还是有帮助的, 需要保证每个收发的一致性,例如天线的方向,最好用板载天线
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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