基于单片机的电子琴设计Word格式文档下载.docx
- 文档编号:13509246
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:22
- 大小:321.11KB
基于单片机的电子琴设计Word格式文档下载.docx
《基于单片机的电子琴设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子琴设计Word格式文档下载.docx(22页珍藏版)》请在冰豆网上搜索。
Keywords:
AT89C51;
Matrixkeyboard;
Loundspeaker
第1章绪论
1.1课题背景
电子琴是电声乐队的中坚力量,常用于奏主旋律并伴以丰富的和声。
还常作为独奏乐器出现,具有鲜明时代特色,但电子琴的局限性也十分明显:
旋律与和声缺乏音量变化,过于协和、单一;
在模仿各类管、弦乐器时,音色还不够逼真,模仿提琴类乐器的音色时,失真度更大,还需要不断改进。
电子琴的演奏较大一部分通过和弦伴奏来配合完成的,在音乐中和弦的连接推动了旋律地进行,不同的和声连接,形成了不同的音乐色彩。
本次设计用AT89C51单片机为核心控制元件与按键和喇叭等模块,设计一个简易的电子琴。
1.2音乐产生原理
乐曲是由不同音符编制而成的,每个音符(音名)都有一个固定的振动频率,频率的高低决定了音调的高低。
简谱中从低音1至高音1之间每个音名对应的频率参见表1-2[1]。
表1-2简谱中音名与频率的关系
音名
频率/Hz
低音1
262
中音1
523
高音1
1047
低音2
294
中音2
587
高音2
1175
低音3
330
中音3
659
高音3
1319
低音4
349
中音4
699
高音4
1397
低音5
392
中音5
784
高音5
1569
低音6
440
中音6
880
高音6
1760
低音7
494
中音7
988
高音7
1976
现以低音6这个音名为例来进行分析。
低音6的频率数位440Hz,则其周期为:
T=1/f=1/440=0.00228s=2.28ms
如果用定时器1方式1作定时,要P2.3输出周期为2.28ms的等宽方波,则定时值为1.14ms,设计数初值为X,根据:
定时值=(2^16-X)*(12/晶振频率),求出计数初值为:
X=64396(为计算方便,设晶振频率为12MHz)。
计算出计数器初值后,只要将计数初值装入TH0、TL0,就能使P2.3的高电平或低电平的持续时间为1.14ms,从而发出440Hz的音调(音乐的音长由按键控制,按键按下时发声,按键释放时停止发声)[2]。
表1-3所列是采用定时器1的方式1时,各音名与计数初值的对照表。
表1-3各音名与计数初值对照表
计数初值
63636
64586
65066
63836
64686
65116
64026
64776
65156
64106
64816
65176
64256
64896
65216
64396
64966
65256
64526
65026
65286
1.3主要设计任务
用矩阵按键的16个按键模拟电子琴的16个音符。
具体音符为:
按压S0、S1、S2、S3、S4键,发出低音3、4、5、6、7;
按压S5、S6、S7、S8、S9、S10、S11键,发出中音1、2、3、4、5、6、7;
按压S12、S13、S14、S15键,发出高音1、2、3、4。
矩阵按键与各音符的对应关系如表1-1所示[3]。
表1-1矩阵按键与键盘对应关系
低音3
低音4
低音5
低音6
低音7
中音1
中音2
中音3
中音4
中音5
中音6
中音7
高音1
高音2
第2章电子琴系统的基本理论
2.1AT89C51
2.1.1AT89C51简介
AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机。
片内含4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高价比的应用场合,可灵活应用于各种控制领域。
2.1.2AT89C51性能简介
AT89C51具有如下特点:
40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
AT89C51在空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
主要特性[4]:
·
与MCS-51兼容
4K字节可编程闪烁存储器
全静态工作:
0Hz-24Hz
三级程序存储器锁定
128*8位内部RAM
32可编程I/O线
两个16位定时器/计数器
5个中断源
可编程串行通道
低功耗的闲置和掉电模式
片内振荡器和时钟电路
2.1.3AT89C51引脚简介
图2-1为AT89C51的引脚图
图2-1AT89C51引脚图
AT89C51的引脚功能[5]:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高电阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.2LM386
2.2.1LM386简介
LM386是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产品。
LM386是一种音频功率集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和谐波失真小等优点,广泛应用于录音机和收音机之中。
2.2.2LM386内部电路
LM386内部电路原理图如图2-2所示。
与通用型集成运放相类似,它是一个三级大电路。
图2-2LM386内部电路原理图
第一级为差分放大电路,T1和T3、T2和T4分别构成复合管,作为差分放大电路的放大管;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子琴 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)