请教PCA9306 IIC电平转换问题
实验中用到PCA9306芯片,想控制IIC电平1.8V到3.3V之间的转变。
Vref1直接连1.8V,Vref2和EN短接后通过200K电阻上拉到3.3V(这个和数据手册上要求一致);
scl1、sda1通过2.2k上拉到1.8V;
scl2、sda2通过4.7k上拉到3.3V;
我遇到的问题是:在没有任何IIC操作的情况下,scl1有1.8v,而sda1只有0.6V左右,scl2和sda2都在3.3V;Vref2和EN上的电压只有0.2V左右(感觉Vref2在内部被拉低了),请问这种问题一般是由什么引起的呢?希望大家多多指点,谢谢!
Guozhu,
通常,Vref2和EN由于200k上拉电阻和漏电流的影响,会被调整到Vref1+0.6V左右。但是你遇到的0.2V是不正常的,请检查一下你的电路和前后级的器件。
Nick Dai
Guozhu,
通常,Vref2和EN由于200k上拉电阻和漏电流的影响,会被调整到Vref1+0.6V左右。但是你遇到的0.2V是不正常的,请检查一下你的电路和前后级的器件。
Nick,
谢谢您的回答。
请问电路中scl1、sda1、sdl2、sda2的状态会不会影响到Vref2呢?因为跟前后级直接相关的就只有这两对线了,芯片的其它管脚连接都是和文档要求一致的。谢谢
上拉电阻值取值不当,上拉电阻的值决定了导通电流的大小,通常电流在15mA左右,导通电压在260mA到350mV左右, 如果电流增大的话,那么导通电压也会增大,15mA计算的话,上拉电阻的大小R=(Vdpu-0.35 V)/0.015A,Vdpu=3.3V的话,R约为197Ohm。同样,V=1.8V, R约为97ohm。
Kailyn Chen
上拉电阻值取值不当,上拉电阻的值决定了导通电流的大小,通常电流在15mA左右,导通电压在260mA到350mV左右, 如果电流增大的话,那么导通电压也会增大,15mA计算的话,上拉电阻的大小R=(Vdpu-0.35 V)/0.015A,Vdpu=3.3V的话,R约为197Ohm。同样,V=1.8V, R约为97ohm。
Hi, Kailyn,
谢谢你详细的指导,按照你的提示,我在一个新的电路板中重新焊接了器件进行测试。
芯片pca9306 1.8v端上拉电阻为100ohm,3.3v端上拉电阻为200ohm,前后级都不加任何其它芯片,现象如下:
vref2=EN=0.02V,
SCL1 = 1.8v,SCL2=3.3v, SDA2=3.3V,但是sda1=0.7V。
这种情况到底会是什么情况引起的呢?谢谢~
Guozhu,
你把前后级的I2C接口都连上并且上电,看电压是否正常。
不会是芯片本身问题导致的吧,有没有尝试更换一片新的PCA9306试试?
已经试过新片子了,还是不行。我准备换TVC3306试试
Guozhu
I2C总线是开漏结构,通过上拉来实现I2C正常的工作。
所以你在进行电平转换实验的时候不要脱离了前后级的I2C接口,单独测量电平转换芯片上的电压,这样是没有意义的。
你的电路没有什么问题,把前后级接上测量一下电压。
如果你的结果是在对芯片单独测试下得到的,即没有前后级,那基本可以判定芯片有问题。
EN/VREF2处是否有加滤波电容? 增加PU电阻后悔对SDA和EN/VREF2产生影响,怀疑是下管被打坏。
解决了,是片子的问题(怀疑是供货方给错芯片了。。。),换了两个MOS管搭了个电平变换,前后级信号电平都正常了。
感谢大家的热心帮助!