单片机设计与制作 简易电子琴的设计.docx
《单片机设计与制作 简易电子琴的设计.docx》由会员分享,可在线阅读,更多相关《单片机设计与制作 简易电子琴的设计.docx(32页珍藏版)》请在冰豆网上搜索。
单片机设计与制作简易电子琴的设计
中国矿业大学徐海学院
单片机设计与制作技术报告
姓名:
学号:
班级:
电气09-1班
题目:
基于单片机的简易电子琴
任课教师:
胡明
2011年9月
单片机设计与制作任务书
班级电气09-1班学号
学生姓名
任务下达日期:
2011年9月20日
设计日期:
2011年12月14日至2011年12月22日
设计题目:
基于单片机的简易电子琴
设计主要内容和完成功能:
设计一个基于AT89C51单片机的简易电子琴。
设计一个4*4的键盘,并将16个键设计成16个音。
可弹奏想要表达的音乐。
教师签字:
摘要
键盘乐器,采用半导体集成电路,对乐音信号进行放大,通过扬声器产生音响。
发音音量可以自由调节。
音域较宽,和声丰富,甚至可以演奏出一个管弦乐队的效果,表现力极其丰富。
它还可模仿多种音色,甚至可以奏出常规乐器所无法发出的声音(如人声,风雨声等)。
另外,电子琴在独奏时,还可随意配上类似打击乐音响的节拍伴奏,适合于演奏节奏性较强的现代音乐。
另外,电子琴还安装有混响、回声、延长音、震音和颤音等多项功能装置,表达各种情绪时运用自如。
电子琴是电声乐队的中坚力量,常用于独奏主旋律并伴以丰富的和声。
还常作为独奏乐器出现,具有鲜明时代特色。
但电子琴的局限性也十分明显:
旋律与和声缺乏音量变化,过于协和、单一;在模仿各类管、弦乐器时,音色还不够逼真,模仿提琴类乐器的音色时,失真度更大,还需要不断改进。
电子琴的演奏有较大一部分是通过自动和弦伴奏来配合完成的,在音乐中和弦的连接推动了旋律地进行,不同的和声连接,形成了不同的音乐色彩。
本次设计提出了用AT89C51单片机为核心控制元件,设计一个简易的电子琴.本方案以AT89C51单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块在主控模块上设有16个按键和扬声器.根据使用者的操作随意弹奏想要表达的音乐。
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号
1、系统概述
1.1播放模块
1.2按键控制模块
1.3总体硬件组成框图
2、硬件设计
2.1硬件原理图
2.2系统板硬件连线
2.3主要硬件的介绍
2.3.1AT89S51简介
2.3.2LM386介绍
2.4播放模块的硬件设计
2.54×4矩阵键盘识别处理
3、软件设计
4、系统调试
5、结束语
6、参考文献
7、附录
1.系统概述
本系统采用单片机AT89C51为电子琴的控制核心,系统主要包括播放模块、按键控制模块。
下面对各模块的设计逐一进行论证比较。
1.1播放模块
播放模块是喇叭构成。
它几乎不存在噪声,音响效果较好。
而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。
1.2按键控制模块
电子琴设有16个按键,其中7个作为音符输入,另外1个作为模式转换按键,实现用户自弹作曲。
7个按键分别代表7个音符,包括中音段的全部音符。
通过软硬件设计,模式转换按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴。
然后通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,实现自编歌曲。
当需要取消电子琴编曲功能时,再次按下模式转换按键引起外部中断.即可退出电子琴功能而返回原来按键播放处。
1.3总体硬件组成框图
图1-1总体硬件组成框图
2.硬件设计
2.1硬件原理图
2.2.系统板硬件连线
(1.把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域中的SPKIN端口上;
(2.把“单片机系统“区域中的P3.0-P3.7端口用8芯排线连接到“4X4行列式键盘”区域中的C1-C4 R1-R4端口上;
2.3主要硬件的介绍
2.3.1AT89S51简介
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
图2-1单片机管脚图
引脚功能
VCC(40):
+5V;
GND(20):
接地;
P0口(39-32):
P0口为8位漏极开路双向I/O口,每引脚可吸收8个TTL门电流;
P1口(1-8):
P1口是从内部提供上拉电阻器的8位双向I/O口,P1口缓冲器能接收和输出4个TTL门电流;
P2口(21-28):
P2口为内部上拉电阻器的8位双向I/O口,P2口缓冲器可接收和输出4个TTL门电流;
P3口(10-17):
P3口是8个带内部上拉电阻器的双向I/O口,可接收和输出4个TTL门电流,P3口也可作为AT89C51的特殊功能口;
RST(9):
复位输入。
当振荡器复位时,要保持RST引脚2个机器周期的高电平时间;
ALE/PROG(30):
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节,在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,它可用作对外部输出的脉冲或用于定时目的,要注意的是,每当访问外部数据存储器时,将跳过1个ALE脉冲;
PSEN(29):
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期2次PSEN有效,但在访问外部数据存储器时,这2次有效的PSEN信号将不出现;
EA/VPP(31):
当EA保持低电平时,外部程序存储器地址为(0000H-FFFFH)不管是否有内部程序存储器。
FLASH编程期间,此引脚也用于施加12V编程电源(VPP);
XTAL1(19):
反向振荡器放大器的输入及内部时钟工作电路的输入;
XTAL2(18):
来自反向振荡器的输出;
2.3.2LM386介绍
LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中.
LM386内部电路及特性
图2-2 LM386内部电路原理图
LM386内部电路原理图如图2-2所示。
与通用型集成运放相类似,它是一个三级放大电路。
第一级为差分放大电路,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-3 LM386的外形和引脚的排列
LM386的外形和引脚的排列如图3-3所示。
引脚2为反相输入端,3为同相输入端;引脚5为输出端;引脚6和4分别为电源和地;引脚1和8为电压增益设定端;使用时在引脚7和地之间接旁路电容,通常取10μF。
查LM386的电源电压4-12V或5-18V(LM386N-4);静态消耗电流为4mA;电压增益为20-200dB;在1、8脚开路时,带宽为300KHz;输入阻抗为50K;音频功率0.5W。
尽管LM386的应用非常简单,但稍不注意,特别是器件上电、断电瞬间,甚至工作稳定后,一些操作(如插拔音频插头、旋音量调节钮)都会带来的瞬态冲击,在输出喇叭上会产生非常讨厌的噪声。
要注意以下几点:
1、通过接在1脚、8脚间的电容(1脚接电容+极)来改变增益,断开时增益为20dB。
因此用不到大的增益,电容就不要接了,不光省了成本,还会带来好处--噪音减少,何乐而不为?
2、PCB设计时,所有外围元件尽可能靠近LM386;地线尽可能粗一些;输入音频信号通路尽可能平行走线,输出亦如此。
这是死理,不用多说了吧。
3、选好调节音量的电位器。
质量太差的不要,否则受害的是耳朵;阻值不要太大,10K最合适,太大也会影响音质。
4、尽可能采用双音频输入/输出。
好处是:
“+”、“-”输出端可以很好地抵消共模信号,故能有效抑制共模噪声。
5、第7脚(BYPASS)的旁路电容不可少!
实际应用时,BYPASS端必须外接一个电解电容到地,起滤除噪声的作用。
工作稳定后,该管脚电压值约等于电源电压的一半。
增大这个电容的容值,减缓直流基准电压的上升、下降速度,有效抑制噪声。
在器件上电、掉电时的噪声就是由该偏置电压的瞬间跳变所致,这个电容可千万别省啊!
6、减少输出耦合电容。
此电容的作用有二:
隔直+耦合。
隔断直流电压,直流电压过大有可能会损坏喇叭线圈;耦合音频的交流信号。
它与扬声器负载构成了一阶高通滤波器。
减小该电容值,可使噪声能量冲击的幅度变小、宽度变窄;太低还会使截止频率(fc=1/(2π*RL*Cout))提高。
分别测试,发现10uF/4.7uF最为合适,这是我的经验值。
7、
电源的处理,也很关键。
如果系统中有多组电源,由于电压不同、负载不同以及并联的去耦电容不同,每组电源的上升、下降时间必有差异。
非常可行的方法:
将上电、掉电时间短的电源放到+12V处,选择上升相对较慢的电源作为LM386的Vs,但不要低于4V,效果确实不错!
图2-4音频放大电路
2.4播放模块的硬件设计
音乐产生的方法
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
C调各音符频率与计数值T的对照如表1所示
表1C调各音符频率与计数值T的对照表
音符
频率(HZ)
简谱码(T值)
音符
频率(HZ)
简谱码(T值)
低1DO
262
63628
#4FA#
740
64860
#1DO#
277
63731
中5SO
784
64898
低2RE
29