基于51单片机的音乐盒的设计与实现

上传人:xmg****18 文档编号:122458658 上传时间:2020-03-05 格式:DOC 页数:25 大小:442KB
返回 下载 相关 举报
基于51单片机的音乐盒的设计与实现_第1页
第1页 / 共25页
基于51单片机的音乐盒的设计与实现_第2页
第2页 / 共25页
基于51单片机的音乐盒的设计与实现_第3页
第3页 / 共25页
基于51单片机的音乐盒的设计与实现_第4页
第4页 / 共25页
基于51单片机的音乐盒的设计与实现_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《基于51单片机的音乐盒的设计与实现》由会员分享,可在线阅读,更多相关《基于51单片机的音乐盒的设计与实现(25页珍藏版)》请在金锄头文库上搜索。

1、 沈阳航空航天大学 课课 程程 设设 计计 报报 告告 课程设计名称 单片机系统综合课程设计单片机系统综合课程设计 课程设计题目 基于 51 单片机的音乐盒的设计与实现 目目 录录 第第 1 1 章章总体设计方案总体设计方案 1 1 1 1 设计原理 1 1 2 设计思路 1 1 3 实验环境 1 第第 2 2 章章 详细设计方案详细设计方案 2 2 2 1 硬件电路设计 2 2 2 主程序设计 5 2 3 功能模块的设计与实现 5 第第 3 3 章章 结果测试及分析结果测试及分析 9 9 3 1 结果测试 9 3 2 结果分析 9 参考文献参考文献 1010 附录 1 元件清单 11 附录

2、2 总电路图 12 附录 3 程序代码 13 第 1 章总体设计方案 1 11 1 设计原理设计原理 电子音乐已广泛地应用于社会生活的各个领域 其类型从音乐卡片到 CD MP3 等多种多样 制作原理也各不相同 声音是通过振动产生的 单片机对 某一 I O 引脚以一定的频率循环置 1 和清 0 这一引脚便产生一定频率的方波 该方波通过放大后作用于扬声器便产生一定频率的声音 若改变输出方波的频率 产生的声音也就改变了 通过控制输出方波的时间长短 声音的长短也就得到控 制 因此 根据乐谱 单片机就可产生电子音乐 音乐中最关键的两个要素是音 符和节拍 单片机控制的音乐发生器系统由硬件电路和软件两部分构

3、成 利用单 片机控制的电子音乐发生器软硬件上具有独特的优点 系统的开发周期短 成本 低 电路制作容易 更换歌曲时 硬件电路无需作任何修改 只需修改软件即可 实现 软件编程时 可用 51 系列单片机的汇编语言 同时还可根据个人的习好 通过软件改变节拍的延时时间 增加电子音乐的趣味性 1 21 2 设计思路设计思路 采用汇编语言程序设计的方法结合硬件电路设计方法 利用 Lab6000 实验箱 上已有芯片来实现音乐盒的各项功能 1 1 提出方案提出方案 利用定时器计时这个半周期时间 每当计时到后就将输出脉冲的 I O 反相 然后重复计时此半周期时间再对 I O 口反相就可在 I O 脚上得到此频率的

4、脉冲 当键盘有键按下时 判断键值 启动计数器 T0 产生一定频率的脉冲 驱动蜂鸣 器 放出乐曲 同时在 LCD 显示歌曲序号和歌曲名称 2 2 总体方案总体方案实现实现 1 要产生音频脉冲 只要算出某一音频的周期 1 音频 然后将此周期除 以 2 即为半周期的时间 利用定时器计时这个半周期时间 每当计时到后就将输 出脉冲的 I O 反相 然后重复计时此半周期时间再对 I O 口反相 就可在 I O 脚 上得到此频率的脉冲 2 利用 8051 的内部定时器使其工作在计数器模式 MODE1 下 改变记数值 TH0 及 TL0 以产生不同频率的方法 例如频率为 523HZ 其周期 T 1 523 1

5、912 微秒 因 此只要令计数器定时 956 1 956 在每记数 9 次时将 I O 口反相 就可得到中音 D0 523HZ 1 31 3 实验环境实验环境 硬件环境 Lab6000 实验箱 PC 机 软件环境 Wave 应用软件 第 2 章 详细设计方案 2 12 1 硬件电路设计硬件电路设计 硬件电路的设计需要借助 Protel 软件来实现 基于单片机音乐盒的硬件电路 设计是由 8751 单片机芯片 晶振电路 键控电路 播音电路和显示电路几部分 组成 总体框架图如图 2 1 所示 8751 单片机 6MHz 晶振电路 数码管显示电路 键控电路 发声电路 图 2 1 硬件电路连线图 1 1

