基于单片机电子琴课程设计文档格式.docx
- 文档编号:21025934
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:31
- 大小:789.72KB
基于单片机电子琴课程设计文档格式.docx
《基于单片机电子琴课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机电子琴课程设计文档格式.docx(31页珍藏版)》请在冰豆网上搜索。
目录
摘要第一章……………………………………………………………………..2
摘要2…………………………………………………………………………...4
第二章方案论证………………………………………………………………5
2.1控制模块选择方案…………………………………………………………...5
2.2按键选择方案……………………………………………………………6
第3章系统硬件设计及说明……………………………………………………6
3.1系统组成及总体框图…………………………………………………………6
3.2元件简介…………………………………………………................................7
3.3.1STC89C52简介………………………………………………………………7
3.3.2主要功能特性………………………………………………………………8
3.3.3LM386内部电路………………………………………................................8
3.3显示电路……………………………………………………………………….9
3.4设计实现过程…………………………………………………………………9
3.4.14X4行列式键盘识别及显示………………………………………………..9
3.4.2系统板上硬件连线设计……………………………………………………10
3.5程序设计内容…………………………………………………………………10
第4章系统软件设计………………………………………………………………11
4.1音乐产生的方法…………………………………………………………………11
4.2程序框图…………………………………………………………………………13
4.3原理图…………………………………………………………………………….15
4.4系统板硬件连线………………………………………………………………...17
第5章系统调试……………………………………………………………………17
5.1软件仿真调试…………………………………………………………………….17
5.2软件调试…………………………………………………………………………17
第6章调试结论……………………………………………………………………17
第7章设计心得体会………………………………………………………………18
参考文献……………………………………………………………………………...19
附录…………………………………………………………………………………...20
附录2:
主要电路原理图……………………………………………………………20
附录3:
程序…………………………………………………………………………20
1.1系统开发背景
本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。
利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。
并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。
设计了用AT89s52单片机设计一个简易的电子琴,有16个按键,可以做一些基本的弹奏。
与传统的模拟信号不同,本设计主要介绍的是数字信号连接功率放大电路,驱动喇叭,产生乐音。
其中包括了音调的产生,节拍的产生,以及如何合理应用单片机的定时,中断系统生成相应的音调和节拍,设计出音乐演奏系统。
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
1.2系统开发意义
该设计具有以下优点:
(1)可以随意弹奏想要表达的音乐;
(2可以自动播放系统自带的音乐文件;
(3)制作简单,成本低。
1.3设计目标
由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。
其次,在这次设计可行性上进行分析如下:
1、经济可行性:
所谓经济可行性,即在这次设计上需要投入资金的多少,由于单片机课程设计是没有项目资金,没有开发经费,因此在经济上必须能够承受,比较理想化的项目对于我们单片机课程设计来说是不可行的。
通过分析后,无论是在器件价格或是常见度上均是可行的。
2、技术可行性:
技术可行性主要是分析技术条件上是否能够顺利开展并完成开发工作,硬件、软件能否满足设计者的需要等。
通过分析各种软件环境,硬件仿真环境等均已经具备。
综上所述,本系统设计目标已经明确,在经济与技术上均可行,因此本系统的开发是完全可行的。
STC89C52单片机电子琴音乐演奏音阶
第2章方案论证
2.1控制模块选择方案
方案一:
用可控硅制作电子琴。
将220V交流电经变压器降压,再经过整流、滤波,获得+13.5V直流电压。
将单向可控硅SCR和电阻、电容组成驰张振荡器电路。
但该设计方案制作成本高且复杂。
方案二:
采用AT89C51单片机进行控制,由于AT89C51不具备ISP功能,
因此Atmel公司已经停产在市面上已经不常见,况且其ROM只有4K在系统将来升级方面没有潜力。
方案三:
采用AT89S51单片机进行控制,由于其性价比高,完全满足了本作品智能化的要求,它的内部程序存储空间达到8K,使软件设计有足够的内部使用空间并且方便日后系统升级,使用方便,抗干扰性能提高。
鉴于上述对比与分析,本设计采用方案三
2.2按键选择方案
传统电子琴可以用键盘上的“1”到“A”键演奏从低SO到高DO等11音。
该设计有16个按钮矩阵,设计成16个音,可以实现音阶在低音4---高音5之间。
比传统音阶范围大,弹奏效果好。
第3章系统硬件设计及说明
3.1系统组成及总体框图
硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。
由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。
用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。
本例使用国家半导体公司的低压音频功率放大器LM386来实现音频功放电路。
程序框图如图所示:
3.2元件简介
3.2.1STC89C52简介
功能特性:
STC89S52是一种低功耗、高性能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字节在系统可编程FlashAT89S52。
管脚图
3.2.2主要功能特性
与MCS-51单片机产品兼容8K字节在系统可编程Flash存储器
1000次擦写周期全静态操作:
0Hz~33Hz
三级加密程序存储器32个可编程I/O口线
三个16位定时器/计数器八个中断源全双工UART串行通道、低功耗空闲和掉电模式
掉电后中断可唤醒看门狗定时器双数据指针掉电标识符
3.3.3LM386内部电路
LM386是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产品。
LM386特性:
静态功耗低,约为4mA,可用于电池供电;
工作电压范围宽,4V-12V或5V-18V;
外围元件少;
电压增益可调,20-200;
低失真度。
LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。
LM386内部电路原理图
LM386内部电路原理图如图1-3所示。
与通用型集成运放相类似,它是一个三级放大电路.
第一级为差分放大电路,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构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。
3.3显示电路
本次单片机课程设计的显示电路采用LED数码管显示,由于LED是属于电流控制器件,使用时必须加限流电阻。
通过单片机查表得出数码管显示编码,传送给数码管显示,以此来实现按键与显示程序的一致性。
3.4设计实现过程
3.4.14X4行列式键盘识别及显示
组成键盘的按键有机械式、电容式、导电橡胶式、薄膜式多种,但不管什么形式,其作用都是一个使电路接通与断开的开关。
目前微机系统中使用的键盘按其功能不同,通常可分为编码键盘和非编码键盘两种基本类型。
编码键盘:
键盘本身带有实现接口主要功能所需的硬件电路。
不仅能自动检测被按下的键,并完成去抖动、防串键等功能,而且能提供与被按键功能对应的键码(如ASCII码)送往CPU。
所以,编码键盘接口简单、使用方便。
但由于硬件电路较复杂,因而价格较贵。
非编码键盘:
键盘只简单地提供按键开关的行列矩阵。
有关按键的识别、键码的确定与输入、去抖动等功能均由软件完成。
目前微机系统中,一般为了降低成本大多数采用非编码键盘。
键盘接口必须具有去抖动、防串键、按键识别和键码产生4个基本功能。
(1)去抖动:
每个按键在按下或松开时,都会产生短时间的抖动。
抖动的持续时间与键的质量相关,一般为5—20mm。
所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。
去抖问
题可通过软件延时或硬件电路解决。
(2)防串键:
防串键是为了解决多个键同时按下或者前一按键没有释放又有新的按键按下时产生的问题。
常用的方法有双键锁定和N键轮回两种方法。
双键锁定,是当有两个或两个以上的按键按下时,只把最后释放的键当作有效键并产生相应的键码。
N键轮回,是当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。
(3)被按键识别:
如何识别被按键是接口解决的主要问题,一般可通过软硬结合的方法完成。
常用的方法有行扫描法和线反转法两种。
行扫描法的基本思想是,由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。
线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入/输出端口。
(4)键码产生:
为了从键的行列坐标编码得到反映键功能的键码,一般在内存区中建立一个键盘编码表,通过查表获得被按键的键码。
用STC89C52的并行口P0接4×
4矩阵键盘,以P0.0-P0.3作输入线,以P0.4-P0.7作输出线。
键盘识别模块
3.4.2系统板上硬件连线设计
键盘模块硬件连线如图2-1所示:
把“单片机系统”区域中的P0.0-P0.7端口用8芯排线连接到“4X4行列式键盘”区域中对应的端口上;
3.5程序设计内容
(1)4×
4矩阵键盘识别处理,每个按键有它的行值和列值,行值和列值的组合就是识别这个按键的编码。
矩阵的行线和列线分别通过两并行接口和CPU通信。
每
行列式键盘电路
个按键的状态同样需变成数字量“0”和“1”,开关的一端(列线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。
(2)键盘处理程序的任务是:
确定有无键按下,判断哪一个键按下,键的功能是什么;
还要消除按键在闭合或断开时的抖动。
两个并行口中,一个输出扫描码,使按键逐行动态接地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。
电路图如下
第4章系统软件设计
4.1音乐产生的方法
4.1.1原理
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这
样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系正确即可。
若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,
即为半周期的时间。
利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。
就可在P1.0引脚上得到此频率的脉冲。
利用STC89C52的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。
计数脉冲值与频率的关系式(如式2-1所示)是:
N=fi÷
2÷
fr
2-1
式中,N是计数值;
fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);
fr是想要产生的频率。
其计数初值T的求法如下:
T=65536-N=65536-fi÷
例如:
设K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。
fr=65536-1000000÷
fr=65536-500000/fr
低音DO的T=65536-500000/262=63627
中音DO的T=65536-500000/523=64580
高音DO的T=65536-500000/1046=65059
单片机12MHZ晶振,高中低音符与计数T0相关的计数值如表2-2所示
表2-2音符频率表
Table2-2notesthefrequencytable
音符
频率(HZ)
简谱码(T值)
低1 DO
262
63628
#4FA#
740
64860
#1 DO#
277
63731
中5SO
784
64898
低2 RE
294
63835
#5SO#
831
64934
#2RE#
311
63928
中6LA
880
64968
低3M
330
64021
#6
932
64994
低4FA
349
64103
中7SI
988
65030
370
64185
高1DO
1046
65058
低5SO
392
64260
#1DO#
1109
65085
415
64331
高2RE
1175
65110
低6LA
440
64400
#2RE#
1245
65134
466
64463
高3M
1318
65157
低7SI
494
64524
高4FA
1397
65178
中1DO
523
64580
1480
65198
554
64633
高5SO
1568
65217
中2RE
587
64684
1661
65235
622
64732
高6LA
1760
65252
中3M
659
64777
1865
65268
中4FA
698
64820
高7SI
1967
65283
我们要为这个音符建立一个表格,单片机通过查表的方式来获得相应的数据
低音0-19之间,中音在20-39之间,高音在40-59之间
TABLE1:
DW64021,64103,64260,64400
DW64524,64580,64684,64777
DW64820,64898,64968,65030
DW65058,65110,65157,65178
音乐的音拍,一个节拍为单位(C调)(如表2-3所示)
曲调值表
2-3Tunethevalueofthetable
曲调值
DELAY
调4/4
125ms
62ms
调3/4
187ms
94ms
调2/4
250ms
对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。
琴键处理程序,根据检测到得按键值,查询音律表,给计时器赋值,发出相应频率的声音。
对音调的控制:
根据不同的按键,对定时器T1送入不同的初值,调节T1的溢出时间,这样就可以输出不同音调频率的方波。
不同音调下各个音阶的定时器。
在这个程序中用到了两个定时/计数器来完成的。
其中T0用来产生音符频率,T1用来产生音拍。
4.2程序框图
4.2.1程序框图如图所示:
4.2.2键盘识别程序框图如图所示:
4.2.3音乐发声程序框图如图所示:
4.3原理图
电子琴电路图
4.4系统板硬件连线
系统板硬件连线如图1-1所示,发生模块,键盘模块,及LED显示模块连接如下
1.把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域中的SPKIN端口上;
2.把“单片机系统”区域中的P3.0-P3.7端口用8芯排线连接到“4X4行列式键盘”区域中的C1-C4 R1-R4端口上;
3.把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;
要求:
P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.7/AD7对应着h。
第5章系统调试
电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为三大部分:
硬件调试、软件调试和综合调试。
5.1软件仿真调试
软件仿真调试主要是针对单片机部分进行调试。
在软件运行前,先确保电路中连线正确,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。
在这部分调试中主要通过目测,用来完成检测电路中是否存在断路或者短路情况等。
在确保软件仿真电路正常,无异常情况(断路或短路)方可进行软件运行,在本次设计中,软件运行主要是测试单片机键盘控制部分、数码管点亮部分、和音频功放电路调试。
1、数码管LED电路调试:
软件运行,随机按下按钮可以看到数码管显示数字;
2、单片机键盘控制部分调试:
软件运行,随机按动键盘可以发现各个按键对应的音正确。
5.2软件调试
调试主要方法和技巧:
通常一个调试程序应该具备至少四种性能:
跟踪、断点、查看变量、更改数值。
整个程序是一个主程序调用各个子程序实现功能的过程,要使
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子琴 课程设计