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.

CC2642R: GPIO Interrupt Not Triggered When Performing Float Operations in Task (ADS1298 DRDY)

Part Number: CC2642R
Other Parts Discussed in Thread: ADS1298

Tool/software:

I am working on a project using the CC2642R1 microcontroller interfaced with an ADS1298 ECG front-end via SPI. The DRDY (Data Ready) pin from the ADS1298 is connected to a GPIO pin on the CC2642R1, configured to trigger an interrupt on the rising edge.

The setup works as expected:

- GPIO interrupt is properly triggered.

- ISR sets a flag.

- A periodic task (1 ms interval) reads raw data from ADS1298 and processes it.

Issue:

When I include the following floating-point baseline removal code inside my periodic task, the GPIO interrupt stops triggering entirely:
baseLine[i] = ALPHA * baseLine[i] + (1.0f - ALPHA) * data[i];
data[i] -= baseLine[i];

If I comment out these lines, everything works normally again — ISR is triggered, and data is processed.
Meanwhile, probing the DRDY pin confirms it is toggling as expected, so the ADS1298 is working and generating rising edges.

I am using TI-RTOS, and SDK: simplelink_cc13xx_cc26xx_sdk_6_40_00_13.

  • Hi !

    There are multiple why your ISR is not being triggered. One of them is that you did not clear your interrupt in your ISR, and that reading/writing the data in baseLine or data variable clears the interrupt. You can find more information about setting interrupts in TI-RTOS in the User Guide for TI-RTOS.

    There is also the chapter 5 of the Technical Reference Manual for the CC2642R, which is about interrupts. This may help you to debug and understand more where to start to find your issue.

    Additionally, the version of the SDK that you are using it a few years old and this problem might have been solved in a recent patch. I would advise you to try upgrading your SDK version and see if the problem persists.

    Kind regards,
    Maxence