51单片机上电瞬间I/O研究口高电平
作者/张兆友,山东省宁阳县职业中等专业学校
- 电动汽车充电原理图
去年,我设计了一个基于单片机的电动汽车充电定时器。在设计过程中,我发现了一个细节:单片机启动时的高电平。图1是我设计的电动汽车充电定时器的控制输出部分,在电路中使用89C2051单片机,电路要求P3.7的初始状态为低电平,按下按钮ON输出高电平后,使继电器动作控制主电路。因为单片机启动的瞬间P3.7会输出高电平,所以在通电的瞬间Q一会瞬间导通,因为电路连接到220V交流电,可能会对操作人员造成伤害。现在和大家分享一下这个问题的发现和处理方法。
网友采用的方法
- 通过网上查阅,网友给出了两种方案:,
我对这两种方法进行了实验:当我把三极管做好时
8050
改为8550
使用程序设置OUT初始状态为高电平,Q1截止日期,按ON”键后,Q1导通;当需要关闭三极管时,让OUT输出高电平5V,但三极管没有被关闭。经过仔细分析,可以看出该电路采用双电源,VC1采用12V单片机电源为5V,输出高电平5时V仍然满足饱和的外部条件,不能退出饱和。因此,第一种方法只能适用于同一5的三极管和单片机V电压时的情况。 对于第二种解决方案,网民们做了一些实验。实验原理图如图2所示。实验过程和结果如下:为10添加5k的下拉电阻R65.测试有效,上电瞬间电平不高;更换R65为30k下拉电阻仍然有效,上电瞬间I0的电压被拉到低;然后用60代替k电阻也可以;但是,如果使用5,后续程序运行时现象会有所不同。k电阻,那么l/0(DO2)9013无法启动,30k、60k9013年可以正常启动或关闭。另一种现象是,如果使用万用表电压档对,DO2处进行电压测量,会导致9013断开,而后再无法通过控制10电平启动9013,必须电路板重新上电才能再启动。 从图2电路可以看出,由于单片机的驱动能力有限,如果增加拉电阻,会降低其驱动能力,影响电路。
单片机瞬时高电平测试
为了解决这个问题,我用示波器测试这个高电平这个高电平。在电路中,P3.当按ON转为高电平使Q1饱和导通。通电时,用示波器测量的波形如图3所示。计算后,可以得出这个高电平的时间约为40ms,此时此刻Q1饱和导通会关闭继电器。
电容吸收瞬时高电平
如何降低瞬时高电平?我想用电容器的暂稳态吸收这个高电平,降低输出的高电平,不足以导致三极管。测试电路如图4所示,在图中P3.7端口并联电解电容C7。 工作流程:单片机发电后未运行程序时,P3.7输出高电平,但由于电容C7两端的电压不能突变,所以C7正极电压将缓慢增加。在单片机输出高电平时,如果升高电压不能达到三极管的导电压,则Q1不会产生误动作。P3.7通过软件变成低电平时,C7上的电压回流到单片机,不会影响电路。
实验选择电容器参数
原理可以得出51单片机的1/O外部并接电解电容器可以吸收瞬时高电平,但电容器的参数对这种吸收影响很大。我选择了10F、47uF和100uF三个电容器。
- 图1,外并接10uF的电解电容
- 图2,外并接47uF的电解电容
47在外并接uF输出电压的峰值接近2.3V,这个电平也可以导致三极管;此外,充电后的电压回流时间更长,但电容器上的电压会迅速降低到0.3V以下。
- 图3:1000并接外部uF电解电容100个电解电容uF的电容器时,输出电压的峰值接近0.5V,这个电平不再导致三极管;此外,充电后的电压回流时间更长,但不超过5ms。
实验结果
单片机通过实验I/O接口并接电解电容后,可以消除其输出的瞬时高电平,满足我设计的电路要求。但是,这种方法也有一些缺点:在通电瞬间,后电路不会因为单片机的瞬时高电平而通电,但在通电时会有一定的延迟通电。当单片机控制断电时,不会立即断电,也会有一定的延迟。 然而,对于我设计的电路,电动汽车的充电时间约为8小时,毫秒时间不会影响电路。
个人见解
第一种方案应该是可行的,但需要考虑不同控制电路外设驱动电压共地的问题,单片机的电源应该与被控电路的电源连接。
- 这是道客巴巴网站上的一个PDF文档:https://www.doc88.com/p-0724520807266.html 为方便学习,转载内容供有需要的学习。