Skip to content

Interrupts either not running and/or call wrong function. #33

Description

@WallyWalrick

I'm using a Teensy 3.5
Wire.begin(); Wire.setClock(400000); Wire.onError(I2C_0_OnError); Wire.onTransmitDone(I2C_0_TransmitDone); Wire.onReqFromDone(I2C_0_ReceiveDone);
The main loop writes to the slave, the I2C_0_TransmitDone reads from the slave and the I2C_0_ReceiveDone processes the data.

This works well when only using 1 I2C. When using Wire and Wire1 using I2C_1_***** functions, the transmit/receive work as intended but only I2C_1_OnError will get called for errors on both busses.
I got round that by using 1 onError function for both.
Then I tried 3 busses with Wire2 using I2C_2_****** for onTransmitDone/onReqFromDone as well. This time I2C_X_TransmitDone would be called correctly but only I2C_1_ReceiveDone would be called.

Is it some limitation with too many interrupts and timeouts?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions