2020年电子技术部第三次培训
一.独立按键部分
1.独立按键介绍
轻触开关是一种电子开关,使用时,轻轻按开关按钮就可使开关接通,当松开手时,开关断开。我们使用的开关如下图:
2.独立按键原理
1)按键工作原理
当我们没有按下开关时,按键上距离相距较远的引脚间导通,而当我们按下开关时,按键上距离相距较近的引脚间导通,相距较远的引脚间断开。参考图如下:
2)抖动的产生
当按键被按下和刚松开手时,按键会产生如下的抖动:
这样的抖动会影响按键的工作,与我们的预期有一定的偏差,故需要对其进行消抖,使其按理想波形工作。
3)消抖方式
消除抖动的方式有硬件消抖和软件消抖两种。
硬件消抖的电路如下图:
将按键与电容并联,当按键被按下时,电容对按键进行放电,而当按键松开时,电源对电容进行充电。这样利用充电与放电的时间,消除了按键的抖动。
软件消抖则是利用if语句对按键进行判断,判断其是否被按下,如果未被按下,则用延时函数延时,如果按下,则进入工作状态。
3.独立按键电路
因为单片机IO口自带上拉电阻,故排针用杜邦线与IO口连接后,默认为高电平,故需要接地,提供低电平。
4.按键控制LED
程序如下:
注:keypros为软件消抖。
二.蜂鸣器部分
1.蜂鸣器介绍
1)有源蜂鸣器与无源蜂鸣器的区分
在外观上,无源蜂鸣器底部能看到绿色的电路板,无源蜂鸣器底部是密封的,看不到电路板。同时,无源蜂鸣器顶部有正号。具体如图:
2)有源蜂鸣器与无源蜂鸣器的工作原理
有源蜂鸣器,又称电磁式蜂鸣器,由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。
接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。
无源蜂鸣器,又称压电式蜂鸣器,主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。
3)无源蜂鸣器的应用
在单片机应用的设计上,很多方案都会用到蜂鸣器,大部分都是使用蜂鸣器来做提示或报警,比如按键按下、开始工作、工作结束或是故障等等。
无源蜂鸣器是直流电压驱动的,不需要利用交流信号进行驱动,只需对驱动口输出驱动电平并通过放大电路放大驱动电流就能使蜂鸣器发出声音,非常简单。
改变单片机引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。
改变输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小。
2.蜂鸣器原理图分析
原理图:
1)三级管的作用
此处为npn型三极管,起到放大的作用。
2)放大电路的作用
因为单片机的IO口驱动作用很弱,故不能直接用IO口驱动蜂鸣器,需要借助三极管放大电路,单片机只起驱动的作用。
3.驱动无源蜂鸣器
不同的蜂鸣器工作的频率段不同,在不知道自己的蜂鸣器的工作频率段的情况下,可以先选择一个频率,利用延时函数的延时使单片机输出该频率的方波,如果蜂鸣器不工作,再通过改变延时函数的参数,改变延时时长,进而改变输出波的频率。
代码如下:
知识补充1:延时函数
一般,晶振为8的情况下,在延时函数中,参数1的延时时长为1微秒,可以通过keil自带的软件仿真计算出延时函数的延时时间。
知识补充2:如何改变无源蜂鸣器音量的大小
如果要改变声音大小,就要改变占空比,也就是调节高电平和低电平的时间,不能只是beep=~beep;
可以这样:
delay(10);
beep=1;
delay(10);
beep=0;
delay(5);
这段代码通过不同的延时时长,使高低电平的占空比不同,从而使蜂鸣器改变音量大小。
知识补充3:如何驱动有源蜂鸣器
有源蜂鸣器只需改变电平的高低就能驱动。