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.

MSPM0G3507: I2C Write abnormal for Multi-device address switching on one bus

Part Number: MSPM0G3507

Tool/software:

I currently have two DRIVERS on I2C0 at addresses 0X3C and 0x3f.

When I finished initializing the 0x3c device, ready to switch the address to 0x3f to write data, found that after switching the address of the first data is still 0x3c, did not switch the success of the 0x3f, but I look at the parameters of the variable is right is 0x3f.

What is the reason that the first packet of data for each switch of address stays at the previous address. i am developing based on mspm0_sdk_1_30_00_03 IAR.

  • Hi,

    I want to make sure that is the MSPM0 serve as commander or responder?

    From my understand:

    You want to change address after one data is sent. But you find that the address can not be changed.

    Am I right?

    Regards,

    Zoey

  • Hi Zoey,

    1.Commander

    2."You want to change address after one data is sent. But you find that the address can not be changed." Yes.

    But I have solved this problem, it seems to be an optimization problem of IAR. i choose the optimization level to middle and the data is normal. please notice this phenomenon. i think this problem is strange. it should not be optimized but good, not optimized but abnormal.

  • Hi,

    Thanks for your feedback. We will double check.

    Is there anything else I can help you?

    Regards,

    Zoey

  • I don't have a problem, thanks. if there is any follow up on this issue, please reply in this thread. i'm curious about the problem!