I2C总线双向电平转换实用电路

如果所使用的I2C总线上的设备存在多种电平标准,如5V,3.3V,甚至是更低的1.8V,那么使用I2C总线在这些设备之间通信就需要进行电平转换。使用专用的电平转换芯片往往能够得到良好的性能,但是对于速度不高的I2C总线(如标准模式,100kbps),并不一定需要这样的器件。这里介绍一种电路,使用简单的NMOS管和上拉电阻完成这样的双向电平转换。电路原理如图所示。
I2C总线双向电平转换实用电路_第1张图片

此电路来自于飞利浦的一篇设计指导文档,是I2C总线官方推荐使用的电平转换电路。在实际使用过程中,需要尤其注意NMOS管的选型以及上拉电阻阻值的选取。由于该电路基于上拉电阻,NMOS管的电容特性可能会导致波形劣化。为了保证输出的上升速度,使得输出波形维持较好的形状以保证数据正确,通常选择Qg较小的NMOS管。下图展示了3.3V到5V电平转换的仿真结果。其中,NMOS管选用2N7002,3.3V电平和5V电平一侧上拉电阻阻值均选择为4.7K。输入信号频率为100KHz,为I2C总线标准模式数据速率。
I2C总线双向电平转换实用电路_第2张图片

可见,5V电平输出波形虽有上升的过程,但其形状劣化程度仍能够令人满意。

你可能感兴趣的:(Circuits)