本人用51单片机的IO口来控制12V的继电器,发现给高电平可以让继电器吸合,但是给低电平却一直不能断开,有哪

如题所述

一般单片机控制继电器都是采用拉电流的方式,也就是当输出低电平的时候继电器导通吸合,你可以改变一下控制的方式,因为51单片机一般的高电平输出电流都十分有限,而灌电流时电流可以达到约20mA追问

那我在单片机控制口上面接一个上拉电阻行不行!!!

追答

从电路图看问题不大应该可以工作,只是应该接好继电器线圈的续流二极管以防止三极管被击穿。我估计问题应该出在你的软件,我没有看到断开继电器那一部分的程序。
你的三极管是什么型号

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-18
建议使用3DK4这种三极管,可作开关管用。导通迅速追问

继电器可以吸合,就证明单片机已经驱动了三极管啊,但就不知道继电器只能吸合却不能断开!!!

追答

你的c51程序是怎么样的

二极管没有接反,R2阻值选取1K,电流约10ma也合适啊

追问

追答

    软件的问题。经仿真你这个时间大概是多少delay(100).这是闪烁啊(不停吸合断开),是


否时间太短,继电器无法相应,加长时间看咯


2.硬件的问题,可以吸合,说明三极管导通,不能断开,说明三极管始终导通!!有可能已经烧


坏,即我们要求在三极管关闭时,三极管必须能够承受最大供电12V,这个电流为12/R,你量下三


极管的射极集电极是否导通就知道了,要在继电器线圈上加一个电阻。试试看吧。


3.在你的电路上加上一个续流二极管防止继电器反向电流过大而烧坏

追问

    软件延时我时间也加长了可还是一直不行,说明不是延时的问题。

    硬件我没有通过IO口来控制,直接把那根控制线接到了电源的地线此时继电器就断开了,说明三极管处于截止状态,所以应该不是三极管的问题,我用的S9014的三极管。

    我也加了一个反向续流二极管IN4148.

第2个回答  2013-07-18
如果你的实验基础是仿真的话,那问题肯定出在三极管上,如果是实物的话,就不知道了!追问

仿真上可以吸合也可以断开,但我做的实物就不行了,继电器只能吸合不能断开!!!

第3个回答  2013-07-18
你的低电压时肯定不是低电压,你用万用表量了吗?除非你的继电器有问题。最好发一张电路图。追问

用万用表测试了,确实不是低电压!!!继电器是没有问题,我单独给它接地就断开了。

追答

你的二极管接反啦。R2不要啦,IO口输出的12V的话,你R1的阻值也有点小啦,换个2.2-4.5K左右的吧。这样你的Q1不会那么容易烧坏。如果还不行,那D2和R2都不要啦。

追问

我这是发光二极管不是起保护的整流二极管,实物我加了没问题!!!