Other Parts Discussed in Thread: AWR1843, AWR2944
Tool/software:
Hi ,
From AWR1843 MRR example, it can enable per chirp Phase shift.
We use the same method on AWR2944 for TX beamforming, but it return error code(114) as below
What's the difference we need to check on AWR2944?
Is it possible about device map for AWR2944?
rlRfSetMiscConfig(RL_DEVICE_MAP_INTERNAL_BSS, (rlRfMiscConf_t *)phaseShiftPerChirpEnable);
AWR2944 radar config:
profileCfg 0 77 2 3.5 15.33 0 0 8.883 0 256 30000 0 0 42
chirpCfg 0 255 0 0 0 0 0 15
frameCfg 0 255 1 0 256 50 1 0
void Cfg_TxPhaseShiftInitParams(rlRfPhaseShiftCfg_t *ptrtxPhaseShiftCfg, uint8_t tx0PhShCode, uint8_t tx1PhShCode, uint8_t tx2PhShCode, uint8_t tx3PhShCode)
{
/* Initialize the configuration: */
memset((void *)ptrtxPhaseShiftCfg, 0, sizeof(rlRfPhaseShiftCfg_t));
//AWR2944, 4TX/4RX
ptrtxPhaseShiftCfg->chirpStartIdx = 0;
ptrtxPhaseShiftCfg->chirpEndIdx = 255;
ptrtxPhaseShiftCfg->tx0PhaseShift = tx0PhShCode;
ptrtxPhaseShiftCfg->tx1PhaseShift = tx1PhShCode;
ptrtxPhaseShiftCfg->tx2PhaseShift = tx2PhShCode;
ptrtxPhaseShiftCfg->tx3PhaseShift = tx3PhShCode;
return;
}
//---------------------------------------------------------------------------------------------
AWR1843 MRR:
/*! \brief
* Radar RF Miscconfiguration
*/
typedef struct rlRfMiscConf
{
/**
* @brief b0 PERCHIRP_PHASESHIFTER_EN \n
* 0 Per chirp phase shifter is disabled \n
* 1 Per chirp phase shifter is enabled \n
* This control is applicable only in devices which support phase shifter. \n
* For other devices, this is a RESERVED bit and should be set to 0.
*/
rlUInt32_t miscCtl;
/**
* @brief Reserved for Future use
*/
rlUInt32_t reserved;
}rlRfMiscConf_t;
/********************************************************************************
* Set Per Chirp Configuration
********************************************************************************/
phaseShiftPerChirpEnable->miscCtl = 1; // Enable per chirp Phase shift
retVal = rlRfSetMiscConfig(RL_DEVICE_MAP_INTERNAL_BSS, (rlRfMiscConf_t *)phaseShiftPerChirpEnable);
Get_PhaseTxShifterCodeValue(0U, &txph1Code, &txph2Code, &txph3Code);
Cfg_TxPhaseShiftInitParams((rlRfPhaseShiftCfg_t *)txphaseshiftCfg, txph1Code, txph2Code, txph3Code);
retVal = rlRfSetPhaseShiftConfig(RL_DEVICE_MAP_INTERNAL_BSS, 1U, (rlRfPhaseShiftCfg_t *)txphaseshiftCfg);
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Thanks
BRs
Bruce