请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:CC1101 主题中讨论的其他器件:测试2、
你好、Siri、
我正面临着 几个问题。 如果您能帮我解决问题、那将会很有帮助。
1.) 当发送数据设备卡在行中 while (! (Pind &(1 <<GDO2))); "等待 GDO2被置位->同步传输"。 请查看我的数据发送功能和所有其他寄存器设置。 器件处于 WOR 模式。
void WS_SendData(char *txBuffer,char size)
{
SpiWriteReg(CC1101_TXFIFO,size);
SpiWriteBurstReg(CC1101_TXFIFO,txBuffer,size); //write data to send
SpiStrobe(CC1101_STX); //start send
while(!(PIND & (1 <<GDO2 ))); //DEVICE STUCK in this while LOOP //-- Wait for GDO0 to be set -> sync transmitted
while((PIND & (1 << GDO2))); // Wait for GDO0 to be cleared -> end of packet
SpiStrobe(CC1101_SFTX); //flush TXfifo
SpiStrobe(CC1101_SIDLE);
SpiStrobe(CC1101_SWOR);
}NOTE:- DEVICE is in WOR mode with following settings. PATABLE value is 0xC0 #define VAL_IOCFG2 0x06 #define VAL_IOCFG1 0x5c #define VAL_IOCFG0 0x07 #define VAL_FIFOTHR 0x47 #define VAL_SYNC1 0xD3 #define VAL_SYNC0 0x91 #define VAL_PKTLEN 0x3d #define VAL_PKTCTRL1 0x44 //0x05--Address checking enable//0x04--Add. check disabled #define VAL_PKTCTRL0 0x05 #define VAL_ADDR 0x00 #define VAL_CHANNR 0x00 #define VAL_FSCTRL1 0x06 #define VAL_FSCTRL0 0x00 #define VAL_FREQ2 0x10 #define VAL_FREQ1 0xA7 #define VAL_FREQ0 0x62 #define VAL_MDMCFG4 0xF5 #define VAL_MDMCFG3 0x83 #define VAL_MDMCFG2 0x13 //GFSK -- 0X13// FSK -- 0X03 // OOK/ASK--0X33// 4-FSK--0X43 //MSK --0X73 #define VAL_MDMCFG1 0x22 //0x72// preamble set to 0x72-->24 bytes //older 0x22-->4 bytes #define VAL_MDMCFG0 0xF8 #define VAL_DEVIATN 0x15 #define VAL_MCSM2 0x16 #define VAL_MCSM1 0x33 #define VAL_MCSM0 0x38 #define VAL_FOCCFG 0x16 #define VAL_BSCFG 0x6C #define VAL_AGCCTRL2 0x03 #define VAL_AGCCTRL1 0x40 #define VAL_AGCCTRL0 0x91 #define VAL_WOREVT1 0x87 #define VAL_WOREVT0 0x6B #define VAL_WORCTRL 0x78 #define VAL_FREND1 0x56 #define VAL_FREND0 0x10 #define VAL_FSCAL3 0xE9 #define VAL_FSCAL2 0x2A #define VAL_FSCAL1 0x00 #define VAL_FSCAL0 0x1F #define VAL_FSTEST 0x59 #define VAL_PTEST 0x7F #define VAL_AGCTEST 0x3F #define VAL_TEST2 0x81 #define VAL_TEST1 0x35 #define VAL_TEST0 0x09 #define VAL_PARTNUM 0x00 #define VAL_VERSION 0x06 #define VAL_FREQEST 0x00 #define VAL_LQI 0x00 #define VAL_RSSI 0x00 #define VAL_MARCSTATE 0x00 #define VAL_WORTIME1 0x00 #define VAL_WORTIME0 0x00 #define VAL_PKTSTATUS 0x00 #define VAL_VCO_VC_DAC 0x00 #define VAL_TXBYTES 0x00 #define VAL_RXBYTES 0x00 #define VAL_RF1AIFCTL0 0x00 #define VAL_RF1AIFCTL1 0x00 #define VAL_RF1AIFCTL2 0x00 #define VAL_RF1AIFERR 0x00 #define VAL_RF1AIFERRV 0x00 #define VAL_RF1AIFIV 0x00 #define VAL_RF1AINSTRW 0x00 #define VAL_RF1AINSTR1W 0x00 #define VAL_RF1AINSTR2W 0x00 #define VAL_RF1ADINW 0x00 #define VAL_RF1ASTAT0W 0x00 #define VAL_RF1ASTAT1W 0x00 #define VAL_RF1ASTAT2W 0x00 #define VAL_RF1ADOUT0W 0x00 #define VAL_RF1ADOUT1W 0x00 #define VAL_RF1ADOUT2W 0x00 #define VAL_RF1AIN 0x00 #define VAL_RF1AIFG 0x00 #define VAL_RF1AIES 0x00 #define VAL_RF1AIE 0x00 #define VAL_RF1AIV 0x00 #define VAL_RF1ARXFIFO 0x00 #define VAL_RF1ATXFIFO 0x00
2. 第二个问题是,在 WOR 模式下我没有在 GDO0上获得任何中断。 请帮助我完成发送器侧的寄存器设置、以便接收器可以通过此设置进行 WOR 运算来接收中断。 此外 、请告诉我上述接收器设置中需要进行的任何更改。
注意:-上述提供的代码和寄存器值位于 CC1101的接收器侧。
提前感谢