蜂鸣器响不响表面上是电压的影响,而实质上是电流在起作用。与人触电道理是一致的,表面上看起来是电压高,实质上是电流达到一定额度就会触电,与之对比的就是大型蓄电池或者大的电解电容,可能电压不高(不超过36V,有时候甚至只有6V,没想到吧),但也足以致人电击伤或者更严重的伤害。
单片机的输出口虽然有驱动电路,但输出电流的能力非常有限(要看输出电流能力的大小,其实就看有没有散热片就可以了,如果一个芯片要背散热片才能使用,那么它的输出功率能力或者是输出电流能力肯定比较强,相反,不用散热片的,恐怕不会高到哪里去,因为过热的话,三极管会热保护,场效应管会自动限流。)
51单片机输出高电平时的电流输出能力仅有20uA,而驱动一个蜂鸣器的电流起码要达到几十到几百毫安,怎么能驱动得了呢?
在IO口是低电平时,单片机接纳电流的能力有20mA,但也不足以驱动蜂鸣器。必须加驱动电路。而且单片机一般都是用低电平驱动PNP三极管,然后再驱动大的用电器(或负载)。
PS:楼主应该是电子方面的入门级吧。
这个原因很简单,
可以说单片机IO口输出的是电压信号,电流输出能力很低
当开路或者电流非常小(几毫安以下)时,他的输出的电压是恒定的。
但是当输出接的负载要求的电流比较大的时候,单片机的io口就驱动不起来了,
这时候IO口的输出电流还是那么大,但是输出电压就变小了
可以说单片机IO口输出的是电压信号,电流输出能力很低
当开路或者电流非常小时,输出的电压是恒定的。
但是当输出接的负载要求的电流比较大的时候,单片机的io口就驱动不起来了,
这时候IO口的输出电流还是那么大,但是输出电压就变小了。
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
有些单片机的高电平驱动电流很小,不足以驱动蜂鸣器,低电平一般驱动电流就大得多,你可以用三极管放大驱动。
建议加个驱动,比如用三极管或三态门。