hello,
使用MCU spi 控制cc1201发送数据,1201使用40M晶振,上电之后mcu SPI_CS拉低,读取的cc1201 SO为啥输出为高?测量的晶振给的时钟40M, 1V。
于是我通过IO控制RESET_N引脚复位1201, 然后读SO是低,这样有问题么?
使用软件生成配置参数:
preferredSettings[]=
{
{CC120X_IOCFG2, 0x06},
{CC120X_SYNC_CFG1, 0xA8},
{CC120X_DEVIATION_M, 0x47},
{CC120X_MODCFG_DEV_E, 0x2F},
{CC120X_DCFILT_CFG, 0x1E},
{CC120X_PREAMBLE_CFG0, 0x8A},
{CC120X_IQIC, 0x00},
{CC120X_CHAN_BW, 0x01},
{CC120X_MDMCFG1, 0x42},
{CC120X_MDMCFG0, 0x05},
{CC120X_SYMBOL_RATE2, 0xC9},
{CC120X_SYMBOL_RATE1, 0x99},
{CC120X_SYMBOL_RATE0, 0x99},
{CC120X_AGC_REF, 0x2F},
{CC120X_AGC_CS_THR, 0xF8},
{CC120X_AGC_CFG2, 0x60},
{CC120X_AGC_CFG1, 0x12},
{CC120X_AGC_CFG0, 0x84},
{CC120X_FIFO_CFG, 0x00},
{CC120X_FS_CFG, 0x12},
{CC120X_PKT_CFG2, 0x00},
{CC120X_PKT_CFG0, 0x20},
{CC120X_PKT_LEN, 0xFF},
{CC120X_FREQOFF_CFG, 0x23},
{CC120X_MDMCFG2, 0x00},
{CC120X_FREQ2, 0x56},
{CC120X_FREQ1, 0xCC},
{CC120X_FREQ0, 0xCC},
{CC120X_IF_ADC1, 0xEE},
{CC120X_IF_ADC0, 0x10},
{CC120X_FS_DIG1, 0x04},
{CC120X_FS_DIG0, 0xA3},
{CC120X_FS_CAL1, 0x40},
{CC120X_FS_CAL0, 0x0E},
{CC120X_FS_DIVTWO, 0x03},
{CC120X_FS_DSM0, 0x33},
{CC120X_FS_DVC1, 0xF7},
{CC120X_FS_DVC0, 0x0F},
{CC120X_FS_PFD, 0x00},
{CC120X_FS_PRE, 0x6E},
{CC120X_FS_REG_DIV_CML, 0x1C},
{CC120X_FS_SPARE, 0xAC},
{CC120X_FS_VCO0, 0xB5},
{CC120X_IFAMP, 0x0D},
{CC120X_XOSC5, 0x0E},
{CC120X_XOSC1, 0x03},
};
参考easyLink example:
进行参数配置的时候过程:
比如{CC120X_IOCFG2, 0x06},
sendData=0x43,
HAL_SPI_Transmit(&hspi, &sendData, 1, 0xff);
/* Storing chip status */
HAL_SPI_Receive(&hspi,&readValue, 1, 0xfff)
发现readvalue=0x0f,这个是表示TX_FIFO_ERR?
我把所有的参数配置完成,然后开始发送数据,拿频谱仪抓cc1201 PA是774.5M,这个也和我配置的868M不一样啊,请问这个774.5M是怎么产生的?