基于单片机AT89S51的电子琴设计报告.docx

上传人:lao****ou 文档编号:1093198 上传时间:2024-10-29 格式:DOCX 页数:11 大小:122.28KB
下载 相关 举报
基于单片机AT89S51的电子琴设计报告.docx_第1页
第1页 / 共11页
基于单片机AT89S51的电子琴设计报告.docx_第2页
第2页 / 共11页
基于单片机AT89S51的电子琴设计报告.docx_第3页
第3页 / 共11页
基于单片机AT89S51的电子琴设计报告.docx_第4页
第4页 / 共11页
基于单片机AT89S51的电子琴设计报告.docx_第5页
第5页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于单片机AT89S51的电子琴设计报告.docx》由会员分享,可在线阅读,更多相关《基于单片机AT89S51的电子琴设计报告.docx(11页珍藏版)》请在第一文库网上搜索。

1、基于89S51单片机电子琴设计报告学生姓名邓昌能钟坡杭志杰学院计算机与电子信息工程专业电信、计科指导教师陈勇职称教授湖南商学院北津学院2023年12月摘要本文介绍了基于AT89S51单片机的电子琴的设计与实现。电子琴的主要功能是利用以AT89S51单片机为系统控制处理器;关键字:AT89S51单片机7段数码管蜂鸣器目录摘要1绪论21设计21.1 设计目的21.2 设计方法和内容22设计方案22.1 系统总体设计方案32.2 系统的结构框架33硬件电路的设计43. 1单片机最小系统44. 2独立键盘控制电路设计错误!未定义书签。5. 37段数码管显示电路设计错误!未定义书签。6. 4蜂鸣器电路设

2、计错误!未定义书签。4软件系统的实现56.1 主程序设计57. 2程序思路5结论5附录:源程序代码6绪论1设计I .1设计目的II )了解单片机及其工作原理;12)了解如何用C语言编程;13)如何将单片机应用于生活中。1.2设计方法和内容11)能够对电子电路、电子元器件、印制电路板等方面的知识有进一步的认识,独立对其进行测试与检查。2)熟悉8051单片机的内部结构和功能,合理使用其内部存放器,能够完成相关软件编程设计工作。3)为实现预期功能,能够对系统进行快速的调试,并能够对出现的功能故障进行分析,及时修改相关软硬件。4)对软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的

3、锻炼和提高。2设计方案2.1 系统总体设计方案由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时7计数器to来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。2.2 系统的结构框架图系统结构框架3硬件电路的设计3.1 单片机最小系统本次设计中单片机晶振为12MHZ,那么定时器的计数周期为IMHZ,假设选择工作方式1,那T值便为T=216-5*105/相应的频率,那么根据不同的频率计算出应该赋给定时器的计数值,列出不同音符与单片

4、机计数TO相关的计值。X-X1CRYSTA118RP1RESPACK-8P101/P112/P123/P134/P145/P156/R167/R178XTA11P0.0AP0.1/AD1P0.2/AD2XTA12P0.3/AD3P0.4/AMP0.5/AD5P0.6MRSTP0.7/AD7P2.0AP2.1Z6P2.2/A10PSENP2.3/A11A1EP2.4/A12EAP2.5/A13P2.6/A14P2.7/A15P1JDP3.0/RXDP1.1P3.1/TXDP12P3,2iNTOP13P3.3iNT1P1.4P3.4ZTOP15P3.5/T1P1P3.6iVRP1.7P3.7/RD

5、AT89C513837363534333221222324252627281S1101112_J3SOUNDER图3-1单片机最小系统原理图-k.f.2713.2 独立键盘控制电路设计3. 3发光二极管显示电路设计3.4蜂鸣器电路设计4软件系统的实现4.1主程序设计本次设计中单片机晶振为12MHZ,那么定时器的计数周期为IMH乙假设选择工作方式1,那T值便为T=216-5*105/相应的频率,那么根据不同的频率计算出应该赋给定时器的计数值,列出不同音符与单片机计数TO相关的计数值。图4.1主程序流程图4.2程个矩予两管50*4赋有码跖这4键计数如了按共段数结论本设片机的通本功能,通步掌握了用。

