单片机IO口输出电平的问题

[复制链接]
3537|12
 楼主| 阿泉爱学习 发表于 2018-3-21 09:54 | 显示全部楼层 |阅读模式
我正常使用的时候单片机输出低电平为0V,但是为什么接上负载(5V继电器)之后,单片机的低电平确为1.2V左右了?遇到这种情况怎么解决?
fzyuan 发表于 2018-3-21 10:05 | 显示全部楼层
加三极管
 楼主| 阿泉爱学习 发表于 2018-3-21 10:06 | 显示全部楼层

我是加的ULN2003,
fzyuan 发表于 2018-3-21 10:19 | 显示全部楼层

你的MCU是51的?
而且出现1.2V的时候,你输出的电平应该是高吧?
IO端口的属性没有设置过,还是缺省值?
应该设置成推挽模式的。
 楼主| 阿泉爱学习 发表于 2018-3-21 10:27 | 显示全部楼层
fzyuan 发表于 2018-3-21 10:19
你的MCU是51的?
而且出现1.2V的时候,你输出的电平应该是高吧?
IO端口的属性没有设置过,还是缺省值?

MCU是AVR的mega64,我输出高电平第一个继电器可以动作,但是我每个引脚都接上相同的电路,也就有5-6个继电器可以动作吧 别的继电器都不能动作,我测量电压的时候 继电器线圈端的引脚电压确实2V左右。然后我就把2003直接撤走了,让MUC直接输出低电平,继电器可以动作,但是我测量电压却是1.2V

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
xyz549040622 发表于 2018-3-21 11:06 来自手机 | 显示全部楼层
驱动电流是有限的,必须要加驱动芯片的。
fzyuan 发表于 2018-3-21 12:21 | 显示全部楼层
阿泉爱学习 发表于 2018-3-21 10:27
MCU是AVR的mega64,我输出高电平第一个继电器可以动作,但是我每个引脚都接上相同的电路,也就有5-6个继 ...

如果MCU电源电压是5V的,应该完全没问题,
但条件是IO必须是推挽输出模式,这样就不需要10k的上拉电阻了。

如果IO没有推挽输出模式,那么10k上拉是不够的,用2k的试试。
ddllxxrr 发表于 2018-3-21 12:24 | 显示全部楼层
负载过来地,加三极管为正解
 楼主| 阿泉爱学习 发表于 2018-3-21 12:52 | 显示全部楼层
ddllxxrr 发表于 2018-3-21 12:24
负载过来地,加三极管为正解

我加上2003感觉好了,但是我单片机的引脚都控制这继电器呢,每打开一个继电器,它的引脚电压都会上升0.2V
xuyaqi 发表于 2018-3-21 13:32 | 显示全部楼层
可以理解IO口内有输出晶体管,低电平时有饱和压降,灌入电流越大,压降越大。
cctv19881023 发表于 2018-3-22 08:57 | 显示全部楼层
原因很简单,你用万用表量到1.2V或者0.2V都是虚电压,也就是器件漏电流造成的,理论上世界上任何物体都存在漏电流,连空气也不例外,只是大小问题,你用的ULN2003属于半导体工艺,漏电流发生的时候,仍然遵守欧姆定律,所以1.2V和0.2V属于分压的到的,告诉你一个方法,用万用表测量的时候在表笔正负极之间并联一个10K电阻,然后再去测量,就应该没有电压了
chunyang 发表于 2018-3-25 18:03 | 显示全部楼层
IO口是有内阻的,所有常规回路都是有电阻的,除非是超导回路。低电平过高,只要不超出器件准许的范围就没问题。这个范围包括电流、逻辑电平等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

173

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部