搜索
bottom↓
回复: 2

cc1101 rxfifo_overfow

[复制链接]

出0入0汤圆

发表于 2012-12-27 14:40:34 | 显示全部楼层 |阅读模式
验证CCA功能时:接收端运行一段时间后,读出的寄存器状态为:0x11,对应结果是 rxfifo_overfow。此时读出的接收字节数十65,大于64,好像确实溢出了。可是没接收数据啊???
一个发送载波又没有没有数据,怎么可能接收端数据溢出呢??

还有一个问题:发送载波的那个,发送一段时间后,就不发了。不知道为什么。

所有的测试按照下面的顺序来的。








一、CS功能验证

     CC1100有载波监听(Carrier Sensor)的功能,可以用来检测空气中是否有相同频率的载波存在。其验证过程如下:

1、开启CS功能

     设置IOCFG2.GDO2_CFG=0x0E,此时GDO2的功能为“Carrier sense.High if RSSI level is above threshold.”,即当空气中相同频率的信号强度大于一定值时,GDO2被置高。在此选择CS Absolute Threshold,即RSSI门限为一绝对值而非相对值。设置AGCCTRL1寄存器的值为0x40。

2.设置RSSI门限

      根据cc1100 datasheet P39 页描述,RSSI绝对门限和以下四个参数有关:

      AGCCTRL2.MAX_LNA_GAIN

      AGCCTRL2.MAX_DVGA_GAIN

      AGCCTRL1.CARRIER_SENSE_ABS_THR

      AGCCTRL2.MAGN_TARGET

      并给出了868MHz下不同AGCCTRL2.MAX_LNA_GAIN和AGCCTRL2.MAX_DVGA_GAIN值下RSSI的门限值。经过实际测试发现,若RSSI门限值太小,则容易将空气中的干扰信号错认为载波信号,此时可以相应地增大AGCCTRL2.MAX_LNA_GAIN和AGCCTRL2.MAX_DVGA_GAIN的值。

3.让单片机一直检测GDO2的值,同时把GDO2的状态反应到LED上。

      以上步骤完成后,可以进行CS功能的检测。让另一个cc1100模块连续发送载波信号,方法是先清空TXFIFO,然后发送命令滤波STX<参见CC1100 datasheet P32 最后一句>。

      执行程序,发现GDO2的值一直为0,经过实验发现,只有当前处于RX模式时,CS功能才有效,所以在之前加入一句:halSpiStrobe(CCxxx0_SRX);  //进入接收状态

      此时,再执行程序,当关掉CC1100的电源时,DGO2为0,打开时,DGO2为1。CS功能验证完毕。



二、CCA功能验证

      CCA功能是建立在CS功能之上的,故先按照之前的步骤设置好CS有关的寄存器。

1.开启CCA功能

      主要是设置MCSM1寄存器,设置MCSM1.CCA_MODE=11,即RSSI below threshold and

not currently receiving a packet。设置RXOFF_MODE为Stay in RX,TXOFF_MODE为RX,  就是让TX和RX结束后,芯片都保持在RX状态。

2.根据CC1100 datasheet P40页的描述,只有当前处于RX状态时,CCA功能才有效。此时若满足clear chanel的要求,则STX命令能够成功。

3.验证

      使用halSpiStrobe(CCxxx0_SRX); 使CC1100首先进入RX状态,然后发布STX命令,间隔至少809us后(从IDLE进入TX不是即时的,而是至少需要809us的时间),读取芯片状态,若成功进入发送状态,则让LED闪烁200ms。

      当有另一模块连续发送载波时,LED不闪烁,说明STX命令无效。关掉该模块电源,LED闪烁,成功进入TX状态。

4.注意:在每次发布STX命令,读取芯片状态之后要执行清TXFIFO命令,否则当打开发送载波模块再关闭后,CC1100无法进入TX状态,原因是TXFIFO出现underflow事件。

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2012-12-27 14:41:16 | 显示全部楼层

出0入0汤圆

发表于 2013-5-6 07:20:18 | 显示全部楼层
mark
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-27 00:15

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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