4 Replies Latest reply on Aug 2, 2016 12:11 AM by user_347933176

    Variable I2C speed

    user_347933176

      I need to change the I2C speed while running my program. For example first check on low-speed which slaves are present, and if these slaves are all high-speed I would like to use high speed for the further communication.

         

      I do this by defining 2 I2C components (I2C_Slow and I2C_Fast) and multiplexing between them as indicated in "Figure 8 : I2C Bus Sharing". This example is for slaves but it also works for masters. 

         

      For the future, I would like to use a more  flexible way to change the I2C speed of the master.

         

      I cannot find and API to change to i2c rate. Am I overlooking it ? I did find the possibility to use external clocking but this seems rather complex.

         

      I'm using PSOC5LP and PSOC Creator 3.3SP1 with I2C Version 3.5

         

      Thanks

         

      Patrick