基于单片机的音乐播放器的设计_第1页
基于单片机的音乐播放器的设计_第2页
基于单片机的音乐播放器的设计_第3页
基于单片机的音乐播放器的设计_第4页
基于单片机的音乐播放器的设计_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、湖南工程职业技术学院HUNAN ENGINEERING POLYTECHNIC毕业设计(论文)设计(论文)题目: 基于单片机音乐播放器的设计 系部: 信息工程系 专 业:电子信息工程(自动控制) 学 生 姓 名: 班 级:31082-2 助教职称的填写在第二行;如只有一位指导教师则去掉第二行,如有三位教师,则再添加一行。学号 指导教师姓名: 职称 讲师 最终评定成绩 2011年 4月目 录 第一部分 毕业设计(论文)开题报告第二部分 毕业论文湖南工程职业技术学院毕业设计(论文)开题报告 (_2011届)系部: 信息工程系 专 业: 电子信息工程(自动控制) 学 生 姓 名: 班 级:31082

2、-2 学号 指导教师姓名: 职称 讲师 2011年 4月14日题目:基于单片机音乐播放器的设计文献综述:单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲,一块芯片就成了一台计算机。 MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS- 48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MSC-51单片机作为代表进行理论基础学习。基于单片

3、机的音乐播放器可应用于mp3,MP4,扩音器等很多方面,并可作为很多系统的辅助功能,作为单片机的重要硬件资源之一,利用定时器可以产生各种固定频率的方波信号,也可以产生包括Do、Re、Me-等音阶在内的各种频率声音。将各个音阶连接在一起,便可组成一支曲子或是演奏一段旋律。基于这个思想,我设计了一款特殊的音乐播放器,本播放器可实现播放、暂停、复位等功能。为了体现乐曲播放过程中的动态效果,增加了1只LED,作随机闪烁以指示旋律的节奏。由于时间及条件限制,本设计实现了一种简单的音乐播放器,其核心器件采用AT89C52单片机,本播放器具有电路简单,功能强大,易于拓展等特点。在此基础上,可以添加按键,LE

4、D显示屏等模块,实现切换歌曲,歌曲序号的显示。此音乐播放器实现的控制功能如下:1.程序中存有5首歌曲;2.按下某键后,能选择歌曲,并通过LED显示歌曲序号。 2.选题依据、主要研究内容、研究思路及方案:通过控制定时器的定时时间来产生不同频率的方波,驱动喇叭发出不同音阶的声音,再利用延迟来控制发音时间的长短,即可控制音调中的节拍。把乐谱中的音符和相应的节拍变换为定常数和延迟常数,作为数据表格存放在存储器中。由程序查表得到定时常数和延迟常数,分别用以控制定时器产生方波的频率和发出该频率方波的持续时间。当延迟时间到时,再查下一个音符的定时常数和延迟常数。依次下去,就可以自动演奏乐曲。3.进度及具体安

5、排: 第1周:查阅参考文献和相关资料。 第2周:通过反复阅读、揣摩参考文献和相关资料,弄清楚研究对象的基本原理。 第3-4周:完成论文初稿。 第5-11周:递交初稿,并在指导老师的帮助下,完成论文的修改,确定终稿。 第12周:再次检查、确认终稿符合要求后,打印、刻录光盘,递交正式论文,同时准备论文答辩。4.指导教师意见。指导教师: 年 月 日教研室意见教研室主任: 年 月 日湖南工程职业技术学院毕业设计(论文) 音乐播放器 系 (部):信息工程系 专 业:电子自控 学 号:2 学生姓名: 指导老师: 讲 师2011年4月15 日摘 要 随着科技的发展,市场上出现了许许多多的音乐播放器。人们对播

6、放器的需求也越来越广泛,要求越来越高。本篇论文介绍了音乐播放器的一种设计方法,此设计是利用单片机产生乐曲音符,再把乐曲音符翻译成计算机音乐语言,由单片机进行信息处理,再通过喇叭放出音乐。论文介绍了音乐播放器的硬件设计和软件设计的方法。硬件电路主要由AT89C52单片机芯片,数码显示电路,按键电路和蜂鸣电路四个部分。其中数码显示电路通过单片机的P0端口输出的数据控制。软件程序部分采用语言是C语言。关键字:单片机,音乐播放器,LED显示,按键控制目 录目 录- 2 -第1章 前言- 3 -1.2 音乐播放器的发展- 3 -第2章 音乐播放器的原理简述- 4 -2.1 音频脉冲的产生- 4 -2.2

