单片机系统开发与应用实习报告-基于AT89S52单片机的多音阶电子琴设计.doc_第1页
单片机系统开发与应用实习报告-基于AT89S52单片机的多音阶电子琴设计.doc_第2页
单片机系统开发与应用实习报告-基于AT89S52单片机的多音阶电子琴设计.doc_第3页
单片机系统开发与应用实习报告-基于AT89S52单片机的多音阶电子琴设计.doc_第4页
单片机系统开发与应用实习报告-基于AT89S52单片机的多音阶电子琴设计.doc_第5页
免费预览已结束,剩余11页可下载查看

下载本文档

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

文档简介

单片机系统开发与应用工程实习报告单片机系统开发与应用工程实习报告选题名称:基于at89s52单片机的多音阶电子琴设计系(院): 专 业: 班 级: 姓 名: 学 号: 指导教师: 学年学期: 2009 2010 学年 第 2 学期2010年 5 月 30 日12摘要: 随着科技的快速发展,单片机的应用日益普遍。单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本单片机系统设计应用单片机控制技术,用at89s52单片机为核心控制元件根据上学期所学的单片机知识结合设计了一套单片机控制的电子琴系统。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器,它在现代音乐扮演着重要的角色。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。关键词:at89c52;lm386;矩阵键盘行扫描;电子琴目录1 课题综述11.1 课题来源11.2 开发意义11.3 设计目标12 系统硬件设计及说明12.1 系统组成及总体框图12.2 系统板硬件连线 22.3 元件简介32.4 音频功放电路53 系统软件设计及说明53.1 行列式键盘识别63.2 音乐发生63.3 系统总体功能流程图84 系统调试94.1 硬件调试94.2 软件调试10总 结11参考文献121 课题综述1.1 课题来源单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。单片机技术使我们可以利用软硬件实现电子琴的功能,从而实现电子琴的微型化。1.2 开发意义(1)可以随意弹奏想要表达的音乐;(2)软件功能完善,控制系统可靠;(3)制作简单,成本低;1.3 设计目标以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了。2 系统硬件设计及说明2.1 系统组成及总体框图硬件设计的任务是根据总体设计要求,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。主电路主要由4*4按键矩阵电路、功率放大电路、扬声器、复位电路、晶振电路、电源电路几部分组成。该设计要实现一种由单片机控制的电子琴,单片机工作于12mhz时钟频率,使用其定时/计数器t0,工作模式为1,改变计数值th0和tl0可以产生不同频率的脉冲信号。该设计4*4键盘对应不同音阶,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。该设计使用低压音频功率放大器lm386实现音频功放电路。图2-1 系统结构图图2-2 电路原理图2.2 系统板硬件连线 系统板硬件连线如图2-2所示,发生模块,键盘模块连接如下:1. 把“单片机系统”区域中的p1.0端口用导线连接到“音频放大模块”区域中的spk in端口上; 2.把“单片机系统“区域中的p3.0p3.7端口用8芯排线连接到“4x4行列式键盘”区域中的c1c4r1r4端口上。2.3 元件简介2.3.1 at89c52简介功能特性:at89s52是一种低功耗、高性能cmos8位微控制器,具有 8k 在系统可编程flash 存储器。使用atmel 公司高密度非 易失性存储器技术制造,与工业80c51 产品指令和引脚完 全兼容。片上flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位cpu 和在系统 可编程flash,使得at89s52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 at89s52具有以下标准功能: 8k字节flash,256字节ram, 32 位i/o 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,at89s52 可降至0hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,cpu 停止工作,允许ram、定时器/计数器、串口、中断继续工作。掉电保护方式下,ram内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8k 字节在系统可编程 flash at89s52。主要性能:与mcs-51单片机产品兼容、8k字节在系统可编程flash存储器、1000次擦写周期、全静态操作:0hz33hz、三级加密程序存储器、32个可编程i/o口线、三个16位定时器/计数器八个中断源、全双工uart串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。图2-3 管脚图2.3.2 lm386简介lm386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。图2-4 lm386内部电路原理图lm386内部电路原理图如图2-4所示。与通用型集成运放相类似,它是一个三级放大电路。第一级为差分放大电路,t1和t3、t2和t4分别构成复合管,作为差分放大电路的放大管;t5和t6组成镜像电流源作为t1和t2的有源负载;t3和t4信号从管的基极输入,从t2管的集电极输出,为双端输入单端输出差分电路。使用镜像电流源作为差分放大电路有源负载,可使单端输出电路的增益近似等于双端输出电容的增益。第二级为共射放大电路,t7为放大管,恒流源作有源负载,以增大放大倍数。第三级中的t8和t9管复合成pnp型管,与npn型管t10构成准互补输出级。二极管d1和d2为输出级提供合适的偏置电压,可以消除交越失真。引脚2为反相输入端,引脚3为同相输入端。电路由单电源供电,故为otl电路。输出端(引脚5)应外接输出电容后再接负载。电阻r7从输出端连接到t2的发射极,形成反馈通路,并与r5和r6构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。图2-5 lm386的外形和引脚的排列 lm386的外形和引脚的排列如图2-5所示。引脚2为反相输入端,3为同相输入端;引脚5为输出端;引脚6和4分别为电源和地;引脚1和8为电压增益设定端;使用时在引脚7和地之间接旁路电容,通常取10f。查lm386的电源电压4-12v或5-18v(lm386n-4);静态消耗电流为4ma;电压增益为20-200db;在1、8脚开路时,带宽为300khz;输入阻抗为50k;音频功率0.5w。尽管lm386的应用非常简单,但稍不注意,特别是器件上电、断电瞬间,甚至工作稳定后,一些操作(如插拔音频插头、旋音量调节钮)都会带来的瞬态冲击,在输出喇叭上会产生非常讨厌的噪声。2.4 音频功放电路 该设计使用国家半导体公司的低压音频功率放大器lm386来实现音频功放电路。其电路以及各参数如下图图2-6 lm386电路图及各参数图2-7 lm386应用图3 系统软件设计及说明本软件设计关键是要实现一种由单片机控制的简单音乐发生器,它由16个音节组成的的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。3.1 行列式键盘识别为了降低成本采用非编码键盘。非编码键盘:键盘只简单地提供按键开关的行列矩阵。有关按键的识别、键码的确定与输入、去抖动等功能均由软件完成。键盘接口必须具有去抖动、防串键、按键识别和键码产生4个基本功能。 (1)去抖动:每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为520mm。所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖问题可通过软件延时或硬件电路解决。 (2)防串键:防串键是为了解决多个键同时按下或者前一按键没有释放又有新的按键按下时产生的问题。常用的方法有双键锁定和n键轮回两种方法。双键锁定,是当有两个或两个以上的按键按下时,只把最后释放的键当作有效键并产生相应的键码。n键轮回,是当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。 (3)被按键识别:如何识别被按键是接口解决的主要问题,一般可通过软硬结合的方法完成。常用的方法有行扫描法和线反转法两种。行扫描法的基本思想是,由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入/输出端口。 (4)键码产生:为了从键的行列坐标编码得到反映键功能的键码,一般在内存区中建立一个键盘编码表,通过查表获得被按键的键码。3.2 音乐发生3.2.1 音乐相关知识乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的高低决定的,频率高声音就高,频率低声音就低,不同音商的乐音是用c、d、e、f、g、a、b表示的,这7个字母就是乐音的音名,它们一般依次唱成do、re、mi、fa、so、la、si,这是唱曲时乐音的发音,所以叫唱名。音持续时间的长短即时值,一般用拍数表示,休止符表示暂停发音。一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,加以与拍数对应的延时,构成音乐。3.2.2 如何用单片机实现音乐的频率 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器t0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。利用定时器计时半周期时间,每当计时终止后就将p1.0反相,然后重复计时再反相。就可在p1.0引脚上得到此频率的脉冲。我们要为音符建立一个表格,单片机通过查表的方式来获得相应的数据。根据所建表我们可以给4*4键盘每个按键赋予音阶对应的频率。单片机12mhz晶振,高中低音符与计数t0相关的计数值如表3-1所示表3-1 频率表音符频率(hz)计数值(t值)音符频率(hz)计数值(t值)低1do26263628#4fa#74064860#1do#27763737中5so78464898低2re29463835#5so#83194934#2re#31163928中6la88064968低3mi33064021#6la#93264994低4fa34964103中7si96865030#4fa#37064185低1do104665058低so39264260#1do#110965085#5so#41564331高2re117565110低6la44064400#2re#124565134#6la#46664463高3mi131865157低7si49464524高4fa139765178中1do52364580#4fa#149065198#1do#55464633高5so156865217中2re58764633#5so#166165235#2re#62264884高6la176065252中3mi65964732#6la#186565268中4fa69864820高7si196765283表3-2 曲调曲调值delay曲调值delay调4/4125ms调4/462ms调3/4187ms调3/494ms调2/4250ms调2/4125ms对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。在这个程序中用到了两个定时/计数器来完成的。其中t0用来产生音符频率,t1用来产生音拍。图3-1 音乐发声程序框图3.3 系统总体功能流程图 该程序设计思路比较清晰既从开始到声明变量与函数再到读取按钮开关,判断是否按下,然后就是一个一个按钮的动作。其主程序流程图如下: 图3-2 主程序流程图按键子程序流程图如下图3-3 按键子程序流程图4 系统调试电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为三大部分:硬件调试、软件调试和综合调试。4.1 硬件调试硬件调试主要是针对单片机部分进行调试。在上电前,先确保电路中不在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况等。注意焊点之间,确保焊点没有短接在一起,同时注意焊点的美观,确保没有开路以及短路的现象出现。在确保硬件电路正常,无异常情况(断路或短路)方可上电调试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确,在本次设计中,上电调试主要键盘单片机控制部分、和音频转换电路硬件调试。键盘单片机控制部分调试:上电后,随机按动键盘可以发现各个按键对应的音正确。4.2 软件调试调试主要方法和技巧:通常一个调试程序应该具备至少四种性能:跟踪、断点、查看变量、更改数值。整个程序是一个主程序调用各个子程序实现功能的过程,要使主程序和整个程序都能平稳运行,各个模块的子程序的正确与平稳运行必不可少,所以在软件调试的最初阶段就是把各个子程序模块进行分别调试。总结通过各方面努力,本次课程设计任务完成,系统部分功能已实现。将程序烧入芯片,调试成功后,可任意弹奏自己想要的旋律。本设计通过制作电子琴,将几个模块很好的融合起来,对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。说明一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,于是我们可以利用单片机的定时/计数器t0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可,然后我们利用功放电路来将音乐声音放大,同时通过显示模块来确知自己所弹的音符。单片机技术实现了电子琴的微型化,使我们可以利用软硬件实现电

温馨提示

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

评论

0/150

提交评论