打印

玩SI4432的进,RSSI是否有BUG

[复制链接]
9646|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
NE5532|  楼主 | 2011-9-13 12:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
NE5532|  楼主 | 2011-9-14 20:19 | 只看该作者
厂家已证实此为BUG

使用特权

评论回复
板凳
sty8sy| | 2014-5-4 14:07 | 只看该作者
你好,我看您发的帖子在这方面很专业的,有一个关于SI4463无线模块的问题想请教,这个芯片寄存器太多了,下了个例程看不管从该模块读取什么数据好像都是读0xff寄存器,真是越看越晕。还有就是要读取任意时刻的RSSI和接收数据包同步字时的RSSI应该怎么做啊,是不是先写入命令0x22然后读某个寄存器,这一个命令有十几个返回值,具体怎么操作呢?热切期盼您的回复……
数据手册上相关的部分是这样写的:
    CMD 0x22,
    Response:
INVALID_SYNC_PEND - If set, INVALID_SYNC interrupt is pending.
RSSI_JUMP_PEND - If set, RSSI_JUMP interrupt is pending.
RSSI_PEND - If set, RSSI interrupt is pending.
INVALID_PREAMBLE_PEND - If set, INVALID_PREAMBLE interrupt is pending.
PREAMBLE_DETECT_PEND - If set, PREAMBLE_DETECT interrupt is pending.
SYNC_DETECT_PEND - If set, SYNC_DETECT interrupt is pending.
INVALID_SYNC - If set, invalid sync has been detected
RSSI_JUMP - If set, RSSI jump above MODEM_RSSI_JUMP_THRESH has occured
RSSI - If set, RSSI is above MODEM_RSSI_THRESH
INVALID_PREAMBLE - If set, invalid preamble has been detected
PREAMBLE_DETECT - If set, preamble has been detected
SYNC_DETECT - If set, sync has been detected
CURR_RSSI[7:0] - Current RSSI reading from the modem.
LATCH_RSSI[7:0] - Latched RSSI reading from the modem as configured by MODEM_RSSI_CONTROL. Reset to 0 at
the start of every RX.
ANT1_RSSI[7:0] - RSSI of ANT1 while antenna diversity. Latched during preamble evaluation and avaliable for reading
after sync detection.
ANT2_RSSI[7:0] - RSSI of ANT2 while antenna diversity. Latched during preamble evaluation and avaliable for reading
after sync detection.
AFC_FREQ_OFFSET[15:0] - The AFC value that is generated by the AFC loop during receive mode.

使用特权

评论回复
地板
sty8sy| | 2014-5-4 14:09 | 只看该作者
这是SI4463的API手册,请帮帮我吧,第一次弄无线电模块,快崩溃了~~~

SI446x_API说明.pdf

415.34 KB

使用特权

评论回复
5
sty8sy| | 2014-5-4 14:11 | 只看该作者
@NE5532  

使用特权

评论回复
6
NE5532|  楼主 | 2014-5-4 15:21 | 只看该作者
寄存器按地址读写,FF是FIFO地址,不是所有寄存器都在这里,RSSI直接读寄存器就是了,读导言的RSSI,等导言收完了再读就可以了。

使用特权

评论回复
7
sty8sy| | 2014-5-4 15:59 | 只看该作者
NE5532 发表于 2014-5-4 15:21
寄存器按地址读写,FF是FIFO地址,不是所有寄存器都在这里,RSSI直接读寄存器就是了,读导言的RSSI,等导言 ...


RSSI寄存器地址是多少啊,数据手册上翻来覆去看了几遍也没找到~是CURR_RSSI[7:0]和LATCH_RSSI[7:0]?
CURR_RSSI[7:0]里面是当前RSSI值,LATCH_RSSI[7:0]里面是接收到最后一个数据包时锁存的RSSI,这样理解正确吗?

使用特权

评论回复
8
NE5532|  楼主 | 2014-5-4 16:03 | 只看该作者
就是RSSI寄存器,地址0x26

使用特权

评论回复
9
NE5532|  楼主 | 2014-5-4 16:04 | 只看该作者
LATCH好像是判断有没有通讯的阀值把,SI4432不带包通讯RSSI自动锁定的,好像是每4bit就要刷新一次RSSI的。

使用特权

评论回复
10
sty8sy| | 2014-5-4 16:05 | 只看该作者
原来是这样,太感谢了!

使用特权

评论回复
11
byteman| | 2014-5-28 14:47 | 只看该作者
si4463我已经玩的很精通了,有包括stm8,stm32,msp的代码,联系我qq 154554381

使用特权

评论回复
12
NE5532|  楼主 | 2014-5-28 20:39 | 只看该作者
呵呵,谢谢,不过我们已经淘汰SI4432,开始DSSS了。

使用特权

评论回复
13
程轩104| | 2014-12-17 10:28 | 只看该作者
版主大人,我最近正在调4438的,收发已经没有问题了,可以正常读到数据,但是不能用CRC校验。。
想着自己也配置了,不知道哪里出了问题。能说下用crc判断数据正确与否的流程吗?不胜感激!!!
@NE5532  

使用特权

评论回复
14
NE5532|  楼主 | 2014-12-17 13:09 | 只看该作者
程轩104 发表于 2014-12-17 10:28
版主大人,我最近正在调4438的,收发已经没有问题了,可以正常读到数据,但是不能用CRC校验。。
想着自己也 ...

你是用芯片自己的CRC还是自己写CRC?芯片自己的CRC的话,请仔细阅读手册,确认收发双方的CRC正确配置,正确打开,使用相同的生成多项式。

使用特权

评论回复
15
程轩104| | 2014-12-17 16:01 | 只看该作者
NE5532 发表于 2014-12-17 13:09
你是用芯片自己的CRC还是自己写CRC?芯片自己的CRC的话,请仔细阅读手册,确认收发双方的CRC正确配置,正 ...

使用的是芯片的。。
好,我看看,没什么眉毛。

使用特权

评论回复
16
joyme| | 2014-12-17 16:49 | 只看该作者
芯片的CRC是芯片自己完成的,你收到的数据里不会有,你也可以自己再加校验在你的数据里

使用特权

评论回复
17
lt1366| | 2016-10-20 11:12 | 只看该作者
楼主,你好!我有个si4432的问题请教下,最近拿到了一张板子上面嵌了个si4432芯片,想用4432信号强度的变化(26H寄存器值得)确定两块板子之间的距离,这个方案可行吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:††††看NE5532教学视频,炼就工程技术研发功力†††††††††† 《跟我学DC-DC电源管理技术》【从只会写软件成长为软硬兼施】 《印刷电路板设计进阶》【12年一线设计经验大放送】 《印刷电路板设计基础》【新手别怕,老工程师带你入门!】

159

主题

13769

帖子

585

粉丝