- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi. Cypress
current, customer use CYPD3177 to connect with external CPU. the main issue as below:
外部的MCU有两种IIC模式:一种为MCU可以作为主从两种模式的IIC;一种为简易IIC,只能做主模式。
1、MCU的的主从模式IIC跟BCR可以正常的跟BCR进行通信,按照文档(EZ-PD_BCR_Host_Processor_Interface_Specification)并且已经调试完成,。
2、当外部的MCU使用另一种简易IIC,此情况下跟BCR无法通信:MCU发送了数据,BCR无ACK回码。我们使用这种IIC与其他器件的TC DCDC芯片进行IIC通信正常,说明此路简易IIC对外进行通信是没有问题的。同时为了排除问题,我们将此IIC更改为普通IO,使用软件模拟IIC功能,然后跟BCR通信,BCR一样无ACK回码。MCU的FAE确认MCU的IIC通信无问题。
3、对于BCR对IIC通信有什么特殊要求我们没有涉及到的,外部硬件配置、内部寄存器配置、IIC配置等。按理说数据正常应该有ACK回码的。或者你帮忙使用一个普通MCU的IO口进行模拟一路IIC试试,能否通信上?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Flance,
I2C writes begin with a Start bit and the read preamble of 7-bit device address and the Write bit (0). BCR responds
back with a 1-bit ACK/NAK response.
EZ-PD™ BCR uses 0x08 as the 7-bit device address.
As per I2C specification (https://i2c.info/i2c-bus-specification ), the I2C transfer format is below:
It seems the I2C slave address is not matched. Could you please kindly take a look?
Best Regards,
Lisa
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Flance,
您这边指的简易I2C是通过GPIO进行模拟I2C吗?
最快速帮助到您的方式是,您这边把I2C的波形发给我们看看。
Best Regards,
Lisa
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi.Lisa
是的用GPIO进行模拟I2C,BCR是做从模式,,MCU是主模式。如下使用IO口进行模拟IC时的数据波形,发送了地址,BCR没有ACK回码,速率尝试过50K到100K都一样结果。
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Flance,
I2C writes begin with a Start bit and the read preamble of 7-bit device address and the Write bit (0). BCR responds
back with a 1-bit ACK/NAK response.
EZ-PD™ BCR uses 0x08 as the 7-bit device address.
As per I2C specification (https://i2c.info/i2c-bus-specification ), the I2C transfer format is below:
It seems the I2C slave address is not matched. Could you please kindly take a look?
Best Regards,
Lisa