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.

AWR1843: why first parameter of convertSNRdBtoThreshold is 1 in automotive mrr demo?

Expert 2050 points
Part Number: AWR1843

In automotive mrr demo dss_main.c, 

The function convertSNRdBtoThreshold is called in MmwDemo_populateMRR as:

    /*! @brief CFAR thresholds are varied as a function of range */
    obj->SNRThresholds[0].rangelim = (uint16_t) (6.0f * (float)(1U << obj->xyzOutputQFormat));
    obj->SNRThresholds[0].threshold = convertSNRdBtoThreshold(1, 16.0f, CFARTHRESHOLD_N_BIT_FRAC);

The first parameter is 1. 

But the description of the function convertSNRdBtoThreshold says the first parameter is the number of virtual antennas.

/**
 *  @b Description
 *  @n
 *      Converts an SNR (in dB) to an SNR Threshold that the CFAR algo
 *      can use. 
 *  @param[in]  number of integrations in the detection matrix 
 *              Typically the number of virtual antennas
 *  @param[in]  Threshold in dB (float)
 *
 *  @retval
 *      Threshold for CFAR algorithm.
 */
uint16_t convertSNRdBtoThreshold(uint16_t numInteg, float ThresholdIndB,uint16_t bitwidth)
{
    float scaleFac = (float) ((1 << bitwidth) * numInteg);
    float convertFrom_10Log10_to_20Log2 = ThresholdIndB * (1.0f / 6.0f);
    
    return (uint16_t) (scaleFac * convertFrom_10Log10_to_20Log2);
}

In the AWR1843Boost, the number of virtual antennas is 3*4  = 12.  

Should I change the value of 1st parameter to 12 instead of 1?

Kind regards