CC1200使用Synchronous Serial Mode时,
GPIO3被配置成SERIAL_CLK或者SERIAL_RX都不成功,用示波器测量得到GPIO3一直输出高电平。
GPIO2被配置成SERIAL_CLK或者SERIAL_RX都成功,用示波器测量均有有效脉冲周期信号输出。
这个GPIO3有什么特殊吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
CC1200使用Synchronous Serial Mode时,
GPIO3被配置成SERIAL_CLK或者SERIAL_RX都不成功,用示波器测量得到GPIO3一直输出高电平。
GPIO2被配置成SERIAL_CLK或者SERIAL_RX都成功,用示波器测量均有有效脉冲周期信号输出。
这个GPIO3有什么特殊吗?
/*******************************************************************************
* VARIABLES
*/
// RX filter BW = 104.166667khz
// Symbol rate = 10
// Carrier frequency = 920MHZ
// Bit rate = 10
// Whitening = false
// Manchester enable = false
// Modulation format = 2-FSK
// Continus_Rx
// Device address = 0
// Deviation = 24.948120
// TxPower =28dBm
static const registerSetting_t preSettings_Cons_Rx_Modulated[]= {
{CC120X_IOCFG3, 0x49}, //GPIO3--->SERIAL_RX
{CC120X_IOCFG2, 0x08}, //GPIO2--->SERIAL_CLK
{CC120X_IOCFG0, 0x18}, //GPIO0--->LNA_PD
{CC120X_SYNC2, 0x4E},
{CC120X_SYNC1, 0x90},
{CC120X_SYNC0, 0x4E},
{CC120X_SYNC_CFG1, 0x1F}, //NO SYC WORD
{CC120X_SYNC_CFG0, 0x23},
{CC120X_DEVIATION_M, 0x48}, //DEV=25KHZ
{CC120X_MODCFG_DEV_E, 0x0B},
{CC120X_DCFILT_CFG, 0x56},
{CC120X_PREAMBLE_CFG1, 0x00}, // NO PREAMBLE
{CC120X_PREAMBLE_CFG0, 0xBA},
{CC120X_IQIC, 0xC8},
{CC120X_CHAN_BW, 0x84},
{CC120X_MDMCFG1, 0x02}, //FIFO EN = 0
{CC120X_MDMCFG0, 0x05}, //TRANSPARENT EN = 0
{CC120X_SYMBOL_RATE2, 0x70},
{CC120X_SYMBOL_RATE1, 0x62},
{CC120X_SYMBOL_RATE0, 0x4E},
{CC120X_AGC_REF, 0x27},
{CC120X_AGC_CS_THR, 0x01},
{CC120X_AGC_CFG3, 0x11},
{CC120X_AGC_CFG1, 0x11},
{CC120X_AGC_CFG0, 0x90},
{CC120X_FIFO_CFG , 0x00},
{CC120X_FS_CFG, 0x12},
//{CC120X_PKT_CFG2, 0x25},
{CC120X_PKT_CFG2, 0x05}, // PKT_FORMAT = 0b01 Synchronous serial mode
{CC120X_PKT_CFG0, 0x20},
{CC120X_PA_CFG1, 0x70},
{CC120X_PA_CFG0, 0x55},
{CC120X_PKT_LEN , 0xFF},
{CC120X_IF_MIX_CFG, 0x18},
{CC120X_FREQOFF_CFG, 0x22},
//{CC120X_TOC_CFG, 0x03},
{CC120X_TOC_CFG, 0x43}, //TOC LIMIT =1
{CC120X_MDMCFG2, 0x02},
{CC120X_FREQ2, 0x5C},
{CC120X_IF_ADC1, 0xEE},
{CC120X_IF_ADC0, 0x10},
{CC120X_FS_DIG1, 0x07},
{CC120X_FS_DIG0 , 0xAA},
{CC120X_FS_CAL1, 0x40},
{CC120X_FS_CAL0 , 0x0E},
{CC120X_FS_DIVTWO, 0x03},
{CC120X_FS_DSM0, 0x33},
{CC120X_FS_DVC0, 0x17},
{CC120X_FS_PFD, 0x00},
{CC120X_FS_PRE, 0x6E},
{CC120X_FS_REG_DIV_CML, 0x1C},
{CC120X_FS_SPARE, 0xAC},
{CC120X_FS_VCO0 , 0xB5},
{CC120X_IFAMP, 0x05},
{CC120X_XOSC5, 0x0E},
{CC120X_XOSC1, 0x03},
{CC120X_SERIAL_STATUS, 0x08},
};
以上是我的配置。写入配置后,只要我执行
trxSpiCmdStrobe(CC120X_SAFC);
trxSpiCmdStrobe(CC120X_SRX);后,GPIO3就一值高电平,GPIO2有持续的时钟输出
GPIO3的默认设置是GPIO3_CFG = 0x06 (PKT_SYNC_RXTX)
输出将在上电后立即等于 PKT_SYNC_RXTX(由组合电路设置),它将被拉低,直到发送或接收到 SYNC