7、 音乐节拍的产生- 5 -2.3 移 调- 6 -第3章 设计方案- 7 -3.1 硬件电路的设计- 7 -3.2 音乐软件的设计- 10 -第四章 仿真与调试- 21 -4.1 HEX文件的生成- 21 -4.2 在原理图上仿真与调试- 21 -4.3 在实物上调试- 21 -结 论- 23 -致 谢- 24 -参考文献- 25 -第1章 前言1.1 音乐播放器的意义从音乐产生开始,音乐就成了我们生活中不可或缺的一部分。随着时间的发展,不同的音乐播放器也应运而生。我也对其进行了简单的研究,设计了一个简单的音乐播放器。1.2 音乐播放器的发展 几千年来,各种乐器的发声无一不是依靠琴弦,簧片,哨

8、片引起管柱振动而作为声源的。随着现代电子工业技术的发展,一种新的声源来制造音响的新型乐器脱颖而出,这就是目前人们熟知的电子音乐播放器。目前市场上的音乐播放器形形色色,例如大家所熟悉的MP3,随着电子技术的不断发展,音乐播放器的音乐播放器也会进一步发展。目前,单片机的应用渗透到我们生活的各个领域,几乎很难找到有哪个领域没有没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机网络通信和数据的传输,工业化自动控制过程的实时控制和数据处理,广泛是使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机,摄像机,全自动洗衣机的控制,以及程控玩具,电子宠物等等,这些都离不开单片机。本课题即是在这

9、种背景下,对基于AT89C52单片机的音乐播放器设计与实现进行了硬件及软件的设计,并给出了一全套的解决方案,实现了单片机音乐播放器对音乐的演奏。第2章 音乐播放器的原理简述2.1 音频脉冲的产生音乐的产生主要是通过单片机的I/O口输出高低不同的脉冲信号来控制蜂鸣器发音。要想产色很难过音频脉冲信号,需要算出某一音频的周期(1/频率),然后要将此周期除以2,即为半周期的时间。利用单片机定时器计时这个半周期,每当计时到后就将输出的脉冲I/O口反相,这样就能在此I/O口上得到此频率的脉冲。通常,利用P89C5X单片机的内部定时器0,工作在方式1下,改变计数初值TH0和TL0来产生不同的频率。例如,若单

10、片机采用12MHZ 晶振频率,要产生频率为587HZ的音频脉冲时,其音频脉冲信号的周期T=1/587=1703.5775S1704S,半周期的时间为852S,因此只要令计数器计数=852S/1S=852,在每次计数852次时将I/0口反相,就可得到C调中音Re。计数脉冲值与频率的关系如下:N=Fi2Fr式中,N:计数值。 Fi:因内部计时一次为1S,故其频率为1MHZ。 Fr:要产生的频率。计数值T的求法为:T=65536-N=65536-Fi2Fr例如,设Fi为1MHZ,求低音Do(262HZ)、中音Do(523HZ)和高音Do(1046HZ)的计数值。解:T=65536-Fi2Fr=655

11、36-2Fr=35536-Fr低音Do的T=35536-262=63628中音Do的T=35536-523=64580高音DO的T=35536-1046=65058综上所述,C调各音符频率与计数值T的关系如表1-1所示。表1-1 C调各音符频率与计数值T的关系音符频率(HZ)简谱码(T值)音符频率(HZ)简谱码(T值)低1 Do26263628中#4 Fa#74064860低#1 Do#27763731中5 So78464898低2 Re29463835中#5 So#83164934低#2 Re#31163928中6 La88064968低3 Mi33064021中#6 La#93264994

