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.

TMS320F280025: CMPSS does not detect a pulse width with 3.7us

Part Number: TMS320F280025

Hi

My project is using cmpss module 4 to detect pulse with width ~ 3.5-3.7us max voltage is 3.3V with below code

    CMPSS_enableModule(PLC_CMPSS_BASE);
    ASysCtl_selectCMPHPMux(ASYSCTL_CMPHPMUX_SELECT_4,4U);
    CMPSS_configHighComparator(CMPSS4_BASE, CMPSS_INSRC_DAC);
    CMPSS_configDAC(CMPSS4_BASE, CMPSS_DACREF_VDAC | CMPSS_DACVAL_SYSCLK |
                    CMPSS_DACSRC_SHDW);
    CMPSS_setDACValueHigh(CMPSS4_BASE, 4000);

        //
        // Configure the output signals. Both CTRIPH and CTRIPOUTH will be fed by
        // the asynchronous comparator output.
        //
    CMPSS_configOutputsHigh(CMPSS4_BASE, CMPSS_TRIP_ASYNC_COMP |
                            CMPSS_TRIPOUT_ASYNC_COMP|CMPSS_TRIPOUT_LATCH);

In main.c loop, I am using below code to check the status of CMPSS4

            while((CMPSS_getStatus(CMPSS4_BASE) & CMPSS_STS_HI_LATCHFILTOUT) != 0U)
            {
                ;
            }

However, the CMPSS_getStatus() always return 0. I have done some test. 1 is return using the function if the signal is 0 to 3.3V and keep 3.3V.

My question is that does CMPSS does not detected pulse width is too small in term micro second

Is it turn or I make a mistake.

BR

HK Woo