Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

I2C Clock Permanently Stuck To Logical Low

lock attach
Attachments are accessible only for community members.

I2C Clock Permanently Stuck To Logical Low

Anonymous
Not applicable
Answer:

Question:  Why PSoC permanently holds SCL line low after it sends an ACK to a received address byte ?

Response: Details given below,
       
  • Caused due to a bug in EzI2C user module code
  •    
  • Found in EzI2C user module version 1.2 shipped with PSoC Deisgner 5 SP5
  •    
  • Solution to this problem is to replace existing 'EzI2Csint.asm' template file from below locations with the one attached with this KB article,
       
             
    1. C:\Program Files\Cypress\Common\CypressSemiDeviceEditor\Data\CY8C20060\EzI2Cs
    2.        
    3. C:\Program Files\Cypress\Common\CypressSemiDeviceEditor\Data\psoc_0100\EzI2Cs
    4.        
    5. C:\Program Files\Cypress\Common\CypressSemiDeviceEditor\Data\Stdum\EzI2Cs
    6.    
       
Symptoms:
       
  • I2C SCL line is stretched to logic zero permanently from the PSoC side soon after master send a data byte following an address byte
  •    
  • Address byte send by the master is ACK'ed by the PSoC even if it is not its address
Root Cause:
       
  • Refer the attached 'pdf' file for details

 

Attachments
0 Likes
932 Views
Contributors