好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

单片机课程设计—基于单片机的电子琴.doc

27页
  • 卖家[上传人]:ni****g
  • 文档编号:425098942
  • 上传时间:2023-07-13
  • 文档格式:DOC
  • 文档大小:766.51KB
  • / 27 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 《单片机应用与仿真训练》设计报告基于单片机的电子琴设计 摘要单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点它的应用必定导致传统的控制技术从根本上发生变革因此,单片机的开发应用已成为高科技和工程领域的一项重大课题 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分本文的主要内容是用AT89S51单片机为核心控制元件,设计一个电子琴以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器 本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。

       目录1 概述……………………………………………………………………………… 1.1…………………… 1.2 1.32 系统总体方案及硬件设计(宋体、小四,加粗,固定值18磅以下相同要求) 2.1 2.22.33 软件设计 3.1 3.2 3.34 Proteus软件仿真5课程设计体会参考文献附1:源程序代码附2:系统原理图1概述1. 1 电子琴技术状况本次设计提出了用AT89S52单片机为核心控制元件,设计一个简易的电子琴. 本方案以AT89S52单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块在主控模块上设有7个按键和扬声器根据使用者的操作随意弹奏想要表达的音乐一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号1. 2 任务与要求 实现电子琴发声控制系统;要求电路实现如下功能:利用蜂鸣器作为发声部件,两个数码管作为显示部件,设置10个按键,实现高音、中音、低音的1、2、3、4、5、6、7的发音。

      并在存储一首歌曲的内容,可以实现自动播放 用PROTEUS实现的电子琴仿真设计说明:单片机的工作时钟频率为11.0592MHz1. 3 主要芯片简介AT89C52是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C52引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案    AT89C52具有如下特点:40个引脚(引脚图如图1-1所示),4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDTC)电路,片内时钟振荡器 此外,AT89C52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。

      空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求图1-1 AT89C522 系统总体方案及硬件设计 本系统采用单片机AT89C52为电子琴的控制核心,系统主要包括播放模块、安键控制模块下面对各模块的设计逐一进行论证比较总电路图见附页二2. 1系统总体方案2.1.1定时/计数器的设计和状态字定义:若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相就可在P1.0引脚上得到此频率的脉冲利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)计数脉冲值与频率的关系式是:N=fi÷2÷fr,式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。

      其计数初值T的求法如下:T=65536-N=65536-fi÷2÷fr例如:设K=65536,fi=1MHz,求中音DO(261Hz)T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr,中音DO的T=65536-500000/523=64580单片机12MHZ晶振,中音符与计数T0相关的计数值如表所示:音符频率(HZ)简谱码(T值)音符频率(HZ)简谱码(T值)低1 DO26263628# 4 FA#74064860#1 DO#27763731中 5 SO78464898低2 RE29463835# 5 SO#83164934#2 RE#31163928中 6 LA88064968低 3 M33064021# 693264994低 4 FA34964103中 7 SI98865030# 4 FA#37064185高 1 DO104665058低 5 SO39264260# 1 DO#110965085# 5 SO#41564331高 2 RE117565110低 6 LA44064400# 2 RE#124565134# 646664463高 3 M131865157低 7 SI49464524高 4 FA139765178中 1 DO52364580# 4 FA#148065198# 1 DO#55464633高 5 SO156865217中 2 RE58764684# 5 SO#166165235# 2 RE#62264732高 6 LA176065252中 3 M65964777# 6186565268中 4 FA69864820高 7 SI196765283采用查表程序进行查表时,可以为这个音符建立一个表格,有助于单片机通过查表的方式来获得相应的数据:低音0-19之间,中音在20-39之间,高音在40-59之间用单片机播放音乐,或者弹奏电子琴,实际上是按照特定的频率,输出一连串的方波。

      为了输出合适的方波,首先应该知道音符与频率的关系2. 1. 2音调数据表单片机发出不同频率的方波,人听起来,就是不同的音调上表中的频率数值,有些过多,去掉不常用的黑键频率,只是把白键对应的数据存放在单片机中,即可满足绝大部分的应用需求定义音调数据表的程序如下: DW 63628,63835,64021,64103,64260,64400,64524 ;64580,低音区:1 2 3 4 5 6 7 DW 64580,64671,64777,64820,64898,64968,65030 65058中音区:1 2 3 4 5 6 7 DW 65058,65110,65157,65178,65217,65252,65283 65312高音区:1 2 3 4 5 6 7把这个数据表,放在程序中,需要播音的时候,就从表中取出一个数据送到定时器,当定时器溢出中断的时候,再对输出引脚取反,那么,在扬声器中,即可听到上表中频率的声音音乐的音拍,一个节拍为单位(C调)曲调值DELAY  曲调值DELAY调4/4125ms  调4/462ms调3/4187ms  调3/494ms调2/4250ms  调2/4125ms2. 2总体硬件组成框图播放模块 喇叭中心控制模块 AT89C52按键控制模块按 键 状 态 图2-1 总体硬件组成框图实验中每按下一个琴键,单片机能够检测到键盘的按键,并根据按键的位置,通过程序来控制,使喇叭发出不同频率(音调)的声音,声音延迟一段时间,等到按键放开之后,声音停止。

      然后再继续扫描,看是否有键按下如此循环,即可实现基本的琴键功能2. 2. 1 子系统模块一LED显示模块如图2-2所示,利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个七段数码管的a-h的笔段上,数码管的公共端接电源矩阵扫描显示当前按键模块如下:2. 2. 2 子系统模块二播放模块是喇叭构成它几乎不存在噪声,音响效果较好,而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用2. 2. 3 子系统模块三电子琴设有7个按键,分别代表7个音符,包括中音段的全部音符通过软硬件设计,按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴然后通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,实现各种琴键的声音矩阵键盘模块图如下:2. 2 .4 AT89C52复位模块2. 2. 5 AT89C52晶振模块3 软件设计软件是该电子琴控制系统的重要组成部分,在系统的软件设计中我们也才用了模块化设计,将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性3. 1软件流程3. 1. 1 音阶键识别3. 1. 2 内置歌曲输出3. 1. 3 总流程图。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.