12、低4 Fa34964103中7 Si98865030低#4 Fa#37064185高1 Do104665058低5 So39264260高#1 Do#110965085低#5 So#41564331高2 Re117565110低6 La44064400高#2 Re#124565134低#6 La#46664463高3 Mi131865157低7 Si49464524高4 Fa139765178中1 Do52364580高#4 Fa#148065198中#1 Do#55464633高5 So156865217中2 Re58764684高#5 So#166165235中#2 Re#62264372

13、高6 La176065252中3 Mi65964777高#6 La#186565268中4 Fa69864820高7 Si196765283 2.2 音乐节拍的产生每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍,表1-2为节拍与节拍的时间对照表如果1拍为0.4s,1/4拍是0.1s。只要设定延时时间就可以求得节拍的时间。假设1/4拍为1DELAY,那么1拍应为4DELAY,以此类推。所以只要求得1/4拍的DELAY,其余的节拍就是它的倍数,表1-3为1/4和1/8拍的时间设定。表1-2 节拍与节拍码的对照节拍码节拍数节拍码节拍数11/4拍11/8拍21/2拍21/4拍3

14、3/4拍33/8拍41拍41/2拍节拍码节拍数节拍码节拍数5拍55/8拍6拍63/4拍82拍81拍A拍A拍C3拍C拍F拍表1/4和1/8拍的时间设定1/4拍的延时设定1/8拍的延时设定曲调值DELAY(延时时间)曲调值DELAY(延时时间)调4/4125ms调4/462ms调3/4187ms调3/494ms调2/4250ms调2/4125ms1/4拍的延时时间=187ms。2.3 移 调一般的歌曲,有3/8、2/4、3/4、4/4等节拍类型,但不管有几拍,基本上是在C调下演奏的。如果是C,则音名C唱Do,音名D唱Re,音名E唱Mi,音名F唱Fa,音名G唱So,音名A唱La,音名B唱Si等。但是

15、,并不是所有歌曲都是在C调下演奏的,还有D调,E调,F调,G调等。D调是将C调每个音符上升一个音符实现的,即C调下的音名D在D调下唱Do,C调下的音名E在D调下唱Re,C大调的音名F在D调下升半高半音符F#唱Mi,C调下的音名G在D调下唱Fa,C调下的音名A在D调下唱So,C调下的音名E在D调下唱La,C调下的音名C在D调下升高半音符C#唱Si。这种改变唱法称为移调。E调是在D调的基础上进行移调的,而F调是在E调的基础上进行移调的。表1-4为各调音符与音名的关系。表1-4 各调音符与音名的关系调音名DoReMiFaSoLaSiC调CDEFGABD调DEF#G#ABCE调EF#G#ABCBF调F

16、GABCDEG调GABCDEF#A调ABCDEF#G#B调BCDEFGA第3章 设计方案此音乐播放器实现的控制功能如下:1.程序中存有5首歌曲;2.按下某键后,能选择歌曲,并通过LED显示歌曲序号。 3.1 硬件电路的设计一个完整的音乐播放器电路,相当于一个简单的单片机系统,改系统由按键开关,单片机,晶振和复位电路,LED显示电路,扬声器,控制电路5个部分组成。其中,单片机是集成的IC芯片,而其他的四个部分则须根据应用要求而设计。 3.1.1 单片机的最小系统 单片机芯片,配以必要的外部器件,就能构成单片机的最小系统。单片机具有较强的外部扩展,通信能力。能方便的扩展至应用系统要求的规模。当使用

17、带ROM或EPROM的MCS-51系列单片机时,只要一个芯片即可构成一个单片机的最小系统。选用80C51或8051或AT89C52作为主机,他们都具有4k片内ROM,128字节片内RAM,片外ROM的寻址范围可达64K,2个16位计数器,5个中断源,4个并行口,1个串行口。简易自动乐曲播放器采用单片机最小系统足以满足设计要求,同时要设计单片机的复位和晶振电路。1.单片机的复位电路 单片机的复位电路是单片机的初始化操作,其作用是使CPU各部件都处于一个确定的初始化状态,并从这个初始化状态开始工作,当AT89C52的ALE及RST引脚处于高电平状态时,单片机复位。 单片机的复位有手动复位和三点复位

