您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 单片机电子琴设计报告
单片机课程设计报告-1-设计题目单片机电子琴专业************班级0802姓名***学号***同组成员***指导教师***提交日期2011-05-17课程设计报告单片机课程设计报告-2-摘要随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机的简易电子琴。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本系统是以51系列单片机AT89C51为主控制器,附有矩阵键盘、LED显示管、扬声器组成。系统完成显示输入信息、播放相应音符等基本功能。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。关键词:AT89C51,矩阵键盘,LED显示管,蜂鸣器,1602液晶显示,1307时钟芯片。单片机课程设计报告-3-目录第1章概述----------------------------------------------------------------------------------4第2章课程设计任务及要求-----------------------------------------------------------42.1设计任务-------------------------------------------------------------------------------42.2设计要求-------------------------------------------------------------------------------4第3章系统设计-----------------------------------------------------------------------------53.1设计方案-------------------------------------------------------------------------------53.2系统设计--------------------------------------------------------------------------------53.2.2系统流程图-----------------------------------------------------------------------53.2.2系统原理图------------------------------------------------------------------------73.3文件程序代码---------------------------------------------------------------------------7第4章心得体会-----------------------------------------------------------------------------42单片机课程设计报告-4-第1章概述单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。本系统是简易电子琴的设计,按下键盘矩阵中的按键会使数码管显示当前按键,扬声器播放器对应的音符。通过设计本系统可了解单片机的基本功能。对单片机的了解有一个小的飞跃。第2章课程设计任务及要求2.1设计任务1、任务设计一简易电子琴,要求能够发出1,2,3,4,5,6,7等7个音符,具有一般演奏功能。2.2设计要求1)具有一般演奏功能,利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出8个不同的音调,并且要求按下按键发声,松开延时一段时间停止,中间再按别的键则发另一个音调的声音2)具有自动播放已存曲目功能3)显示当前正在播放的歌曲的名称和歌词4)显示北京时间单片机课程设计报告-5-第3章系统设计3.1设计方案该电路由时钟模块,液晶模块,键盘扫描模块组成。时钟模块:由时钟模块1307实现,能够正确显示北京时间,以及扩展显示星期等等。液晶模块:将时钟模块的信息正确的显示到液晶显示屏上,使用1602的液晶。键盘扫描模块:对十六个按键进行逐次扫描,扫描到前八个按键时,蜂鸣器依次发出1,2,3,4,5,6,7,8的音调声,岸其余按键时,可以跳转到不同的曲目以及液晶模块显示,保留几个按键做以后的扩展用。3.2系统设计3.2.1系统流程图分析各项设计要求后,可绘制如下程序流程图单片机课程设计报告-6-开始初始化While1有键盘按下真的有键盘按下吗键盘扫描处理根据不同的扫描值赋值于Key根据Key值做相应程序处理YNN再次从新扫描结束延时一段时间Y单片机课程设计报告-7-3.2.2系统原理图3.3文件程序代码(1).液晶模块头文件sbitLCD_RS=P3^6;sbitLCD_RW=P3^5;sbitLCD_EN=P3^3;sfrLCDData=0x80;单片机课程设计报告-8-voidLCDWrite(bitcd,unsignedcharinput);voidLCDWait(unsignedcharCiShu);voidLCDDelay();voidLCDInitialize();voidLCDPrintString(unsignedcharx,unsignedchary,unsignedchar*string);voidLCDPrintNumber(unsignedcharx,unsignedchary,unsignedcharbits,unsignedintnumber);unsignedcharReadState();voidLCDInitialize(){LCDDelay();LCDWrite(0,0x38);LCDDelay();LCDWrite(0,0x38);LCDDelay();LCDWrite(0,0x38);LCDDelay();LCDWrite(0,0x38);LCDDelay();LCDWrite(0,0x08);LCDDelay();LCDWrite(0,0x01);LCDDelay();单片机课程设计报告-9-LCDWrite(0,0x06);LCDDelay();LCDWrite(0,0x0c);}voidLCDWrite(bitcd,unsignedcharDATA){LCDWait(20);LCD_RS=cd;LCD_RW=0;LCD_EN=0;LCDData=DATA;LCD_EN=1;LCD_EN=0;}voidLCDPrintString(unsignedcharx,unsignedchary,unsignedchar*string){unsignedcharaddress;address=x+(1-y)*0x40+0x80;LCDWrite(0,address);while(*string!='\0'){LCDWrite(1,*string);单片机课程设计报告-10-string++;}}voidLCDPrintNumber(unsignedcharx,unsignedchary,unsignedcharWeiShu,unsignedintnumber){unsignedcharaddress;unsignedcharj,temp[5];address=x+(1-y)*0x40+0x80;LCDWrite(0,address);//if(number0){temp[0]=(number%100000)/10000+48;temp[1]=(number%10000)/1000+48;temp[2]=(number%1000)/100+48;temp[3]=(number%100)/10+48;temp[4]=number%10+48;for(j=5-WeiShu;j5;j++){LCDWrite(1,temp[j]);}}}单片机课程设计报告-11-voidLCDWait(unsignedcharCiShu){unsignedchari;for(i=0;iCiShu;i++){if(ReadState()&0x80)continue;elsebreak;}}unsignedcharReadState(){unsignedchartemp;P0=0xff;LCD_EN=0;LCD_RS=0;LCD_RW=1;LCD_EN=1;temp=LCDData;LCD_EN=0;returntemp;}voidLCDDelay()单片机课程设计报告-12-{unsignedinta;for(a=0;a1000;a++);}(2).时钟芯片模块头文件voidiicdelay(unsignedinttimes);voidiicstart(){MDE=1;MDO=1;iicdelay(2);MCO=1;iicdelay(2);MDO=0;iicdelay(2);}voidiicstop(){MDE=1;MDO=0;iicdelay(2);MCO=1;iicdelay(2);单片机课程设计报告-13-MDO=1;}voidiicack(){MDE=1;MCO=0;MDO=0;iicdelay(2);MCO=1;iicdelay(2);MCO=0;iicdelay(1);MDO=1;}voidiicnack(){MDE=1;//MCO=0;MDO=1;iicdelay(2);MCO=1;iicdelay(2);MCO=0;}单片机课程设计报告-14-bitiicreadack(){bitack;MCO=0;iicdelay(2);MDE=1;MDO=1;MCO=1;iicdelay(2);MDE=0;ack=MDI;MCO=0;returnack;}voidiicwriteda(unsignedcharda){unsignedchari;MDE=1;for(i=0;i8;i++){MCO=0;iicdelay(0);if((dai)&0x80)单片机课程设计报告-15-MDO=1;elseMDO=0;iicdelay(2);MCO=1;iicdelay(3);}MCO=0;}unsignedchariicreadda(){unsignedcharda;inti;da=0;MDE=1;MDO=1;MDE=0;for(i=0;i8;i++){MCO=0;iicdelay(3);MCO=1;iicdelay(1);单片机课程设计报告-16-if(MDI==1){da=da1;da++;}elseda=da1;}MCO=0;returnda;}voidiicdelay(unsignedintt){unsignedinti,j;for(i=0;it;i++)for(j=5;j0;j--);}voidReadTime(unsigne
本文标题:单片机电子琴设计报告
链接地址:https://www.777doc.com/doc-2606595 .html