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.

I2C Multimaster environment with MSP430

Other Parts Discussed in Thread: MSP430F2132

I2C Multimaster environment with MSP430:-

We are using MSP430F2132 as a system controler and MPC8315 as a Main processor.

MPC8315 and MSP430 are masters in I2C protocol bus.

MSP430 is running in multimaser mode and transmitter mode.Some time USCI module is producing unpredictable bus behavior. MSP430 is not releasing the bus and driving continiously SCL  low.

MPC8315 is running in linux environment and it could not get I2C bus.

 

 

  • Raj Arjunan said:
    MSP430 is not releasing the bus and driving continiously SCL  low.

    Thsi happens if you are in transmitter mode and do not write something to TXBUF before the ACK cycle is complete. The USCI will end the ACK cycle of the slave addressing (or any other transmitted byte) only if TXBUF holds the next byte to send or a stop/repeated start condition has been programmed. Else it will hold SCL low.
    Same in receive mode: SCL will be held low on the last bit of a received byte if the previous byte hasn't been read yet from RXBUF.

    It's not unpredicted, it is well documented. :)

  • Raj,

    Once you have determined that you are servising the interrupts on time and doing everything else correctly, I would recommend taking a close look at the following errata: USCI20, USCI26 and USCI28. Some of these are specific to the multi-master mode.

    The errata document can be found in the device product folder.

     

    Regards,

    Priya

**Attention** This is a public forum