两个电阻相等的话可以用下拉
发布时间:2019-03-27 10:53

  电路连接如图所示,电阻r7更换过1K的,也用过20K的电位器尝试过,蜂鸣器都不响。P1.6口输出高电平时候只有0.63V,如果去掉R7时测P1.6有5V,三极管基极电压都是只有0.63V,按此电路连接...

  电路连接如图所示,电阻r7更换过1K的,也用过20K的电位器尝试过,蜂鸣器都不响。P1.6口输出高电平时候只有0.63V,如果去掉R7时测P1.6有5V,三极管基极电压都是只有0.63V,

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  51系列单片机除P0外,输出高电平时都是通过内部高阻上拉电阻输出的,输出电流只是uA级别,P1.6输出高电平时按照你的电路,等效於R7通过一个百K级的电阻接到Vcc,这就是你测量到P1.6端口电平下降的原因。

  首先,建议你先确定一下你的蜂鸣器接上5V电源时是否会“鸣叫”?再串入电流表测量它的工作电流是多少?

  按照你提供的数据推算,P1.6的输出电流为:(0.771-0.615)/10K=15.6uA,三极管放大倍数按100估算,最大负载电流为1.56mA,也就是说三极管只能驱动工作电流小於1.56mA的蜂鸣器。

  假如蜂鸣器的工作电流超过驱动上限,而你又想用这个驱动电路,我觉得最简单的方法是把驱动三极管换成小功率达林顿管(达林顿管的放大倍数1000,也可以用2个三极管构成)或在P1.6口外加一个上拉电阻用以增强输出电流。

  你的蜂鸣器工作电流为10mA,留富裕值按20mA估算;三极管放大倍数按100计。

  三极管输入驱动电流为:20mA/100=0.2mA(端口输出低电平时,吸流高值10mA,外加0.2mA的电流不会影响功能和损害芯片)

  P1.6到Vcc的上拉电阻取20K,R7取1K。追问分析的很透彻,我只是没有意识到单片机的输出电流会这么低,当然最常规的办法还是上拉10k,还有这种蜂鸣器的电流大概在20多毫安,用达林顿管显得太奢侈了,一个三极管完全能搞定,R7显得没有必要,可以去掉了.不知道是否方便留个QQ追答就你的电路,在P6.1只是做为单一功能的线仅仅是起到“保险”的作用而已,的确可以去掉。

  建议:将P1.6取反后再输出,如果VCC和单片机的VCC一致的线换成PNP的管子就行了,否则要再加1级转换。您的意思就是管电流大牙拉电流,用低电平是,单片机IO能承受较大电流,但是问题是,单片机输出的高电平就不能打开一个三极管吗?具体的参数可能要查一下芯片的资料才知道,但是IO输出的高电平的驱动能力的确非常有限,因为除P0口外,其他口都是内置上拉电阻来获得高电平的。而且这个上拉电阻的阻值应该在几K。如果,还是要用高电平驱动的线;O试试。如果用P0输出高电平的话,是需要外接上拉的。如果外接上拉。效果与P1.6外接上拉效果一样,能让蜂鸣器响,但是我的那个电路难道就是因为输出电流不够?

  如果都选4.7K,那么1.6输出低电平的线V的线V,那样不就不能控制了吗?

  如果你的蜂鸣器是 5v的 那基极电位在2.5的时候应该是不会想的。如果想了说明偏执太大。那就上啦用4.7,基极到单片机用10.。因为不知道你的蜂鸣器参数~~

  上拉的线v的蜂鸣器应该可以的。开始电阻相等那个说错了。两个电阻相等的话可以用下拉