最近做一个单片机设计,用AT89S52接5伏电源后发现P2.3输出1.6伏,我接的蜂鸣器达不到额定工作电压,怎么办

2024-12-16 12:35:58
推荐回答(5个)
回答1:

如果用万用表测量的话,1.6伏是有效值,由于单片的IO只能输出电平量,所以通过IO驱动蜂鸣器播放歌曲,只能通过控制高低电平的频率来控制蜂鸣器发出不同的音调,所以电压的有效值肯定小于TTL高电平电压,如果频率很快的话万用表测量出来的电压就会小于TTL的高电平电压了
我想了一下几种可能:
第一步:检查单片机20(GND)和40(VCC)脚之间电压是否满足单片机工作要求
第二步:不接蜂鸣器,用示波器观察P2.3,看是否满足TTL电平的标准(万用表测的是有效值)
如果以上没问题
那么用KEIL编程之前选择芯片型号,选对没有。这个问题我范过,结果P2口的电压是2.3伏!
还用可能是程序烧录的问题

回答2:

可以用一个三极管来驱动,也建议采用那种方式,因为TTL系列的灌电流(引脚输出低电平)远比拉电流(引脚高电平)要大,大概是是十倍的的关系,记不太清了!

不过很遗憾,2.1伏仍然不是一个典型的值,我在自己的实验板上实验,用万用表测得低电平都在0.3V以下,高电平是四点几伏,STC的51增强型单片机

不知道你现在有没有做出来?

回答3:

如果你是直接将P2.3接到蜂鸣器的话,这个电压是可以理解的---它被拉低了,而且蜂鸣器的工作电流是比较大的,直接接上是驱动不了的,应在其前面加放大电路,即在IO与蜂鸣器之间加一级放大,电路图可以参考:http://baike.baidu.com/view/183969.html

回答4:

如果你确认程序有正确输出,请检查你的电路!
特别是io口部分,看它是不是被外电路影响拉高或拉低。
不过这里提醒你,仿真正确不代表程序没问题,仿真并不是实际!
所以如果电路查不出问题,程序也要检查!

回答5:

试试看 肯定可以,哈哈