18、两种形式,RST端的高电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高电平复位信号称为手动复位。图中,上电的瞬间,RST端的点位与VCC相同,随着电容的充电电流的减小,+5V立即加到RST端的高电平端该高电平使单片机复位。若运行过程中,需要程序开始从头执行,这只需按原理图中的复位按钮即可。按下按钮,则直接把+5V的电压接到RST端从而复位,这称为手动复位。在实际应用的系统中,;有些外围芯片也需要复位,如果这些复位端的复位电平要求与单片机要求一致,则可以与之相连。2.单片机的晶振电路 晶振是给提供单片机工作信号脉冲的,这个脉冲是单片的工作速度,比如12M晶振,单片机的工作速度就是每秒1

19、2M,当然,单片机的工作频率是有范围的,不能太大,一般24M就上不去了,不然不稳定。图2为单片机的晶振电路。图1 复位电路图2 晶振电路3.键盘接口电路的设计 单片机系统中的人机对话通道是用户为了对应用系统进行干预以及了解应用系统运行状态所设置的通道,主要有键盘,显示器等通道接口。 在单片机应用系统中,为了控制系统的工种状态以及向系统中输入数据,应用系统设置键盘,用于系统复位,功能转换以及数字输入。键盘的设置可以实现人机对话,借助键盘,可以向计算机系统输入程序,置数,控制程序的执行走向等。 在本次设计中,键盘有P1口输入,按键设置15五个数字键,用来输入15五首歌曲的序号,并控制程序播放歌曲。

20、当按键按下,系统将播放该键对应的歌曲,并且数码管将是显示该歌曲的序号。 4.数码管显示接口电路的设计 在单片机系统中,使用的显示器主要有LED显示器,这种显示器成本低廉,配置灵活,与单片机接口方便,在本设计中采用LED显示器。 LED显示器由8为数码管组成,用于显示器在各种不同条件下的状态, 单片机驱动数码管的方式有很多种,按显示方式分,有静态显示和动态显示,按译码方式分,有硬件译码和软件译码。数码管从电路上来可分为共阴和共阳两种。 在本次设计中,由于电路比较简单,采用的是静态显示。采用了共阳的数码管。5.扬声器控制电路的设计 扬声器控制电路用于发出不同频率的音调,是在P3.7口加一放大器再连

21、接到扬声器上即可构成。 3.1.2 绘制原理图在proteus ISIS 编辑窗口中单击中单击元件列表之上的“P”按钮,添加如所需的元件。在proteus ISIS 编辑窗口中,绘制出原理图。 本电路的原理图如图1所示。图3 原理图 3.2 音乐软件的设计3.2.1音乐代码库的建立方法(1)先找出乐曲的最低音和最高音的范围,然后确定音符表T的顺序。(2)把T值建立在一维数组TABLE1,并把构成发音符的计数值用16进制数表示出来,每个数拆成高低4为,放在“TABLE1”中。(3)简谱码(音符)为高4位,节拍(节拍数)为低4位音符节拍码另建的数组处。 3.2.2 选曲在一个程序中,需要演奏两首或

22、两首以上的歌曲时,音乐代码库的建立有两种方法:将每首歌曲建立相互独立的音符表T和发音符计数值。在建立公用的音符表T后,再写每首歌的发音计数值的代码。在本设计中,建立音乐代码库采用的是第二种方法。 歌曲的设计程序中的歌曲如下:从5首歌曲中可以看出,它们的最低音为低1Do,最高音为高3So。根据音乐软件的设计方法,其对应的简谱码、T值、节拍数如表1-5所示。表1-5 简谱对应的简谱码、T值及节拍数发音简谱码T值T值对应的十六进制发音简谱码T值T值对应的十六进制低1 Do2621F8F3中4 Fa6988FD34低5 So3922FB04中5 So7849FD82低6 La4403FB90中6 La

23、88010FDC8低7 Si4944FC0C中7 Si98811FE06中1 Do5235FC44高1 Do104612FE06中2 Re5876FDAC高2 Re117513FE56中3 Mi6597FD09高3 Mi131814FE85节拍码节拍数节拍码节拍数11/4拍6拍21/2拍82拍33/4拍A拍41拍c3拍5拍F拍 程序如下:#include “reg52.h”#define uint unsigned int#define uchar unsigned charuchar code tab=0xf9,0xa4,0xb0,0x99,0x92;uchar code tab1=0xf8