6、同时,电路的设了51单片应用。通过序思路简易电子琴应用阵键盘,每一个了不同的音调,个八度。对应7现实1到F16个根据按键功能,装入音符T值到TO中计主要用到了单用IO口的读写根过实际操作进一51单片机的使通过单片机外围计,更深入学习机在生活中中的实际焊接电路,编写程序,也进一步提高了我的动手能力以及分析解决错误的能力,是我能够更好的将所学知识应用到实际中来。本系统能够根本满足设计要求,能够实现自行车转换灯指示,但由于经验能力有限,该系统还存在着许多不尽人意的地方有待于进一步的完善与改良。附录:源程序代码#inc1ude#defineucharunsignedchar#defineuintuns

7、ignedintuintkey,ijtime,m,k;uchartemp;ucharSTHO,ST1O,STH1,ST11;sbitsw=P27;sbitspeaker=P24;sbitP37=P37;sbitP36=P36;sbitP35=P35;sbitP34=P34;/音阶频率表高八位codeunsignedcharFREQH=0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8,0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC,1,2,3,4,5,6,7,8,iOxFC,OxFD,OxFD7OxFD,OxFD,OxFEzOxFE,OxFE,

8、OxFE,OxFE,OxFE,OxFE,OxFF,);/音阶频率表低八位codeunsignedcharFREQ1=0x42,OxC1,0x17,0xB6,OxDO,OxD1,0xB6,0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B,0x8F,1,2,3A5,6,7,8,iOxEE,0x44,0x6B,0xB4,0xF4,0x2D,0x47,0x77,0xA2,0xB6,OxDA,OxFA,0x16,);unsignedintcodetab=64021,64103,64260,64400,64524,64580,64684,64777,64820,64898,64968,

9、65030,65058,65110,65157,65178;voidkey_music()(P3=0xff;P34=0;temp=P3;temp=temp&0x0f;if(temp!=xf)(for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp&0x0f;if(temp!=00f)(temp=P3;temp=temp&0x0f;switch(temp)(caseOxOe:key=O;break;caseOxOd:key=1;break;caseOxOb:key=2;break;case0x07:key=3;break;)speaker=speake

10、r;STH1=tabkey256;ST11=tabkey%256;TRO=1;temp=P3;temp=temp&OxOf;whi1e(temp!=xf)(temp=P3;temp=temp&OxOf;)TRO=O;P3=0xff;P35=0;temp=P3;temp=temp&0x0f;if(temp!=xf)(for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp&0x0f;if(temp!=00f)temp=P3;temp=temp&OxOf;switch(temp)(caseOxOe:key=4;break;caseOxOd:key=5;br

11、eak;caseOxOb:key=6;break;case0x07:key=7;break;)SPeaker=speaker;STH1=tabkey256;ST11=tabkey%256;TR0=1;temp=P3;temp=temp&OxOf;whi1e(temp!=xf)(temp=P3;temp=temp&OxOf;TRO=O;P3=0xff;P36=0;temp=P3;temp=temp&0x0f;if(temp!=xf)(for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp&0x0f;if(temp!=xf)(temp=P3;temp=t

12、emp&0x0f;switch(temp)caseOxOe:key=8;break;caseOxOd:key=9;break;caseOxOb:key=10;break;case0x07:key=11;break;)speaker=speaker;STH1=tabkey556;ST11=tabkey%256;TR0=1;temp=P3;temp=temp&OxOf;whi1e(temp!=xf)(temp=P3;temp=temp&OxOf;TRO=O;)P3=0xff;P37=0;temp=P3;temp=temp&0x0f;if(temp!=xf)(for(i=50;i0;i-)for(j

13、=200;j0;j-);temp=P3;temp=temp&OxOf;if(temp!=xf)(temp=P3;temp=temp&0x0f;switch(temp)caseOxOe:key=12;break;caseOxOd:key=13;break;caseOxOb:key=14;break;case0x07:key=15;break;)speaker=speaker;STH1=tabkey256;ST11=tabkey%256;TR0=1;temp=P3;temp=temp&OxOf;whi1e(temp!=xf)(temp=P3;temp=temp&OxOf;)TRO=O;)voidtimerO(void)interrupt1usingO(if(sw=1)(THO=STH1;T1O=ST11;)e1se(THO=STHO;T1O=ST1O;)speaker=!speaker;)voidde1ay(unsignedchart)(unsignedchart1;unsigned1ongt2;for(t1=0;t1t;t1+)for(t2=0;t28000;t2+)TRO=O;)voidsong()THO=STHO;T1O=ST1O;TR0=1;de1ay(time);)voidmusic(void)(m=0;time=1;sw=1;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服