




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
20目录绪论1第一章 总体方案设计21.1总体设计要求21.2系统框图2第二章 系统硬件电路的设计3第三章 系统软件电路的设计43.1软件设计思想43.2主程序设计43.3子程序设计53.3.1音乐播放设计53.3.2键盘矩阵扫描子程序73.3.3中断程序设计9第四章 调试及性能分析104.1系统调试104-2.实物制作124.3性能分析总结12总结13附录15A. 电路原理图15B. 仿真图15C. 元件清单16D. 程序清单16E. 实物图19绪论单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。简易电子琴系统就是以单片机为主要元器件设计的一个简易电子琴,这只是单片机应用的一个点,由点及面,希望可以更好的了解和应用单片机技术。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。主要内容是用AT89C51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。之所以以单片机电子琴为选题,目的在于从日常生活能接触到的细微处着手,通过理论与实践的结合,更明确自己的所学所用,也在实践中发现理论的不足,对目前日益广泛应用的单片机有了更加理性化和感性化的认识,使理论和实践相得益彰。 通过单片机电子琴这个选题,更深层次的了解了单片机技术,以前只是有理论,实践的机会不是很多,在作单片机电子琴这个选题的过程中,更加熟练的掌握了一些单片机芯片的应用,也解决了很多以前理论和实践脱节的问题,可谓对单片机的认识有了一个小的飞跃。第一章 总体方案设计1.1总体设计要求本系统采用单片机AT89C51为微处理器,制造可演奏的电子琴,能够在目测条件下LED显示屏各点亮度均匀,充足,稳定,清晰无串扰。本系统具有硬件少,结构简单,容易实现,性能稳定可靠,成本低等特点。根据设计要求,初步确定设计方案如下:1.采用MCS-51单片机作为微处理器。2.应用4*4键盘矩阵识别。即矩阵扫描,显示当前按键。3.依次按下16个开关k0到kF,数码管分别显示“0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F”;依次按下开关k0-k9蜂鸣器分别发出“Do,ri,mi,fa,so,la,xi,do”声;依次按下开关kA-kF蜂鸣器分别发出“Do, ri,mi,fa,so,la,xi,do”声。1.2系统框图本系统主要以51单片机为主控核心,与矩阵键盘、扬声器、LED显示管模块一起组合而成。具体如下:图 1.1 系统框图第二章 系统硬件电路的设计本系统的硬件电路是由单片机最小系统、按键电路、动态显示驱动电路三部分组成。实现键盘矩阵的识别,数码管能显示对应的数字,蜂鸣器能发出相应的音符等功能。这部分主要由张天恩同学完成制作。见附录B。第三章 系统软件电路的设计3.1软件设计思想软件是该电子琴控制系统的重要组成部分,在系统的软件设计中我们也才用了模块化设计,将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性。 3.2主程序设计 主程序首先设置模块初始化,然后发送扫描码,形成键盘矩阵,并显示按键,然后启动定时器根据KeyNo发音。图3.1为主程序流程图。图3.1 主程序流程图主程序如下:void main() P0=0xBF; ;初始显示 TMOD=0x01; IE=0x82; while(1) P1=0xf0; ;发送扫描码 if(P1!=0xf0) ;如果有键按下 Keys_Scan(); ;扫描键盘矩阵 P0=DSY_TableKeyNo; ;显示按键 TR0=1; ;启动定时器,根据KeyNo发音 else TR0=0; ;停止播放 DelayMS(2);3.3子程序设计子程序中包括音乐播放设计,键盘矩阵扫描子程序和中断程序三种,下面依次详细介绍。3.3.1音乐播放设计一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T1/5231912s,因此只要令计数器计时956s/1s956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。 计数脉冲值与频率的关系式是: Nfi2fr 式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。其计数初值T的求法如下: T65536N65536fi2fr例如:设K65536,fi1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。 T65536N65536fi2fr6553610000002fr 65536500000/fr低音DO的T65536500000/26263628中音DO的T65536500000/52364580高音DO的T65536500000/104665058 单片机12MHZ晶振,高中低音符与计数T0相关的计数值如表3-2所示。表3-2 音符频率表音符频率(HZ)简谱码(T值)音符频率(HZ)简谱码(T值)休止00中 4 FA69864820低1DO26263628中 5 SO78464898低2RE29463835中 6 LA88064968低 3 ME33064021中 7 SI98865030低 4 FA34964103高 1 DO104665058低 5 SO39264260高 2 RE117565110低 6 LA44064400高 3 ME131865157低 7 SI49464524高 4 FA139765178我们要为这个音符建立一个表格,单片机通过查表的方式来获得相应的数据 uint code Tone_Delay_Table= 64021,64103,64260,64400,64524,64580,64684,64777,64820,64898,64968,65030,65058,65110,65157,65178, 音乐播放设计子程序如下:Uchar code DSY_Table= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80, 0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xBF;uint code Tone_Delay_Table= 64021,64103,64260,64400,64524,64580,64684,64777, 64820,64898,64968,65030,65058,65110,65157,65178;3.3.2键盘矩阵扫描子程序七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的极管的接线形式,可分成共阴极型和共阳极型。 LED数码管的ga七个发光二极管因加正电压而发亮,因加零电压而不以发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码。本系统键盘矩阵扫描子程序流程图如下:图3.3 键盘矩阵扫描子程序流程图键盘矩阵扫描子程序如下:void Keys_Scan() uchar Tmp,k; P1=0x0F; ;高四位置0,放入四行 DelayMS(2); Tmp=P10x0F; switch(Tmp);判断按键发生于0-3列中的哪一列 case 1:k=0;break; case 2:k=1;break; case 4:k=2;break;case 8:k=3;break; default:return; ;无键按下 P1=0xF0; ;低四位置0,放入四列 DelayMS(2); Tmp=(P14)0x0F; ;对0-3行分别附加起始值0,4,8,12 switch(Tmp) case 1:k+=0;break; case 2:k+=4;break; case 4:k+=8;break; case 8:k+=12;break; default:return;KeyNo=k;3.3.3中断程序设计显示程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定。音乐发声中断流程图如图所示:图3.4中断流程图中断程序设计如下:void Play_Tone() interrupt 1; 定时器0中断程序,不同频率的声音由该中断产生 TH0=Tone_Delay_TableKeyNo/256; TL0=Tone_Delay_TableKeyNo%256; BEEP=BEEP;第四章 调试及性能分析4.1系统调试软件调试主要是利用计算机仿真针对程序中可能存在的错误进行检测,直到得到正确的显示结果。按照程序流程图在KEIL C51软件中编写好程序,在此软件中检测编写好的程序是否有误语法错误。使用步骤:1.打开keil,建立工程,输入程序 2.编译和生成hex文件,如图4-1所示图4-1软件调试3.打开Proteus,设计硬件电路图,见图4-2图4-2硬件仿真图4.在Program File出,导入hex文件,见图4-3图4-3载入Hex文件将鼠标置于电路图中AT89C51器件上,右击后再左击,弹出图4-3中的对话框,导入dzp.hex文件。5.点击面板左下角的,开始调试4-2.实物制作1.按照原理图布线,布线要规范,焊接;2.利用单片机开发工具将程序烧入芯片中;3.将芯片插入底座,确保每个引脚都与底座有良好的接触;4.将电路的VCC端接到电源正极,将电路中接地端接到电源负极;5.观察效果;6.如果效果不对查错(查错方法:利用万用表,将指针打到电流挡,选择合适的电流,此处本人选择了20mA,负极接地,正极从电源端开始检测,以及芯片各个引脚的电流,电源端万有表会显示1,各引脚会显示0.711.0不等,如显示0,则说明断路,焊接有问题,接触不好);7.实物未能出现预期效果。实物图见附录E.4.3性能分析总结此次系统设计结果较好,LED显示屏能很好的显示信息同时播放相应的音符。这个方案设计的可演奏的电子琴,电路简单,成本较低,且较容易扩展成更大的显示屏;LED显示屏各点亮度均匀、充足、稳定、清晰无串扰;硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。总结通过这次科研实践,我学到了不少课本上没有的知识,也锻炼了自己的动手能力,将以前学过的零散的知识串到一起。经过我长时间的设计及调试,本系统基本能实现按下键盘矩阵中的按键会使数码管显示当前按键,扬声器播放对应的音符。但由于仿真系统原因,本设计音频效果不是很好。不足之处有:1.可弹奏的音符数较少,只能在一定范围内满足用户需要。可通过改进键盘识别模块和发生模块来增加其复杂度2.音量不可调。我的综合设计主要涉及硬件和软件两方面的内容,通过这些我的硬件和软件开发能力都获得了提高。首先硬件方面,基本了解了电子产品的开发流程和所要做的工作。基本掌握了Proteus原理图的方法,并设计了一个单片机最小系统。通过开发板的设计和硬件搭建的过程,使我对51系单片机的接口有了更深层次的理解,熟悉了一些单片机常用的外围电路引脚和连接方法,如LED数码管,键盘等。并且我学会了分析问题解决问题的能力,加深了对所学理论知识的理解和运用。我的动手能力得到了很大的提高,创新意识得到了锻炼。参考文献1张靖武,周灵彬单片机系统的PROTEUS设计与仿真北京:电子工业出版社2夏继强. 单片机实验与实践教程. 北京:北京航空航天大学出版社, 20013何立民. 单片机高级教程.第1版北京:北京航空航天大学出版社,20014 AT89C51 DATA SHEEP Philips Semiconductors 1999.dec5肖洪兵. 跟我学用单片机. 北京:北京航空航天大学出版社,2002.8附录A. 电路原理图B. 仿真图 C. 元件清单元件规格数量电容20pF2个电容10uF1个电阻10k1个晶振12MHZ1个排阻1*8(220欧)1个蜂鸣器1个数码管1个4*4键盘1个导线1米焊锡丝1米面包板1个电池底盒1个单片机AT89C511个单片机底座1个D. 程序清单#include #define uchar unsigned char#define uint unsigned intUchar code DSY_Table=;共阳数码管编码 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80, 0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xBF; uint code Tone_Delay_Table= ;各音符对应的延时 64021,64103,642
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 62746-4:2024 EN-FR Systems interface between customer energy management system and the power management system - Part 4: Demand Side Resource Interface
- 2025-2030年中国锑掺杂二氧化锡氧化锡行业运行动态及发展前景分析报告
- 2025-2030年中国酸奶冰淇淋市场运行状况与投资战略研究报告
- 2025-2030年中国造船板市场运行动态规划分析报告
- 2025-2030年中国软体家具制造行业发展现状及前景趋势分析报告
- 2025-2030年中国超高分子量聚乙烯纤维行业竞争策略规划研究报告
- 2025-2030年中国负载均衡器行业运行态势及发展趋势分析报告
- 2025-2030年中国航空飞行培训行业十三五规划与投资战略研究报告
- 2025-2030年中国糖醇市场运营状况及发展前景分析报告
- 2025-2030年中国米香型酒市场发展现状及前景趋势分析报告
- 高三一模“生存与强弱关系思辨”审题立意及范文
- 2025年茂名市高三年级第一次综合测试(一模)物理试卷(含答案)
- 《电子商务法律法规》电子商务专业全套教学课件
- 《产后出血预防与处理指南(2023)》解读课件
- 全套教学课件《工程伦理学》
- 江苏省建筑与装饰工程计价定额(2014)电子表格版
- 清华大学考生自述
- 幼儿园中班绘本:《我喜欢我的小毯子》
- 法社会学(上课)
- 沉积学与古地理
- 化工原理课程设计(换热器)
评论
0/150
提交评论