Hi,
Our target is to use VCO2 and set the range as 76~80.5GHz.
The code we modify are 2 parts:
1. Set VCO2 in Init Chirp profile:
rlProfileCfg_t profileCfg= {0}; profileCfg.pfVcoSelect = 0x2; // Select VCO as VCO2 profileCfg.profileId = (uint16_t)fpars1->profileCfg.profileId; profileCfg.startFreqConst = (uint32_t)(fpars1->profileCfg.startFreqConst * (1U << 26) / gCLI_mmwave_freq_scale_factor); profileCfg.idleTimeConst = (uint32_t)(fpars1->profileCfg.idleTimeConst * 1000 / 10); profileCfg.adcStartTimeConst = (uint32_t)(fpars1->profileCfg.adcStartTimeConst * 1000 / 10); profileCfg.rampEndTime = (uint32_t)(fpars1->profileCfg.rampEndTime * 1000 / 10); profileCfg.txOutPowerBackoffCode = (uint32_t)fpars1->profileCfg.txOutPowerBackoffCode; profileCfg.txPhaseShifter = (uint32_t)fpars1->profileCfg.txPhaseShifter; profileCfg.freqSlopeConst = (int16_t)(fpars1->profileCfg.freqSlopeConst * (1U << 26) / (gCLI_mmwave_freq_scale_factor*1e3*900)); //2^26 * 1e6/((3.6*1e9)*900) profileCfg.txStartTime = (int32_t)(fpars1->profileCfg.txStartTime * 1000 / 10); profileCfg.numAdcSamples = (uint16_t)fpars1->profileCfg.numAdcSamples; profileCfg.digOutSampleRate = (uint16_t)fpars1->profileCfg.digOutSampleRate; profileCfg.hpfCornerFreq1 = (uint8_t)fpars1->profileCfg.hpfCornerFreq1; profileCfg.hpfCornerFreq2 = (uint8_t)fpars1->profileCfg.hpfCornerFreq2; profileCfg.rxGain = (uint16_t)fpars1->profileCfg.rxGain; SubErrCode=RFModule_MMWaveProfileCfg(&profileCfg);
2. Set VCO2 range as 76~80.5GHz in AWR_CAL_MON_FREQUENCY_TX_POWER_LIMITS_SB,
static void RFModule_SetVCO2Range(void) { rlRfTxFreqPwrLimitMonConf_t rfTxFreqPwrLimitMonConf = {0}; rfTxFreqPwrLimitMonConf.freqLimitLowTx0 = 7600U; rfTxFreqPwrLimitMonConf.freqLimitLowTx1 = 7600U; rfTxFreqPwrLimitMonConf.freqLimitLowTx2 = 7600U; rfTxFreqPwrLimitMonConf.freqLimitLowTx3 = 7600U; rfTxFreqPwrLimitMonConf.freqLimitHighTx0 = 8050U; rfTxFreqPwrLimitMonConf.freqLimitHighTx1 = 8050U; rfTxFreqPwrLimitMonConf.freqLimitHighTx2 = 8050U; rfTxFreqPwrLimitMonConf.freqLimitHighTx3 = 8050U; rfTxFreqPwrLimitMonConf.vco2RangeConfig = 1; // Set VCO2 range as 76~80.5GHz rlRfTxFreqPwrLimitConfig(RL_DEVICE_MAP_INTERNAL_BSS, &rfTxFreqPwrLimitMonConf); }
However, we get the error message:
Do you have any comment?
Is there any mmWave Link API to get VCO2 range setting status?