24、,0xf3,0xfb,0x04,0xfb,0x90,0xfc,0x0c,0xfc,0x44,0xfc,0xfc,0xfd,0x09,0xfd,0x34,0xfd,0x82,0xfd,0xc8,0xfe,0x06,0xfe,0x22,0xfe,0x56,0xfe,0x85;uchar code tab2=0x72,0x92,0x72,0x62,0x72,0x62,0x74,0x72,0x62,0x32,0xc2,0x72,0x66,0x62,0x52,0x32,0xc2,0x62,0x72,0x92,0x62,0x72,0xa2,0x92,0x32,0x62,0x56,/第一行0x62,0x52

25、,0x32,0x52,0x62,0x72,0x92,0x62,0x72,0xa2,0x92,0x92,0x78,0x62,0x72,0x62,0x52,0x92,0xa2,0x64,0x12,0x72,0x74,0x64,0x74,/第二行 0x32,0x72,0x62,0x62,0x58,0x08,0x74,0x94,0xc2,0x92,0xa4,0x02,0xa2,0x92,0x72,0x72,0x92,0x98,0x72,0x92,0xa2,0xc2,0xd2,0xc2,0x92,0x72,0x64,0x94,/第三行 0x72,0x7a,0x72,0x92,0xc2,0x92,0xa4

26、,0x02,0xc2,0xd2,0xc2,0x92,0x72,0x92,0xb2,0xa4,0x02,0x72,0x62,0x72,0x92,0xe2,0xd6,0xe2,0xcc,0x72,0x92,/第四行0xcc,0x72,0x92,0xc2,0x92,0xa4,0x02,0xc2,0xd2,0xc2,0x92,0x72,0x82,0xb2,0xa4,0x02,0x72,0x62,0x72,0x92,0xe2,0xd6,0xb2,0xcc,0x72,0x92,/第五行0x62,0x72,0x92,0xe2,0xd8,0xd8,0xd8,0xdc,0xb4,0xb8,0xb8;/第六行uc

27、har code tab3=0x72,0x92,0xc6,0xa2,0xc4,0xc2,0xb1,0xa1,0xa1,0xb5,0x91,0xa1,0x98,0xa4,0x92,0x82,0x82,0x74,0x62,0x78,0x78,/第一行0xa2,0xc2,0xd2,0xe2,0x76,0xd1,0xc1,0xd6,0xc1,0xd1,0xc8,0x02,0x92,0x82,0x72,0x66,0x51,0xb1,0x5c,0x22,0x52,/第二行0x76,0x92,0x74,0x62,0x52,0x52,0x52,0x52,0x31,0x21,0x24,0x22,0x52,0x7

28、6,0x92,0x92,0x92,0xa2,0x92,0x92,0x61,0x71,0x62,0x51,0x61,0x64,0xa2,0x92,/第三行0x76,0x92,0x92,0x92,0xa2,0x92,0x72,0x62,0x52,0x51,0x61,0x34,0x22,0x32,0x56,0x61,0x71,0x64,0x72,0x52,0x54,0x5c,0x92,0x52,/第四行0x5c,0x72,0x92,0xc6,0xb1,0xc1,0xb4,0xa2,0x92,0xa2,0xc2,0x72,0x62,0x54,0x52,0x12,0x52,0xc4,0x91,0xa1,

29、0x92,0x61,0x71,0x62,0x51,0x61,/第五行0x6c,0x72,0x92,0xc6,0xb1,0xc1,0xb4,0xa2,0x92,0xa2,0xc2,0x72,0x62,0x54,0x52,0x12,0x52,0xc4,0x91,0xa1,0x92,0x61,0x71,0x62,0x62,/第六行0x5c,0x02,0x71,0x91,0x96,0x91,0x91,0x92,0xc1,0xc3,0xc1,0xd1,0xc6,0x82,0xc9;/第七行uchar code tab4=0x72,0x62,0x78,0x62,0x52,0x58,0x52,0x42,/第

