微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI无线射频设计 > CC1101 连续发送模式问题

CC1101 连续发送模式问题

时间:12-23 整理:3721RD 点击:

大家好!

      想请教一下,CC1101每次发送完成之后,可以不进入IDLE模式,重新发送数据吗?

      如果进入IDLE,然后又再进入发送模式来发送数据,这样的话,两次发送之间的间隔最小都有2ms;因为模式转换到稳定也要时间。

      如果想设置成间隔1ms发送1次,应该怎么弄?   非常感谢!

      快速发送的目的,是用于WOR唤醒接收器。接收器的EVENT0为1秒,EVENT1为1.5秒。现在2ms发一次,出现经常唤醒失败的现象,所以想请哪位大神指点一下,谢谢

      

发送完后进入IDLE模式是必须的,至于唤醒失败的问题,重复发送总时间要比EVENT0大,单次发送时间要比RXtimeout小,即可保证唤醒

你的EVENT1比EVENT0还要大?这怎么可能呢?看他们的关系图不应该啊

HI Vike:

      非常感谢你的回复,根据你的建议,我更新了WOR配置,但是就是工作不稳定,可否再指点一二,非常感谢!

      我的具体配置如下:

            1、发射和接收都初始化为CC1101为433M,具体配置跟官方的参考例程一样。(未启用WOR功能时,发射和接收都正常)

            2、发射端间隔5ms发射一条数据。

            3、接收端初始化WOR,然后启用WOR功能,每次被唤醒并收到数据后,重新启用WOR功能。

                  T_event0  = 50ms;      T_event1 = 1.385ms;      timeout = 6.25ms;  

            4、WOR源代码如下:

                  void Initial_WOR(void)
                  {
                        SPI_Write_Strobe(TI_CCxxx0_SIDLE);

                        // T_RX timeout = 50ms + 12.5% = 6.25ms
                       SPI_Write_Register(TI_CCxxx0_MCSM2, 0x10); // RX_TIME 0 占空比最大
                       SPI_Write_Register(TI_CCxxx0_MCSM0, 0x18); // bit5-4: 校准 FS_AUTOCAL[1:0] 01 重IDLE转到TX OR RX模式时

                       // T_event0 = (750/26M) * 1733 * 2^(5*0) = 50ms
                       SPI_Write_Register(TI_CCxxx0_WOREVT1, 0x06); // 0x876B = 1s; 0x43B5 = =17333 = 0.5秒
                       SPI_Write_Register(TI_CCxxx0_WOREVT0, 0xC5); // 0x06C5 = 1733 = 50ms

                       // T_event1 = (750/26MHz) * 48 = 1.385ms
                       SPI_Write_Register(TI_CCxxx0_WORCTRL, 0x78);

                       SPI_Write_Register(TI_CCxxx0_IOCFG0, 0x06);
                 }

                 void WOR_Start(void)
                 {
                        // from IDLE state, enter WOR
                       SPI_Write_Strobe(TI_CCxxx0_SIDLE);
                       SPI_Write_Strobe(TI_CCxxx0_SFRX);

                        // enter WOR
                        SPI_Write_Strobe(TI_CCxxx0_SWORRST);
                        SPI_Write_Strobe(TI_CCxxx0_SWOR);
                 }

          我这里的发射间隔是小于T_Rxtime的, 但是总是出现接收不稳定的现象,可否帮忙指点一下,非常感谢谢

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top