一 有源蜂鸣器和无源蜂鸣器,其主要区别为蜂鸣器内部是否含有震荡源。 一般的有源蜂鸣器内部自带了震荡源,只要通电就会发声。而无源蜂鸣器由于不含内部震荡源,需要外接 震荡信号才能发声。
实验任务 :本节实验任务是使用启明星上的 PL KEY0 按键来控制蜂鸣器发声。初始状态为蜂鸣器鸣叫,按下按键 后蜂鸣器停止鸣叫,再次按下开关,蜂鸣器重新鸣叫。
当电平为1导通,beep鸣叫。由于 ZYNQ 的 IO 其电流驱动能力有限,所以我们在蜂鸣器的驱动电 路中加入三级管 Q1,以将 ZYNQ 的 IO 驱动电流放大,然后再驱动蜂鸣器。
二 程序设计
按键消抖:当我们按下或松开 按键时,由于弹片的物理特性,不能立即闭合或断开,往往会在断开或闭合的短时间内产生机械抖动, 消除这种抖动的过程即称为按键消抖。按键消抖可分为硬件消抖和软件消抖。硬件消抖主要使用 RS 触发器或电容等方法在硬件电路上实现消 抖,一般在按键较少时使用。软件消抖的原理主要为按键按下或松开后,由处理器延时 5ms 至 20ms,然后 再对按键状态进行采样并判断。
整体框图