30、一行0x54,0x54,0x52,0xb2,0x2c,0xa4,0x54,0x54,0x58,0xa2,0x52,0x64,0x34,0x62, 0x72,0x68,0x72,0x62,/第二行0x78,0x92,0xa2,0x68,0x52,0x62,0x74,0x64,0x54,0x61,0x51,0x36,0x03,0xa1,0x54,0x54,0x42,0x32,/第三行0x44,0x42,0x42,0x42,0x32,0x44,0x42,0x42,0x42,0x52,0x38,0xa2,0x92,0xa6,0xa2,0x92,0x52,0x78,0xa2,0x92,/第四行0xa6,

31、0xa2,0x92,0x52,0x78,0x62,0x52,0x66,0x62,0x52,0x42,0x68,0x52,0x32,0x64,0x62,0x62,0x94,0x78,0xa2,0x92,/第五行0xa6,0xa2,0x92,0x52,0x78,0xa2,0x92,0x92,0xa2,0xa2,0xa2,0x92,0x52,0x78,0x62,0x52,0x66,0x62,0x52,0x32,0x68,0x52,0x32,/第六行0x32,0x42,0x44,0x52,0x42,0x3c;/第七行uchar code tab5=0x32,0x54,0x32,0x61,0x71,0x

32、51,0x31,0x34,0x72,0x71,0x91,0xa1,0xc1,0x91,0x71,0x78,0xa3,0xa1,0xa2,0xc2,/第一行0xa2,0x91,0x71,0x62,0x71,0x91,0x78,0x78,0x72,0x74,0x92,0xa1,0xc1,0x91,0xc1,0xa4,0x72,0xa2,0xa2,0x71,0x61,/第二行0x68,0x53,0x61,0x72,0x92,0x61,0x71,0x52,0x54,0x62,0x61,0x71,0x61,0x51,0x21,0x51,0x38,0x38,/第三行0xa3,0xa1,0xa2,0x92,

33、0xa2,0xc1,0xc1,0xd1,0xe1,0xc2,0xd2,0xd4,0xd1,0xc1,0xa6,0xa2,0xc2,0xc1,0xc1,0xc1,0xd2,0xc2,/第四行0xa2,0x62,0x71,0x91,0xa1,0x91,0x78,0x78,0x72,0x94,0xa2,0xc2,0xd1,0xc1,0xa4,0x92,0xa1,0xc1,0xa2,0x91,0x71,/第五行0x68,0x52,0x51,0x61,0x72,0x92,0xa2,0xd2,0xc1,0xa1,0x91,0xc1,0xa8,0xa8/第六行uchar code tab6=0x52,0x5

34、2,0x52,0x72,0x92,0x92,0x92,0x92,0xa2,0xa2,0xa2,0xc2,0x98,0x82,0x82,0x82,0xa2,0x72,0x72,0x72,0x72,0x62,0x62,0x62,0x62,0x96,0x92,0x52,0x52,0x52,0x72,0x92,0x92,0x92,0x92,0xa2,0xa2,0xa2,0xc2,0x98,0x82,0x82,0x82,0xa2,0x71,0x71,0x71,0x71,0x72,0x72,0x62,0x62,0x62,0x72,0x58;uint x,f,f1,f2;uint a,b,c,d,e,j;s

35、bit P3_7=P37;void delay_10ms() uint i; for(i=200;i0;i-); viod delay_1(uint m) uint l; for(l=m,l0,l-); void delay(uint j) uint k; uint n; for(k=j;k0;k-) for(n=500;n0;n-); void play() P3_7=P3_7; j=a&0x0f; b=a&0xf0; if(b=0) TR1=0; delay(j); else b=b4;b=b-1;c=2*b;d=tab1c;TH1=d;c=c+1;e=tab1c;TL1=e;TR1=1;

