




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理及系统课程设计评语:考勤( 10)守纪( 10 )过程( 40)设计报告( 30)答辩( 10)总成绩( 100)专业:自动控制班级:1103 班姓名:徐越学 号: 201108902指导教师: 亚宁交通大学自动化与电气工程学院2013 年 9 月 1 日基于单片机的音乐播放器设计摘要随着我国现代化技术建设的发展,电子产品多种多样,但同类电子产品工作 原理基本相同,只不过在硬件电路的是实现上有所不同。例如我们我们平时所用 的 MP3 音乐播放器,就可以用单片机和一些电子元件来实现它的基本功能。我的 设计是以 89C51 单片机作为核心工作元件的音乐播放器,依据单片机技术原理, 通过硬
2、件电路制作以及软件编译,设计制作出一个多功能音乐盒。该音乐盒主要 由按键电路、复位电路、时钟电路以及蜂鸣器组成。本设计利用 KEIL 编程软件对 音乐盒源程序进行编程并调试,配合 PROTEUS 仿真软件对硬件进行仿真调试, 节约了设计时间。它在实现音乐播放功能上简单易行,在制作硬件电路上也不困 难。因此,此次课程设计,我除了完成了系统的软件设计和实物电路仿真外,利 用空余时间制作出了实物。关键字 音乐播放器, AT89C51 单片机, KEIL,PROTEUS 。1 引言1.1 设计目的此次制作的音乐播放器,只需将音乐编码导入 C 语言程序,经过 KEIL 软件 运行生成 HEX 文件,经
3、BDM 下载器导入单片机中即可。可以同时生成多首歌曲 的音乐编码,再次我选择了两首歌的音乐编码。学生自己动手就可以制作属于自 己的个性化的音乐播放器,通过自己动手将所学的单片机知识应用到实践中。1.2 设计要求设计一个基于 AT89C51 的音乐播放器,利用软件编程和相应的硬件电路实现 不同歌曲的播放,先利用 KEIL 软件编程,再用 PROTEUS 仿真实现,生成可执行 的 HEX 文件,最后焊接实物电路。1.3 设计方法采用 AT89C51 单片机、蜂鸣器,晶体振荡器,晶体管 2N2905,复位开关为主 要硬件。 PROTEUS 仿真软件设计和 C 语言编程方法实现播放器的模拟,用 AT8
4、9C51实现音乐编码的处理, 用晶体管 2N2905对电路中电流放大, 进而驱动蜂 鸣器播放音乐。2 设计方案及原理按照系统设计要求,将系统分为主控模块,电源电路复位电路、晶振电路、功率 放大电路,蜂鸣器发声电路等模块。系统框图如图 1 所示。时钟电路功率放大电路图1 系统组成框图AT89C51简介AT89C51 是一种带 4K 字节闪存可编程可擦除只读存储器的低电压,高 性能 CMOS 8 位微处理器,俗称单片机。 AT89C2051 是一种带 2K 字节闪存 可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦 除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技
5、术制造,与工业 标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能8 位 CPU 和闪烁存储 器 组 合 在 单 个 芯 片 中 , ATMEL 的 AT89C51 是 一 种 高 效 微 控 制 器 , AT89C2051 是它的一种精简版本。 AT89C51 单片机 外形及引脚排列如图 2 所示。图 2 AT89C51 单片机引脚图3 硬件设计3.1 晶振电路晶振电路,对于单片机系统而言是必须的,因为单片机部是由各种各样的数 字逻辑器件构成,而这些器件又必须按时间顺序完成。所以在管脚的 XTAL1 和 XTAL2 引脚外接石英晶体和俩个谐振电容,电容采用 2个 30pf 电容,采用
6、 12M 的石英晶体。这样就可以构成单片机的基本时钟电路,时钟频率为12M。如图 2所示3.2 复位电路复位电路是对单片机进行初始化操作,使单片机处于一个确定的初始状态。而要 AT89S51复位得在 RESET引脚上加5V 的高电平信号就可以了。复位电路参 数为 30U 的电解电容和 1k的电阻。如图 3为单片机的复位电路。图 3 复位电路3.3 功率放大电路 功率放大电路对工作电流进行放大,因为单片机电路本身的电流不足以带动 蜂鸣器发生,加一个三极管放大器 2N2905 可以带动蜂鸣器发生。图 4 功率放大电路3.4 晶振、复位、功放之间连线电路图 5 复位电路、晶振电路与单片机之间的连线图
7、3.4 系统连接图图 6 系统连接图4 软件设计4.1 主程序设计主程序流程图如图 6 所示整体硬件连接图如图 6 所示结束图 7 主程序流程图5 系统仿真及调试软件调试,先编写显示程序并进行硬件的正确性检验,然后分别进行主程序, 音乐播放程序和定时程序的编译和调试;硬件调试,仔细检查电路有没有漏接或 是错接的地方,再接一个电压表检查供给蜂鸣器的电压是否合适,调节电阻的阻 值以调节工作电路的阻值。 并且外接了一个数字滤波器检测 P1.7 引脚的电平高低。 如果不理想,继续调整程序和硬件电路, 直到得到正确结果。 仿真图详见第 4图6 6 总结通过此次基于单片机的音乐播放器的设计,使我进一步加深
8、了对课堂上知识的理解,对单片机的寻址方式及定时中断的理解更加深刻,熟悉了单片机应用系 统设计的各主要环节的设计,了解了三极管 2N2905 的参数,及使用方法,蜂鸣器 的正常工作条件,示波器在 PROTEUS 中的使用方法,使用外部晶体振荡器如何 选取电容,及晶体振频率。但是动手制作实物的过程的,动手焊接能力还是不行, 容易把引脚焊接在一起,因此,在以后的学习要加强自己实践能力的锻炼。软件 调试,先编写显示程序并进行硬件的正确性检验,然后分别进行主程序, A/D 转 换程序和 LED 显示器程序编译和调试;硬件调试,仔细检查电路有没有漏接或是 错接的地方,再接一个电压表检查 LED 显示器显示
9、的数值是否和电压表的示数一 致,如果不理想,继续调整程序,直到得到正确结果。附录 1 音乐播放器源程序/音乐播放器代码#include#define uchar unsigned char#define uint unsigned intuchar Count;sbit Speak =P17;/ 蜂鸣器器控制脚/* 以下数组是音符编码 */unsigned char code SONG =/祝你平安0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x2 0,0x30,0x20,0x39,0x1
10、0,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20,0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x1
11、0,0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x6
12、0,0x39,0x10,0x30,0x10,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20,0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x2
13、0,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x00,/路边的野华不要采0x30,0x1C,0x10,0x20,0x40,0x1C,0x10,0x18,0x10,0x20,0x10,0x1C,0x10,0x18,0x40,0x 1C,0x20,0x20,0x20,0x1C,0x20,0x18,0x20,0x20,0x80,0xFF,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x2
14、0,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0xFF,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x2
15、0,0x26,0x20,0x20,0x20,0x30,0x80,0x20,0x30,0x1C,0x10,0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x15,0x1F,0x05,0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x2
16、0,0x26,0x20,0x20,0x20,0x30,0x30,0x20,0x30,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20,0x20,0x26,0x40,0x13,0x60,0x18,0x20,0x15,0x40,0x13,0x40,0x18,0x80,0x00, ;*名称 : Time0_Init()功能 : 定时器的初始化, 定时时间可用光碟中软件计算, 11.0592MZ 晶振,10ms 输入 : 无输出 : 无*/void Time0_Init()TMOD = 0x01;IE = 0x82;TH0 = 0xDC;TL0 = 0x00;名称 : Time0_
17、Int()功能 : 定时器中断,中断中实现 Count 加一输入 : 无输出 : 无*/void Time0_Int() interrupt 1TH0 = 0xDC;TL0 = 0x00;Count+;/ 长度加 1/* 名称 : Delay_x Ms()* 功能 : 延时子程序,经过软件调试,测得延时程序大概为 55us.* 输入 : x* 输出 : 无*/void Delay_x Ms(uint x) uint i,j; for(i=0; ix; i+) for(j=0; j3; j+);/* 名称* 功能* 输入* 输出Play_Song() 播放蜂鸣器控制程序 i (选择播放哪首歌曲,
18、 0 为“祝你平安 ”,1 为“路边的野花你不要采 ” 无*/void Play_Song(uchar i)uchar Temp1,Temp2;uint Addr;Count = 0;Addr = i * 217; while(1)/中断计数器清 0Temp1 = SONGAddr+; if (Temp1 = 0xFF) TR0 = 0;Delay_x Ms(100);else if (Temp1 = 0x00)return;else/休止符/歌曲结束符Temp2 = SONGAddr+;TR0 = 1;while(1)Speak = Speak;Delay_xMs(Temp1); if(Temp2 = Count) Count = 0; break;* 名称: Main()* 功能: 主函数* 输入: 无* 输出: 无*/void Main()/定时器 0 中断初始化Time0_Init(); while(1)Play_Song(1)为路边的Play_S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 打造梦幻卧室:智能灯光设计与布置技巧
- 建筑施工特种作业-建筑电工真题库-6
- 山歌鉴赏题目大全及答案
- 森林幻想题目解析及答案
- 色彩静物美术题目及答案
- 赛车英语题目大全及答案
- 8 3 双曲线-高考数学真题分类 十年高考
- 2023-2024学年湖南省益阳市安化县高二下学期7月期末考试数学试题(解析版)
- 2023-2024学年河北省石家庄市高二下学期7月期末考试数学试题(解析版)
- 2024-2025学年山东省临沂市郯城县美澳联考高一3月月考语文试题(解析版)
- 【专业版】短视频直播电商部门岗位职责及绩效考核指标管理实施办法
- SOHO-VD 收获变频器手册
- 修理厂大修发动机保修合同
- 富血小板血浆(PRP)简介
- MOOC 网络技术与应用-南京邮电大学 中国大学慕课答案
- 电化学储能电站安全规程
- 四年级下册数学教案-8.1确定位置丨苏教版
- 乳粉大数据与智能制造
- 《初三中考动员会》课件
- 住培中医病例讨论-面瘫
- 迪士尼品牌经营策略研究方法
评论
0/150
提交评论