"); //-->
一、概念
倒灌就是电流流进IC内部。电流总是流入电势低的地方,比如说电压源,一般都是输出电流,但是如果有另一个电源同时存在,并且电势高于这个电源,电流就会流入这个电源,称为倒灌。
二、危害
1. 电流太大会将使IO口上的钳位二极管迅速过载并使其损坏。
2. 会使单片机复位不成功。
3. 会使可编程器件程序紊乱。
4.会出现闩锁效应。
三、原因
当两个单片机进行串口通信,如果其中一个单片机断电,另一个单片机继续供电,正常运行。那么没有断电的单片机的IO口给断电的单片机的IO口供电,并同通过上拉保护二极管向断电的单片机进行供电。或者说两个单片机供电电压不一样,电流就会从供电高的一方流向供电低的一方。
(也就是上图中的VDD会被抬高)
2.电流倒灌解决措施
☀方法1:加一个串阻
加一个小电阻,可以防止过流损坏二极管D1,还可以进行阻抗匹配,因为信号源的阻抗很低,跟信号线之间阻抗不匹配,串上一个电阻后,可改善匹配情况,以减少反射,避免振荡等。也可以减少信号边沿的陡峭程度,从而减少高频噪声以及过冲等。但不能解决灌流在Vcc上建立电压。一般情况下就会选择串阻,取值范围是几欧到1K欧,根据实际情况而定,小编我喜欢取330欧。
☀方法2:加串阻和二极管
在信号线上加二极管D3及上拉电阻R1,D3用于阻断灌流通路,R1解决前级输出高电平时使G1的输入保持高电平(因为二极管有压降)。此方法既可解决灌流损坏二极管D1的问题,又可解决灌流在Vcc上建立电压。缺点只适用于速率不快的电路上。如果单片机IO口比较脆弱,或者两边电压不也一样需要低成本进行电平转换,且是单一方向,速率比较低(比如串口)的时候就可以选择该方案。二极管要选择肖特基二极管才比较好
☀方法3:加一个Buffer
这是我们部门最常用和有效的做法。
部门一般用的是这种带开漏输出的Buffer,除了防倒灌外,其还可以通过改变输出端的电压,实现电平转换(比如输出端5V)
注意,如果是下面这种非开漏输出的buffer,那么输出端的高电平是由buffer的供电电源决定的。(如TI的SN74AUC2G126)
PS:Buffer的其他作用
1.提高驱动能力 Buffer是一种宽高比很大的mos管,宽高比大意味着电流大,驱动能力高。在扇出很大的wire中插入buffer可以提高带负载能力,常见于时钟树中。 2.确保信号时序正确 当一条wire很长时,延迟很大(delay正比于长度的平方,设长度为1,delay为1),这时在中间插入buffer,wire delay变为1/4+1/4=1/2,只要buffer delay小于1/2,则buffer的插入可以缩短wire delay。 当一条wire的延迟不大时,如果有hold violation(表现为数据到达过快,需要滞后到达),则插入buffer,利用buffer delay可以修正这个hold violation。
参考文献:
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。
eleaction01 阅读:3327