6、 单片机电路的设计单片机电路的设计 图 2 2 是 8751 单片机图 8751 单片机是把那些作为控制应用所必需的基本 内容都集成在一个尺寸有限的集成电路芯片上 除模拟比较器外其内部结构与 8051 内部结构基本一致 如果按功能划分 它由如下功能部件组成 即微处理器 数据存储器 程序存储器 并行 I O 口 串行口 定时器 计数器 中断系统及 特殊功能寄存器 它们都是通过片内单一总线连接而成 其基本结构依旧是 CPU 加上外围芯片的传统结构模式 但对各种功能部件的控制是采用特殊功能寄存器 的集中控制方式 在 8751 单片机中存在中断源 其中有两个外部中断源 两个 内部中断源和一个串行中断源

7、 通过 TXAL1 与 TXAL2 输入时钟信号 通过 p0 0 p0 7 输出控制现实控制信号的显示 通过 P1 0 输出控制蜂鸣器发声 有 INT0 INT1 T1 分别作为上一曲 下一曲和开始暂停的控制输入 图 2 2 8751 单片机 2 2 键控电路的设计键控电路的设计 如图 2 3 控制电路所示 下一曲按键与单片机的 INT1 相连 上一曲按键与 INT0 相连 开始 暂停键与 T1 相连 当电键按下时接口接低电平 从而实现对音 乐播放器的控制 下一曲按键接通实现下一曲更换 上一曲按键接通实现上一曲 更换 开始 暂停按键接通实现开始 暂停操作 图 2 3 键控电路 3 3 显示电路

8、的设计显示电路的设计 如果所有的发光二极管的阴极接在一起 称之为共阴极结构 则数码管显示 段输入高电平有效 当某段输入高电平该段便发光 使用时管子的上下端正中间 的两个或者一个 内部公共端已经接在一起 接线端接低电平 其它的每段显示 如图 2 4 所示 本次课设通过单片机的 P0 0 P0 7 分别与数码管的 a b c d e f g dp 间接连接 从而显示播放音乐的序号 图 2 4 数码管 4 4 晶振电路的设计晶振电路的设计 如图 2 5 所示 晶振电路由两个 22pF 的电容和一个 6Mhz 的晶体振荡器组成 图中第一条输入线与 8751 单片机的 X1 相连接 图中第二条输入线与单

9、片机的 X2 相连接 晶振电路为单片机提供时间信号 为音乐的播放节拍控制提供基本时间 单位 图 2 5 晶振电路 5 5 播音电路的设计播音电路的设计 如图 2 6 播音电路所示 播音电路是由数字扬声器连接 p1 0 接口实现音乐的 输出 如果通过 p1 0 直接接通扬声器 肯定不会发出音乐 这里还需要通过一 个三极管将电流放大 然后通过单片机调用相应程序 并将音乐信号由 p1 0 口 输出 驱动扬声器发出美妙的音乐 图 2 6 播音电路 2 22 2 主程序设计主程序设计 主程序实现对单片机进行初始化后 进入曲目识别子程序 进行歌曲曲目判 断 确定歌曲曲目后 数码管再进行显示 然后 子程序对

10、是否播放进行循环判 断 得到播放中断的指令后再进行播放 执行播放后 关闭数码管显示并调用查表子程序进行播放音乐 在播放音乐 的过程中 查表子程序循环判断音乐是否结束 当音乐结束时 程序跳转回曲目 识别子程序 主程序流程图如图 2 7 所示 开始 初始化 数码管显示歌曲号 等待按键 是否 播放 暂停 上一 曲 下一有曲 依据选择的按键 播放相应的 歌曲或者暂停歌曲 是否歌曲结束 结束 Y N Y N 图 2 7 主程序流程图 2 32 3 功能模块的设计与实现功能模块的设计与实现 功能模块包括 对开始 暂停 上一曲 下一曲三个中断子程序的设计 具 体的设计与实现如下几点所示 1 1 播放 播放

