标题: 用89C51单片机驱动有源蜂鸣器的io电平问题 [打印本页]

作者: afdsfsda    时间: 2019-5-19 14:35
标题: 用89C51单片机驱动有源蜂鸣器的io电平问题
电路图很简单,用51驱动蜂鸣器

用PCB做完后,输入+5V,I/O口都是低电平。单片机内部不都是默认上拉电阻的吗?为什么我的会是低电平?
望大神们指点

无标题.png (274.69 KB, 下载次数: 27)

无标题.png

作者: wc86110    时间: 2019-5-19 23:04
偏偏遇上偏偏了呗
作者: 笨笨兔    时间: 2019-5-20 08:39
三极管基级需要串联一个电阻到CPU.
CPU复位电容太小,应加大。
你基础太差,还是多看教材、多学习吧!
作者: yzwzfyz    时间: 2019-5-20 08:41
有上拉不表示输出是0啊。如果有上拉就输出1,那么要输出0怎么办呢?
作者: 07700114    时间: 2019-5-20 10:13
单片机引脚和三极管之间要加限流电阻
作者: afdsfsda    时间: 2019-5-20 11:28
笨笨兔 发表于 2019-5-20 08:39
三极管基级需要串联一个电阻到CPU.
CPU复位电容太小,应加大。
你基础太差,还是多看教材、多学习吧!

嗯,我应该加个串联电阻,防止三极管降压太大。
但你说的CPU复位电容太小这点,我不敢苟同。100pf已经够大了,实际我使用的是10pf的电解电容。只需2个机器周期就可以使其复位,10pf绰绰有余了。
作者: afdsfsda    时间: 2019-5-20 11:51
yzwzfyz 发表于 2019-5-20 08:41
有上拉不表示输出是0啊。如果有上拉就输出1,那么要输出0怎么办呢?

谢谢你的解答。
我的意思是,51单片机在上电情况下,P0为开漏I/O口模式,其他默认为准双向I/O口模式。但我只是读出,并不是输入。所以,我认为这个端口应该是输出高。
作者: 幻剑心    时间: 2019-5-20 15:11
。。为啥偏偏用3.0/3.1。。用P2口试试。3.0/3.1是复用口。默认状态应该是低电平。还有,P0口也没有上拉电阻呀。。。
作者: 幻剑心    时间: 2019-5-20 15:17
afdsfsda 发表于 2019-5-20 11:28
嗯,我应该加个串联电阻,防止三极管降压太大。
但你说的CPU复位电容太小这点,我不敢苟同。100pf已经够 ...

1、阻容复位时,电容C1为10uF,电阻R1为10K。这是数据手册上的。
作者: abcd44    时间: 2019-5-20 16:11
你把积极断开就变高电平了   就是这么神奇
作者: 还有谁?    时间: 2019-5-20 21:06
可以直接将接三极管的线断开接P3.0口上,应该会响 ,只是声音大小的事,如果再不响就要查代码了
作者: jmkl128    时间: 2019-5-21 06:41
PF ,uF,上拉,下拉,,,头都大了吧?
作者: afdsfsda    时间: 2019-5-21 16:05
幻剑心 发表于 2019-5-20 15:11
。。为啥偏偏用3.0/3.1。。用P2口试试。3.0/3.1是复用口。默认状态应该是低电平。还有,P0口也没有上拉电阻 ...

谢谢解答
P3口跟P1P2口一样,我不使用复用功能




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1