新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于89C51单片机的节拍器设计

基于89C51单片机的节拍器设计

作者:时间:2010-09-11来源:网络收藏

  1 硬件电路原理

本文引用地址:http://www.eepw.com.cn/article/173229.htm

  以AT 为控制中心,由LED 显示模块、调节键盘模块、声音输出模块组成。图1 是的电路原理图。ATMEL 公司生产的AT 与MCS51指令系统兼容,40 脚结构,是系统的控制中心。显示模块由四位一体的共阳极蓝色LED 显示器构成,采用动态扫描显示方式, Q11~ Q14是LED 的位选择开关三极管, R6~ R13是数码管段发光二极管的限流电阻。四位一体的LED 数码管完成显示节拍数、各功能代码及参数值的功能。键盘调节模块由4 只按键构成,分别是功能选择键A、设置参数选择键B、参数增加键C和参数减少键D ,4 只按键可以完成各种功能的选择和各参数的设置。声音输出模块由以Q1、Q2、Q3和扬声器为中心的功率放大电路组成,不同频率的脉冲从的P2.6口输出, 经R14限流和功率放大后,推动扬声器发出洪亮的声音。由于输出的音频信号是脉冲波,三极管工作在开关状态,损耗小发热量不大, Q2、Q3使用小功率管C8050和C8550 即可。整个系统硬件结构简单。由外部提供12 V直流电直接供音频功放模块使用,经LM7805 稳压成5 V 后供单片机及LED 显示用。

  


  (点击查看原始图片)

  2 软件说明

  软件系统采用模块化结构,分别是主程序模块、模块、键盘识别和参数设置模块等。其中每个模块又由若干个子模块构成。上电或复位后进入调节功能,重复按A键在调节功能、节拍器功能之间轮换。当进入调节功能后,重复按B 键可选中不同的调节对象,再按C 或D 键增加或减少调节对象的参数值,调节时显示调节对象的代码和参数值。

  2.1 主程序模块

  在主程序模块中完成存储单元的初始化、定时器计数器的初始化、中断初始化、标志位的初始化、扫描键盘,并根据功能选择键A 的值启动以下功能模块之一:参数设置功能、节拍器功能。

  2.2 节拍器功能模块

  节拍速度在24~400 拍/min 范围内可调,节拍误差小于2%,节拍数为1~9可调。显示器显示节拍数,扬声器发出节拍声,显示节拍数1 时发出600 Hz 的高频声0.1 s ,显示其他节拍数时发出300 Hz 的低频声0.1 s。该模块由节拍延时部分、节拍数显示部分、音频脉冲形成部分组成。节拍功能模块程序流程图如图2 所示。

  2.3 参数调节模块

  按A 键选择进入参数调节功能模块后,重复按B 键,可以依次选择节拍速度、节拍分度参数的设置,LED 显示器上显示参数类型代码和该参数的数字,按C 或B 键则在该参数的取值范围内循环增加或减少一个单位值。代码1 是节拍数,取值范围1~9。代码2 是节拍速度,取值范围是24~400拍/min。该模块程序由键盘扫描识别部分、参数显示部分、A键处理部分、B 键处理部分和C、D 键处理等子程序组成。

  

  图2 节拍器模块流程图


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