[SOLVED] Monitoring GPIO changes (or: Data breakpoints on GPIO registers)

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] Monitoring GPIO changes (or: Data breakpoints on GPIO registers)

    I am unable to use data breakpoints on GPIO registers (on the addresses of the GPIO set / reset registers) to find out if its value is changed or not.
    The problem ist that the debugger doesn't stop when the data in that register changes.
    Data registers on regular addresses of objects work fine, which means the debugger stops when the data change occurrs.

    Background: I would like to find out which part of a codebase changes a GPIO bit to a specific value.

    I tried to use the GPIO set /reset and GPIO output registers, too.

    I set up the data breakpoint for the set/reset register without a value and for the whole address (mask) like this:

    Break.EnableOnData (0x42020018, 0x0, AT_WRITE_ONLY, AW_ANY, 0x0, 0xFFFFFFFFFFFFFFFF);



    The output data register is monitored like this

    Break.EnableOnData (0x42020014, 0x0, AT_WRITE_ONLY, AW_ANY, 0x0, 0xFFFFFFFFFFFFFFFF);



    Can this be done?
  • Hi ToBoMi,

    it might well be the case that the break unit in your target hardware does not trigger on accesses on peripherals. Could you please check the specifications of your device whether data break points on peripheral registers are supported?

    Best regards
    -- AlexD
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.