1、 1 硬件电路原理节拍器以 AT89C51 单片机为控制中心,由 LED 显示模块、调节键盘模块、声音输出模块组成。图 1 是节拍器的电路原理图。ATMEL 公司生产的 AT89C51 单片机与 MCS51指令系统兼容,40 脚结构,是系统的控制中心。显示模块由四位一体的共阳极蓝色 LED 显示器构成,采用动态扫描显示方式, Q11 Q14 是 LED 的位选择开关三极管, R6 R13 是数码管段发光二极管的限流电阻。四位一体的 LED 数码管完成显示节拍数、各功能代码及参数值的功能。键盘调节模块由 4 只按键构成,分别是功能选择键 A、设置参数选择键 B、参数增加键 C和参数减少键 D ,
2、4 只按键可以完成各种功能的选择和各参数的设置。声音输出模块由以 Q1、Q2、Q3 和扬声器为中心的功率放大电路组成,不同频率的脉冲从单片机的P2.6口输出, 经 R14限流和功率放大后,推动扬声器发出洪亮的声音。由于输出的音频信号是脉冲波,三极管工作在开关状态,损耗小发热量不大, Q2、Q3 使用小功率管 C8050和C8550 即可。整个系统硬件结构简单。由外部提供 12 V直流电直接供音频功放模块使用,经 LM7805 稳压成 5 V 后供单片机及 LED 显示用。(点击查看原始图片)2 软件说明软件系统采用模块化结构设计,分别是主程序模块、节拍器模块、键盘识别和参数设置模块等。其中每个
3、模块又由若干个子模块构成。上电或复位后进入调节功能,重复按A键在调节功能、节拍器功能之间轮换。当进入调节功能后,重复按 B 键可选中不同的调节对象,再按 C 或 D 键增加或减少调节对象的参数值,调节时显示调节对象的代码和参数值。2.1 主程序模块在主程序模块中完成存储单元的初始化、定时器计数器的初始化、中断初始化、标志位的初始化、扫描键盘,并根据功能选择键 A 的值启动以下功能模块之一:参数设置功能、节拍器功能。2.2 节拍器功能模块节拍速度在 24400 拍/min 范围内可调,节拍误差小于 2%,节拍数为 19 可调。显示器显示节拍数,扬声器发出节拍声,显示节拍数 1 时发出 600 H
4、z 的高频声 0.1 s ,显示其他节拍数时发出 300 Hz 的低频声 0.1 s。该模块由节拍延时部分、节拍数显示部分、音频脉冲形成部分组成。节拍功能模块程序流程图如图 2 所示。2.3 参数调节模块按 A 键选择进入参数调节功能模块后,重复按 B 键,可以依次选择节拍速度、节拍分度参数的设置,LED 显示器上显示参数类型代码和该参数的数字,按 C 或 B 键则在该参数的取值范围内循环增加或减少一个单位值。代码 1 是节拍数,取值范围 19。代码 2 是节拍速度,取值范围是 24400 拍/min。该模块程序由键盘扫描识别部分、参数显示部分、A键处理部分、B 键处理部分和 C、D 键处理等
5、子程序组成。图 2 节拍器模块流程图3 实验从显示、按键、声音和节拍精度等方面进行测试。显示观察:处于节拍工作状态时 4 个数码管同时循环显示节拍数,练琴时眼睛的余光就能看清节拍数。处于调节模式时,最高位显示待调节的参数代码,其余 3 位显示参数值,当参数高位为零时不显示。显示正确。按键测试:按下功能键 A ,可以在参数调节和节拍模式之间转换。当处于参数调节模式时,按下参数更改键 B ,可以在节拍数和节拍速度之间转换;按下增加键 C 或减少键 D ,参数值在当前值基础上增加或减少 1 ,并且在参数的调节范围内循环变化。当处于节拍工作模式时,BCD 键不起作用。键盘工作正常。声音观测:节拍音短促有力,起始拍与其余拍音调区别明显。在钢琴弹奏的环境中清晰可闻。节拍精度测量:用秒表测量节拍器 500 拍所用时间。节拍速度分别为72、112、144 拍/min 的时候, 用时分别为 418.1 s、268.9 s、210.5 s ,误差分别为0.29%、0.35%、1.1%。节拍精度达到设计要求。4 结束语节拍器的起始拍的声音和其它拍的声音不同,听觉和视觉效果好,节拍精度高,调节方便。多名琴童使用该节拍器练钢琴均取得很好的效果。硬件成本低廉,不易损坏,可以将外形设计成工艺品。基于 AT89C51 单片机的节拍器具有较好的应用价值。