MCU是MSP430F149,一块板子一直发送数据,一块板子接收数据,使用仿真读出RX-FIFO可以确定数据已经可以收到,但是无论如何GDO脚都不置位,这是为什么啊???
WZ:
1. 哪个GDO?
2.相应的寄存器配置的是什么值?
3.使用的是FIFO模式吗?
C XM:
回复 WZ:
GDO0脚;
0x02:IOCFG0-GDO0输出引脚配置 配置为0x06;
IOCFG0-GDO0改成配置为0x01,处于接收模式下,没有收到数据的情况下,GDO0会出现高电平的情况,这又是为什么?
Nutcracker:
回复 C XM:
是参考的 CC1101 Datasheet Page 62 吗?
Table 41: GDOx Signal Selection (x = 0, 1, or 2)
Shufeng Li:
回复 Nutcracker:
你好,Nutcracker!我使用CC1101的时候,遇到了接收端GDO0引脚一直为低,没能正常跳变的问题。我是用的MCU是STC12LE5A60S2,一个板子发送数据,另外一块板子接收数据。发送数据的时候,GDO0引脚有正常的跳变。
我的寄存器配置信息如下:
uint8 code radioSettings[] = { 0x24, // IOCFG2 GDO2 output pin configuration. 0x2E, // IOCFG1 GDO1 output pin configuration 0x24, // IOCFG0 GDO0 output pin configuration 0x07, // FIFOTHR RX FIFO and TX FIFO thresholds 0xD3, // SYNC1 Sync word, high byte 0x91, // SYNC0 Sync word, low byte 0x05, // PKTLEN Packet length 0x04, // PKTCTRL1 Packet automation control 0x04, // PKTCTRL0 Packet automation control 0x00, // ADDR Device address 0x00, // CHANNR Channel number 0x06, // FSCTRL1 Frequency synthesizer control // 0x06->10Kbps; 0x08->250Kbps 0x00, // FSCTRL0 Frequency synthesizer control 0x10, // FREQ2 Frequency control word, high byte 0xA7, // FREQ1 Frequency control word, middle byte 0x62, // FREQ0 Frequency control word, low byte 0x78, // MDMCFG4 Modem configuration 0x93, // MDMCFG3 Modem configuration 0x03, // MDMCFG2 Modem configuration 0x22, // MDMCFG1 Modem configuration 0xF8, // MDMCFG0 Modem configuration 0x44, // DEVIATN Modem deviation setting 0x07, // MCSM2 Main Radio Control State Machine configuration 0x30, // MCSM1 Main Radio Control State Machine configuration 0x18, // MCSM0 Main Radio Control State Machine configuration 0x16, // FOCCFG Frequency Offset Compensation configuration 0x6C, // BSCFG Bit Synchroni zation configuration 0x43, // AGCTRL2 AGC control 0x40, // AGCTRL1 AGC control 0x91, // AGCTRL0 AGC control 0x87, // WOREVT1 High byte Event 0 timeout 0x6B, // WOREVT0 Low byte Event 0 timeout 0xF8, // WORCTRL Wake On Radio control 0x56, // FREND1 Front end RX configuration 0x10, // FREND0 Front end RX configuration 0xE9, // FSCAL3 Frequency synthesizer calibration 0x2A, // FSCAL2 Frequency synthesizer calibration 0x00, // FSCAL1 Frequency synthesizer calibration 0x11, // FSCAL0 Frequency synthesizer calibration 0x41, // RCCTRL1 RC oscillator configuration 0x00, // RCCTRL0 RC oscillator configuration 0x59, // FSTEST Frequency synthesizer calibration control 0x7F, // PTEST Production test 0x3F, // AGCTEST AGC test 0x88, // TEST2 Various test settings 0x31, // TEST1 Various test settings 0x0B, // TEST0 Various test settings };
IOCFG0的值我设置为0x06,就是在接收时遇到了GDO0一直为低,不能正常跳变的问题。
非常期待您的回答。
Thank U in advance.
Best regards.
Shufeng Li:
回复 C XM:
请问一下,您最后是如何解决接收端GDO0不能正常跳变的问题的呢?我也遇到了类似的问题。
Thank you in advance.
Best Regards.
C XM:
回复 Shufeng Li:
我使用固定字节数据模式是能正常收发的,使用可变长度数据包还是无法正常接收,应该是配置出了问题,目前还没找到。
Shufeng Li:
回复 C XM:
请问您最终是怎么解决接收端GDO0不能正常跳变的问题了呀?我的IOCFG0设置为0x06,可以在接收端GDO0始终为低,我就很郁闷了。
这里有篇帖子,别人在写寄存器配置信息的时候加了延时,解决了发送接收的问题。附链接如下:http://e2e.ti.com/support/low_power_rf/f/155/t/270293.aspx
Thank you in advance.
Best Regards!