单片机IO口输出高电平接负载后为低电平

我同学做个红外控制的音响,用继电器控制音响的的电源开关,当单片机接收到红外信号时,单片机P1.4输出高电平,但把P1.4的高电平接到继电器后,P1.4就为低电平,继电器也就不工作。我想知道为什么单片机IO口输出高电平接负载后为低电平?

单片机IO口输出电流不能驱动继电器,而且51单片机输出的高电平电流比灌入电流更低,正确的方法是接个PNP三极管如图,单片机IO口接在电阻一端。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-11
继电器相当于一组线圈且内阻很小,如果你把继电器一脚接IO口一脚接地,IO输出始终为低电平,又IO输出电流很小,不能是继电器熄和。正确的办法是,你需要用三极管搭一个驱动电路才可以
第2个回答  2011-11-11
楼上说的都对,最主要的原因,单片机的驱动能力是不够的,一般来说,继电器是需要40mA以上的电流驱动的,据我的经验和知识所识,能输出40mA以上电流的单片机是没有的,通俗的解释一下,当单片机输出高电平的时候,相当于一个大约5V串联一个1K电阻再串联一个继电器线圈(大约120欧)再串联到地,你3用初中知识也明白线圈的电压应该为多大。
第3个回答  2011-11-11
因为单片机I/O口的驱动能力很低,无法驱动继电器的动作线圈的,你需要用三极管搭一个驱动电路才可以
第4个回答  2011-11-11
首先我觉得你需要考虑这么几个因素的,一是继电器接对没有,二是IO口的驱动能力是有限的,你看你的高电平驱动电流是否达到了继电器要求的电流的。
相似回答