CC1101无线模块SPI口中MISO引脚和寄存器问题 点击:822 | 回复:0



研讨会宣传员_3259

    
  • [版主]
  • 精华:3帖
  • 求助:110帖
  • 帖子:1927帖 | 14403回
  • 年度积分:102
  • 历史总积分:64749
  • 注册:2020年3月27日
发表于:2016-12-09 16:45:40
楼主

CC1101无线模块SPI口中MISO引脚和寄存器问题

一、MISO引脚,有三个重点:

       1、通过SPI操作CC1101的时候,要先判断MISO是否为低(为高则说明CC1101处于忙或者非激活状态),这是之前说CS用SPI_NSS_Soft的原因之一。另外也是我建议引脚配置GPIO_Mode_IPU的原因。

       2、CC1101的MISO是可以设置成GDO1,不过默认是做MISO。

       3、即使作为MISO,系统的状态也要使晶振起振(用strobe命令),才能有数据输出到STM32中,所以不仔细看datasheet,可能会发现读出来的数据老是0啊!

二、CC1101的寄存器和一些操作:

简单说,操作主要有:

1、single write

2、single read

3、burst write

4、burst read

5、strobe

本来看上去没有什么,但变态的是有些寄存器和strobe命令的地址是重叠的。深刻理解英文datasheet page70(SWRS061H)的那个图。

主要是有几个坑爹的事情:

1、0x30~0x3D的位置 single read,也会是strobe的命令(最坑爹的);

2、0x3E,0x3F位置的burst read,其实是读FIFO。

       有人说,不是有专门的TI提供的软件么?没错,我要说的就是这个软件,叫做 “Smart RF studio”。只是,这个软件我本身也还没完全弄明白,希望有高手能补充。

1、设计时,要注意平衡,Data rate越高,那么灵敏度就会越低;

2、频段是有限的(比如433M其实是433.07MHz~433.92MHz),channel spacing越宽则能支持的channel就越少;

3、channel spacing至少要是data rate的1倍,当然间隔越大,越没那么容易干扰

4、个人还不是太明白“RX filter BW” 和 “Deviation”,我最初设计时是参考demo的做法,希望有牛人来解释一下。

5、注意中心频率的问题,以433M为例,你的频率间隔是50K,那么Base frequency应该是433.07M + 0.05M = 433.12M。




楼主最近还看过


热门招聘
相关主题

官方公众号

智造工程师