基于PIC16F887单片机的数字音乐盒_另存为_第1页
基于PIC16F887单片机的数字音乐盒_另存为_第2页
基于PIC16F887单片机的数字音乐盒_另存为_第3页
基于PIC16F887单片机的数字音乐盒_另存为_第4页
基于PIC16F887单片机的数字音乐盒_另存为_第5页
已阅读5页,还剩13页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

单片机原理及应用课程设计题目数字音乐盒姓名李国灿学号011300XXX学院电气工程与自动化专业电气工程及其自动化年级13级指导教师高伟老师设计任务书1、技术要求制作一个数字音乐盒,盒内存3首流行歌曲,每首不少于30S。采用LCD显示乐曲信息,开机时显示欢迎提示字符(自定),播放时显示歌曲序号及名称。可通过按下功能键K1、K2、K3之一,选择3首乐曲中的1首;然后按下播放键K4,即开始播放所选择的乐曲;K5键位暂停键。二、拟采用方法选用PIC16F887型单片机,利用单片机I/O口产生一定频率的方波,驱动蜂鸣器,发出各种不同的音调,利用延迟函数实现节拍。并由162LCD显示歌曲信息。键盘在单片机应用系统中能实现向单片机输入数据,传送命令等功能,是人工干预单片机的主要手段。本设计采用44键盘,在演奏过程中可通过功能键选择乐曲,暂停,播放。基于PIC16F887单片机的数字音乐盒摘要本设计的数字音乐盒以PIC16F887单片机为核心,用C语言编写。利用单片机的定时器产生不同频率的声波,由I/O口输出,继而启动蜂鸣器发出音乐。通过外部中断进行歌曲切换和播放、暂停。同时LCD显示正在播放歌曲名称。关键词数字音乐盒,PIC16F887,LCD1绪论电子音乐已广泛的应用于社会生活的各个领域,其类型从音乐卡片到CD、MP3等多种多样。利用单片机控制的电子音乐发生器软硬件上具有独特的优点,系统的开发周期短,成本低,电路制作容易。更换歌曲时,硬件电路无需作任何修改,只需修改软件即可实现。随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是毋庸置疑的,其中智能音乐盒就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、生活、提供更好的更方便的服务就需要从单片机技术着手,一切向着数字化控制,智能化控制方向发展。音乐盒的起源,可追溯至中世纪欧洲文艺复兴时期。当时为使教会的的钟塔报时,而将大小的钟表上机械装置,被称为“可发出声音的组钟”。17世纪初,音乐盒的工业成为瑞士超过制表和缝制蕾丝业的第一大产业,这使得位于瑞士侏罗山边的小镇闻名于世。音乐盒300多年的产品发展,同时也是人类文明300多年发展的历史鉴证。每个不同时期的音乐盒造型,都能折射出当时不同的社会心态和文明发展现状,它也成了时代的一面镜子。现今,音乐盒的制造,延袭传统,结合现代,正日益成为人们或为了典藏一段岁月,或为了收藏一份情感,或出于对音乐的追求,或对于旧时代的怀念,或为了居室的美化,等等,而得到众多品位人士的追求。每个不同时期的音乐盒造型,都能折射出当时不同的社会心态和文明发展现状,它也成了时代的一面镜子。音乐盒悠扬的乐声,经常勾起人们对美好往事的会议,甚至魂牵梦萦,坠入时光岁月的追忆中。300多年来席卷全球市场的机械音乐盒的最大魅力也许就在于它能将抽象的音乐,凝固成具象的艺术品,成为人们表达美好情感,追思逝去年华的最佳选择。2数字音乐盒的硬件设计如图1所示,本产品拟采用以PIC16F887单片机为核心芯片的电路来实现,主要由PIC16F887芯片、文字型LCD162显示、44按键、蜂鸣器4部分组成。图1系统结构图21主要元器件的选型一PIC单片机作为控制芯片PIC16F887单片机共有40个引脚,其中有33个端口引脚,7个电源地和复位引脚。外部晶振设为4MHZ,引脚1接复位按键。二液晶显示部分本次课设所用字符型LM016L液晶显示器。要求用4位数据线通讯,传送命令也传送地址。板上要使用LCD时短路插P38、P22均要插上,若要背光控制,可将P22的短路插8短接,如不用背光,该短路插不接。三按键部分采用4X4按键,K1、K2、K3之一,选择3首乐曲中的1首,然后按下播放键K4,即开始播放所选择的乐曲;K5键暂停键。22电路设计为了保证CPU低功耗运行,关键在于如何对电路进行低功耗设计。注意事项有如下几点1)电路的总功耗为CPU以及外围电路功耗之和。所以不仅要降低CPU本身的运行功耗,还应该降低外围电路的功耗。因此应尽量选择低电压、低功耗的CMOS元件。2)单片机的工作电流正比于自身的工作频率与工作电压。因此应尽量采用低电压供电,并使单片机工作于最低频率(4MHZ晶振),因此在需要时可对晶振电路另行设计。3)单片机外围电路应尽可能少的采用阻性元件。如果使用上拉电阻,应尽可能加大电阻阻值并保证电平正常。基于以上几方面,设计出的电路图如下图2设计的电路图3音乐盒的软件设计1发音原理发音原理播放一段音乐需要的是两个元素,一个是音调,另一个是音符。首先要了解对应的音调,音调主要由声音的频率决定,同时也与声音强度有关。对一定强度的纯音,音调随频率的升降而升降;对一定频率的纯音、低频纯音的音调随声强增加而下降,高频纯音的音调却随强度增加而上升。另外,音符的频率有所不同。音符的发音主要靠不同的音频脉冲。利用单片机内部定时器/计数器0,使其工作在模式1,定时中断,然后控制RC2引脚的输出音乐。只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。2音符频率的产生音符及定时器初始值例如中音1(DO)的音频256HZ,周期T1/256S3906US定时器的定时时间为T/23906/2US1953US定时器1953US的计数值定时时间/机器周期1953US/1US1953时钟频率4MHZ装入TMR2计数器初值为1953将1953装入寄存器中,启动工作后,每计数1953次时将产生溢出中断,进入中断服务时,每次对RC2引脚的输出值进行取反,就可得到中音DO(256HZ)的音频。所以综上所述,分别算出各个发音对应的PR2及占空比X。低音PR2X中音PR2X高音PR2X1238574111928715914322125102105256252128318845539422834611441784304892154441075158383579191539966141341670170635857126304762152731763节拍频率的发生节拍的产生与编码音乐中的节拍用延时时间产生。例如,1拍04S,1/4拍01S,以此类推。假设1/4拍执行一次延时程序,则1/2拍就执行两次延时程序,所以只要求出1/4拍的延时时间,其余节拍就是它的倍数。31主模块的设计初始化程序的主要任务是当PIC单片机上电后,对单片机的内部功能寄存器进行初始化设置。初始化的主要流程如图所示。主模块是系统软件的主框架。结构化程序设计一般有“自上而下”和“自下而上”两种方式,“自上而下”法的核心就是主框架的构建。它的合理与否关系到程序最终的功能的多少和性能的好坏。本系统的主模块的程序框图如图3所示。LCD初始化LCD1602是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。但是LCD在每次使用前都必须初始化,对相关参数进行设置以后方可正常使用。LCD初始化的程序框图如图4所示。4结束语1)本次课程设计,了解了音乐盒的发展背景和国内研究现状和发展趋势,音乐盒在300多年前就有了,不过不是数字的,是机械带动的,随着时代的发展,电能的普及和电子元器件的发展,音乐盒也从机械化朝着数字化的趋势发展,而且功能实现越来越多。2)本文通过对基于单片机音乐演奏控制设计的研究和设计,分析了设计的意义和可行性。单片机PIC16F887是一种非常小巧但功能非常多,应用非常广的一种芯片,功率也非常的小,采用PIC16F887作为系统核心制作音乐演奏控制设计电路简单了很多。本设计外部采用单片机的复位电路设计、LCD数码管显示正在播放的音乐序号和歌曲名称,按键控制等,但由于PIC16F887分辨率不是太高,音乐有点单调,另外,由于时间关系具体电路还有的地方不尽完善之处。3)在设计的过程中不仅巩固了所学过的知识,加深了我对所学知识的理解,图3图4而且学到了很多在书本上所没有的知识。提高了实际动手能力和独立思考的能力。参考文献1PIC16系列单片机C程序设计与PROTEUS仿真江和北京航空航天大学出版社20102杨刚,周群电子系统设计与实践电子工业出版社20043何立民单片机高级教程(应用与设计)北京航空航天大学出版社,20004涂时亮,张友德单片微机控制技术清华大学出版社19945融会贯通PROTEL99电路设计弘道工作室人民交通出版设,20006单片机原理及接口技术实验朱定华北方交通大学出版社20027单片机原理及应用蔡振江电子工业出版社20088单片机原理及应用张鑫电子工业出版社20109单片机原理及应用系统设计胡学海电子工业出版社201010单片机课程设计指导杨居义清华大学出版社2009程序INCLUDE_CONFIG0X00F1_CONFIG0X3FFF/歌曲相关参数设置DEFINET1_250MS3036UNSIGNEDINTI0UNSIGNEDINTP10UNSIGNEDINTP20UNSIGNEDINTP30UNSIGNEDINTB,NUNSIGNEDINTX0VOLATILEUNSIGNEDINTA1VOLATILEUNSIGNEDCHARP0,BO0/九月UNSIGNEDCONSTINTCEF_PR246,46,46,46,52,52,59,59,59,52,59,70,79,79,79,79,70,79,52,46,59,59,94,79,79,79,94,70,70,62,70,70,70,79,59,59,59,119,70,59,70,79,79,94,79,79,79,94,70,70,62,70,70,70,79,59,59,59,59,70,70,119,52,52,39,39,39,39,39,46,52,59,59,70,70,70,59,70,59,52,52,52,52,59,52,59,46,105,52,UNSIGNEDCONSTINTCEF_X114,114,114,114,128,128,143,143,143,128,143,170,191,191,191,191,170,191,128,114,143,143,228,191,191,191,228,170,170,152,170,170,170,191,143,143,143,287,170,143,170,191,191,228,191,191,228,170,170,152,170,170,170,191,143,143,143,143,170,170,287,128,128,96,96,96,96,96,96,96,114,128,143,143,170,170,170,143,170,143,128,128,128,128,143,128,143,114,256,128,UNSIGNEDCONSTINTCEF_TM100,200,200,100,100,200,100,200,200,100,100,100,200,100,200,200,100,100,100,200,200,100,100,100,100,100,200,50,50,50,100,100,50,100,100,50,100,50,50,50,100,200,100,50,100,100,50,100,50,50,50,100,50,50,100,100,100,100,50,50,50,100,200,200,200,200,50,100,50,50,50,100,50,200,50,100,50,50,50,100,100,100,100,100,200,100,100,100,200,200,/北国UNSIGNEDCONSTINTJINGLEBELLS_PR294,94,94,88,79,94,105,62,119,119,119,105,94,94,125,125,62,141,94,105,62,141,94,105,62,141,94,105,119,119,62,94,105,79,88,94,105,62,79,88,94,105,79,94,105,62,141,94,105,62,141,94,105,62,88,94,88,94,119,62,88,94,88,94,59,105,119,119,UNSIGNEDCONSTINTJINGLEBELLS_X189,189,189,179,159,189,212,0,239,239,239,212,189,189,253,253,0,283,189,212,0,283,189,212,0,283,189,212,239,239,0,189,212,159,179,189,212,0,159,179,189,212,159,189,212,0,283,189,212,0,283,189,212,0,179,189,179,189,239,0,179,189,179,189,120,212,239,239,UNSIGNEDCONSTINTJINGLEBELLS_TM400,200,200,400,600,800,800,800,400,200,200,400,400,800,200,500,800,400,400,1000,200,400,400,1000,200,400,400,800,300,1600,500,300,500,1500,300,300,1600,200,300,300,500,300,800,500,2000,200,400,400,1000,100,400,400,1000,100,200,200,200,200,1000,200,250,250,250,250,600,400,200,2000,/亲亲我UNSIGNEDCONSTINTSUPER_PR235,119,119,94,119,94,105,119,105,119,141,119,94,79,79,94,79,79,94,79,79,119,105,105,141,119,119,94,94,94,105,119,105,94,79,79,94,79,79,94,79,79,94,79,79,119,105,105,141,119,119,94,94,94,105,119,105,94,79,79,94,79,79,94,79,70,70,94,70,70,94,89,94,105,141,119,119,94,94,119,94,105,119,105,119,141,119UNSIGNEDCONSTINTSUPER_TM100,100,100,100,100,100,200,100,100,200,100,100,200,100,100,100,100,200,200,100,200,200,100,200,200,100,100,100,100,200,200,100,100,100,100,200,200,100,200,200,100,200,100,200,100,200,200,100,100,100,200,100,100,100,100,100,100,200,100,100,200,100,100,200UNSIGNEDCONSTINTSUPER_X85,287,287,228,228,287,228,256,287,256,287,341,287,228,191,191,228,191,191,228,191,191,287,256,256,341,287,287,228,228,228,256,287,256,228,191,191,228,191,228,191,170,170,228,170,170,228,215,228,256,341,287,287,228,228,287,228,256,287,256,287,341,287/子程序声明VOIDPLAY_CEFVOIDVOIDPLAY_JINGLEBELLSVOIDVOIDPLAY_SUPERVOID/VOIDJINGLEBELLS_LRCVOIDVOIDDELAYUNSIGNEDINT/VOIDANJIANVOID/LCD显示相关DEFINEDATA1/LCD写数据时为1DEFINECOM0/LCD写命令时为0DEFINELINE10B10000000VOIDLCD_CSHVOID/初始化VOIDLCD_BUSYVOID/检测LCD是否忙VOIDLCD_WRITEUNSIGNEDCHAR,UNSIGNEDCHAR/LCD写1字节,命令或数据VOIDLCD_WRITE_4UNSIGNEDCHAR,UNSIGNEDCHAR/LCD写半字节UNSIGNEDCHARLCD_READVOID/读LCD,忙检测用VOID

温馨提示

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

评论

0/150

提交评论