======================================
这一篇持续上一篇的内容,咱们来做试验四:按键操控有源蜂鸣器,按下按键蜂鸣器响,开释按键不响。
蜂鸣器
试验四之前简略介绍下蜂鸣器。蜂鸣器有两种,无源蜂鸣器和有源蜂鸣器,一般用于宣布报警的声响。声响是由轰动发生的,咱们都见过喇叭,喇叭晒干有磁铁和线圈。给线圈通上不断改变的电压,在磁铁发生的磁场中就会运动。所以和线圈固定在一起的振膜就会轰动,所以就能听见声响了,而无源蜂鸣器和喇叭效果根本相同。和无源蜂鸣器不同的是,有源蜂鸣器内部就有发声电路,通上电压适宜的直流电就会宣布叫声。别的,有源蜂鸣器有正负极之分。图中是常用的一种作业电压为5V的有源蜂鸣器,正面标有加号的一侧引脚为正极,假如器材是全新的没有剪过引脚,正极引脚比负极长。
驱动电路
从上面的介绍来看,有源蜂鸣器和LED相同,只需通电就能作业(假如没有特别阐明,后边蜂鸣器便是指有源蜂鸣器)。可是为什么要独自作为一个试验呢?
前面咱们说了,单片机IO口能经过的电流是有限的,过大的电流可能会烧坏管脚,或许不能正常作业。蜂鸣器和LED比较最首要的差异,便是蜂鸣器比LED需求的电流大许多,电压一般也会高一些。
为了让单片机驱动蜂鸣器,也便是操控蜂鸣器作业,咱们需求运用一些特别的电路。不知道咱们是否了解继电器,继电器的特色便是用小电流低电压,操控大电流高电压电路。可是一般的继电器操控端需求的电流,关于单片机来说仍是太大了,并且继电器价格比较高,能操控很大的电流,用在这儿大材小用了。而这儿咱们要用的器材是三极管。
三极管根本介绍
三极管的效果首要是扩大电流。和姓名相同,三极管有三个管脚:发射极、基极、集电极,别离简写为E、B、C。有两种类型,PNP型和NPN型,两种类型的三极管作业时电流方向恰好相反,电路符号也不相同,如图所示。发射极上的箭头正是一共作业时电流方向的。
三极管有许多参数,实践的三极管也有许多种,封装也各式各样。下图是常见的TO-92封装的直插式小功率三极管。留意,这种外形仅仅封装,并不是三极管专用,也有其他器材会用这样的封装,具体要看上面怂恿的器材类型,例如图中的S9012一共它是9012三极管。像图中相同管脚朝下放置,半圆柱的平面正对自己,从左往右三个管脚别离是E、B、C。
三极管作为电子开关运用
三极管有三种作业状况,截止区、扩大区、饱满区。在扩大区,能够扩大电信号,咱们用的扩音器等设备就能够经过三极管完成。在单片机中咱们首要运用三极管的截止区和饱满区,作电子开关运用,常用下面这样的电路图。
左图和右图别离是NPN、PNP型三极管的电路图。R1、S1和R2、S2相当于单片机IO口,三极管集电极接蜂鸣器。NPN型电路操控蜂鸣器高电平有用,即IO口输出高电平的时分,蜂鸣器就会响。PNP型反之。为了便利调查,我接的是LED,和蜂鸣器是相同的道理,能够看到图中LED就点亮了。留意三极管的管脚方位不行接反,要驱动的负载即图中的LED也不能接反。
常用PNP三极管有9012、8550等,NPN三极管有9013,8050等。
三极管的原理和很具体的作业情况剖析,需求不少的核算进程,有爱好的读者能够检查模仿电路相关的书本材料。文章结尾也会简略剖析三极管作业机制,有爱好的同学能够看看。假如觉得难以了解,学习单片机进程中,能够不做深化研究。
电路规划
程序的完成和点亮LED差不多,不过要看你的电路确定是高电平仍是低电平有用。依照前面的三极管电路,咱们能够用9012完成蜂鸣器驱动电路,低电平有用,电路图如下,留意蜂鸣器的正负极不能接反。
图中P1.0上接的LED还放在那(当然也能够去掉),P2.0上接了按键开关,P2.1上衔接了三极管驱动的蜂鸣器。
我用面包板建立的电路。
补白:三极管在这儿起到开关的状况,主张优先考虑运用PNP型三极管电路。咱们三极管的效果是扩大电流,关于同一个三极管而言,假如要输出更大的电流,一般就要在基极输入更大电流。而运用PNP型电路时,IO口输出低电平有用,关于单片机来说是灌电流,此刻基极能供给的电流更大,然后供给更大电流以驱动蜂鸣器。我在实践测验时,假如运用NPN型三极管9013,能够驱动LED,但不足以驱动蜂鸣器,除非自己给IO口再外接一个上拉电阻。
程序完成
首先是界说LED、按键、蜂鸣器三个IO口
sbit LED = P1^0;
sbit KEY = P2^0;
sbit BUZZER = P2^1;
然后先设置KEY=1,然后在主循环中处理即可。这儿我用的是PNP驱动,蜂鸣器和LED相同,是低电平有用。
void main()
{
KEY = 1;
while(1) {
LED = KEY;
BUZZER = KEY;
}
}
建立完电路并烧写好程序,按下按键,LED会被点亮,一起蜂鸣器就能宣布声响了。
三极管作业机制扼要剖析
三极管的特性剖析比较杂乱,这儿我经过仿真进行简略介绍,三极管的原理和更多的深化常识,能够查阅相关模仿电路书本。下图是我用Multisim软件仿真的电路(假如有爱好自己仿真,请自行装置学习Multisim软件)。
图中左面的VCC经过可调电阻Rp分压,接到三极管基极,右边VCC经过一个电阻接到三极管集电极,三极管发射极接地。两个绿色箭头是Multisim中的探针,能够在黄色的框中显现导线上经过的电流巨细,以及导线上的电压(也便是相关于GND的电压)。
咱们把这个电路当作两个电流通路,别离是由紫色和橙色箭头标示。调理Rp到适宜的方位,就会有电流经过基极,巨细为Ib,也便是紫色通路的电流。咱们三极管的特性,Ic即橙色通路的电流也会依据Ib而改变。从图中也能够看出来,左右两个探针显现的直流电流I(dc)别离为1.71nA和172nA(即Ib和Ic)。
假如调理Rp,如图Ib=3.33uA,此刻Ic=333uA。多调整几回并调查成果,能够发现在必定规模内,一直近似有Ic=100*Ib(在模仿电路中,常直接用等号代表约等于,夺冠在所难免)。这正是三极管的扩大特性。假如在基极接的是话筒,在集电极接喇叭,就能够扩大声响信号了。当然实践电路还需求增加一些器材。而这儿的100便是图中三极管的扩大倍率,是三极管很重要的一个参数(所谓参数,就像电阻的阻值相同的道理)。
假如调理Rp,使基极电流Ib很大,例如图中Ib=1mA,此刻Ic只要4.95mA,而不是100mA,不满足前面的条件了。前面说的是在必定规模内,Ic=100*Ib,也便是两者成正比,叫做三极管的线性区,也叫扩大区。而假如基极和发射极之间电压太大,超越必定规模,就进入了三极管的饱满区,Ic的值比较大;反之,假如电压太小就会进入截止区,在截止区,Ic很小,简直为0。正是运用这个特性,咱们能够把单片机IO口接在基极,而在三极管集电极衔接蜂鸣器,然后进行操控。
补白1:仿真电路有很大的局限性,只能在必定程度上模仿实践电路。实践电路很杂乱,例如导线有电阻,可是仿真软件的规划很难考虑这么多要素,还有一些现在依然不知道的问题也不能考虑到。所以仿真成果只能作为参阅。例如上面这个电路,我发现即便不断调理Rp,让滑片直接移动到5V的那一端,基极电压却依然没有到达5V,和实践电路中并不相符。
补白2:前面说单片机IO口运用了电子开关,就类似于上面的三极管电路,不过单片机中实践用的一般是MOS管。
补白3:为了让三极管作业在扩大区,常常运用电阻使基极和发射极之间电压保持在必定的规模内。这个进程叫做静态作业点的设置。设置好静态作业点,然后在其上叠加需求扩大的承认较小的沟通信号(假如直接加沟通信号,不会作业在扩大区)。
补白4:三极管作为电子开关时,尽管不作业在扩大区,可是依然起到了电流扩大的效果,仅仅不满足线性区的扩大倍数联系。上图中的Rp假如换成一个固定电阻和一个阻值随温度改变的热敏电阻,三极管扩大倍数足够大的情况下,就能够做成热敏开关,能够依据温度操控LED的开关,而电子开关也因而得名。
=======================================================