11、暂停子程序功能模块的设计与实现暂停子程序功能模块的设计与实现 播放 暂停在程序利用内部中断 T0 口 将 T0 口设为计数中断并工作在方式 2 下 标识符初值赋值为 R1 00H 计数初值设为 TH0 0FFH TL0 0FFH 当按键第 一次产生中断信号时 播放 暂停子程序改变标志符 R1 将其赋值为 01H 此时 播放器由暂停状态进入播放状态 当按键第二次产生中断信号时 播放 暂停子 程序判断 R1 是否为 02H 后 将 R1 再次赋值为 00H 此时 播放器由播放状态进 入暂停状态 具体流程图如图 2 8 所示 开始 标识符R0 00H R0是否为00H 播放音乐 按暂停 播放键产生中

12、 断 标识符R0 01H R0是否为02H 将R0赋值为00H 暂停 N Y N Y 2 2 曲目选择子程序功能模块的设计与实现 曲目选择子程序功能模块的设计与实现 曲目选择子程序分为上一曲子程序和下一曲子程序 上一曲和下一曲功能实 现方式类似 分别由外部中断和外部中断 下面以实现上一曲功能为例 0INT1INT 首先设置标识符 R7 初始值为 00H 当按键产生中断信号 上一曲中断子程序改变 标识符 R7 的值为 01H 并改变曲目 R0 的值 播放子程序判断出标识符 R7 改变后 先将 R7 赋值为 00H 然后跳转到曲目识别子程序 具体流程图如图 2 9 所示 图 2 8 播放 暂停子程

13、序功能图 开始 标识符R7 00H R7是否为01H 查询歌曲曲目 将R7赋值为00H 播放音乐 N Y 将R7赋值为01H 改变曲目R0的值 按键上一曲 下一曲 图 2 9 曲目选择子程序功能图 第 3 章 结果测试及分析 3 13 1 结果测试结果测试 音乐播放器很好的实现了播放 暂停 上一曲 下一曲的功能 并满足了数 码管显示的特殊要求 音效良好 能很好听出乐曲的曲名 当然设计的音乐播 放器也存在着不足之处 8 位 LED 数码管只能显示 10 以内的歌曲曲目 超过 10 将无法显示 3 23 2 结果分析结果分析 调试过程中所遇到的问题 1 在歌曲中 当遇到一个音符发音为 4 拍 在编

14、曲中为 CH 因时间较长 当定时器 T1 此时来中断时 就会对歌曲播放产生影响 若改为发音一拍 中断 对歌曲播放影响减弱 但音乐效果变差 改进方案 若采用可以定时时间更长的单片机 可以避免所有问题 2 数码管显示的时间与真正的时间进度不一致 原因分析 定时器初值设置有误 本次设计的晶振为 6MHZ 而程序中的初值 却设置成了 6MHZ 晶振所采用的值 5000 导致显示的时间比真正的时间要慢 参考文献 1 王爱英 计算机组成与设计 M 北京 教育出版社 2003 2 杨素行 微型计算机系统原理及应用 M 北京 清华大学出版社 1996 3 张雪兰 汇编语言程序设计 M 北京 清华大学出版社 2

15、006 4 龚尚福 微机原理与接口技术 M 西安 西安电子科技大学出版社 2003 5 王中民 微型计算机原理 M 西安 西安电子科技大学出版社 2003 6 沈美明 温冬婵 IBM PC 汇编语言程序设计 M 北京 清华大学出版社 200 附附 录录 1 1 元件清单元件清单 名称 数量 个 型号备注 电阻 3 数码管 17SEG DIGITAL 开关 3BUTTON 单片机 1AT89C51 三极管 32N3906 扬声器 1SPEAKER 电源 25V 电容 3 22pf 2 个 晶振 1CRYSTAL 译码器 174LS138 地址锁存器 174LS373 七路反向器 1ULN2003

16、A 三态反向八 D 锁存器 174LS374 附附 录录 2 2 总电路图总电路图 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date 12 Jul 2013Sheet of File C Users 一一 Desktop ZXL MyDesign2 ddbDrawn By EA VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE P 30 TXD 11 RXD 10 U 8751 C1 22pF C2 22pF X1 6MHz S2 一一一 S1 一一一 S3 一一 一一 VCC D0 3 Q0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号