36、delay(j); void int1() interrupt 0 P3_7=P3_7; TH1=d; TL1=e; void main() TMOD=0x10; IE=0x88; while(1) P1=0xf0; f1=P1; delay_1(10); P1=0x0f; f2=P1; delay_1(10); f=f1+f2; if(f!=0xff) delay_10ms();if(f!=0xff)if(f=0xfd)for(x=0;x144;x+)P2=tab10;a=tab2x;play();if(f=0xfb)for(x=0;x148;x+)P2=tab1;a=tab3x;play(

37、);if(f=0xf7)for(x=0;x121;x+)P2=tab2;a=tab4x;play(); if(f=0xf7)for(x=0;x116;x+)P2=tab3;a=tab5x;play(); if(f=0xef)for(x=0;x55;x+)P2=tab4;a=tab6x;play(); 第四章 仿真与调试4.1 HEX文件的生成(1)打开单片机软件开发系统Keil Vision,单击Vision菜单中的“Project”,在此下拉菜单中单击“New Project”选项后,弹出“Creat New Project”对话框,键入新建项目名称。(2)键入新建项目名并单击“确定”按钮后

38、,在弹出的“Slecte Device”对话框中选择单片机型号AT89C52。(3)单击Vision菜单中的“File”,在此下拉菜单中选择“New”后,打开一个空的文本编辑窗口,在此窗口输入程序,创建新的源程序“音乐播放器.c”文件。(4)在左边的“Project”窗口的“File”页中单击文件组,再单击鼠标右键后,在弹出的窗口中选中“Add File To Group Source Group 1”选项,将“音乐播放器.c”程序导入到“Source Group 1”中。(5)在“Project”下拉菜单中选择“Options for Target”,将会弹出“Options for Tar

39、get”的对话框,在此对话框中选中“Output”选项卡中的“Creat HEX File”选项。(6)在“Project”下拉菜单中,选择“Rebuild all Target Files”选项。若程序编译成功,将生成“音乐播放器.hex”文件。 4.2 在原理图上仿真与调试 (1)在Proteus ISIS 编辑窗口中,单击鼠标右键将AT89C52 单片机选中并单击鼠标左键,弹出“Edit Compoment”对话框。在此对话框的“Clock Frequency”栏中设置单片机晶振频率为12MHZ,在“Program File”栏中单击图标,选择先前用Keil Vision 2生成的“音乐

40、播放器.hex”文件。 (2) 在 Proteus ISIS编辑窗口的“File”菜单中选择“Save Design”选项,保存设计,生成“音乐播放器.dsn”文件。(3)在Proteus ISIS 编辑窗口下单击运行或在“Debug”菜单中选择“Execute”,鼠标单击按键系统中的K1和任意一个按键后,将听见计算机发出的所设计的歌声,同时VSM示波器弹出如图1-3所示的波形,观察波形可发现,声音不同,波形也会发生相应的变化。 4.3 在实物上调试(1)将制作出的电路板的电源部分和烧写部分分别与电脑连接,打开STC文件夹,双击图标为的文件,在弹出烧写程序的对话框后,单击打开文件导入“音乐播放

41、器.hex”文件。(2)单击左下角的“download/下载”,当左下角的对话框中出现请给单片机上电后,按下电路板上的总开关,程序将会被烧入单片机芯片。(3)按下按键系统中的按键K1,然后任意按下其它的一个按键,将会听见扬声器中发出所设计的歌声。结 论通过这历时半年的毕业设计过程,从查找资料,补充知识到基本实现功能,最后进行实现,拓展,终于能够按照任务书的进度的安排完成了毕业设计的主要内容。最终的设计实现了AT89C51单片机的音乐播放器,基本达到了任务书制定的设计目标。本次设计最终实现的功能为;播放器的中存有5首歌曲,按下相应的按键播放,单片机播放该按键对应的歌曲,数码管显示对应的歌曲序号。 通过对音乐播放器的设计,可以了解到单片机的使用方法,这主要表现在以下三个方面:音乐播放器的结构简单,并且具备最小单片机系统的构成。通过音乐播放器的实例,可以明白,构成一个简单,、同时具备使用性的单片机系统需要哪些外围设备的基本电路。音乐播放器电路中,使用了单片机系统中最常用的输入输出设备:按键开关和数码管。通过本设计说明,可以明确单片机系统的简单的用途和控制方法。音乐播放器的程序最能反应单片机系统中定时器和中断的用法。单片机系统中,中断和定时是单片机系统中最重要的资源,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论