单片机实现电子琴课程设计.docx
- 文档编号:3220155
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:17
- 大小:906.44KB
单片机实现电子琴课程设计.docx
《单片机实现电子琴课程设计.docx》由会员分享,可在线阅读,更多相关《单片机实现电子琴课程设计.docx(17页珍藏版)》请在冰豆网上搜索。
单片机实现电子琴课程设计
第1章引言
当今社会,随着人们物质生活的不断提高,电子产品能够已经走进了家家户户,无论是生活或学习,还是娱乐消遣几乎样样离不开电子产品。
单片机由于其微小的体积和极低的成本,广泛应用于家用电器,工业控制等领域中。
单片微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
电子琴是高科技在音乐领域的一个代表,它是古典文化与现代文明的一个浓缩体。
它不但可以帮助我们的音乐教师进行传统音乐文化的教育教学工作,而且由于它又具备现代与音乐,特别是电子音乐,电脑音乐的基本结构,特征,因而是我们的教师在进行现代音乐、电子音乐、电脑音乐的教学时,更直接、更简便。
电子琴是现代电子科技与与音乐结合的产物,是一种新型的键盘乐器。
他在现代音乐扮演者重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经融入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是以单片机为核心控制元件,设计一个电子琴。
以单片机为主控核心,与8255、键盘、扬声器等模块组成核心主控制模块。
利用定时器发出不同频率的脉冲,经喇叭放大电路放大滤波后,发出不同的音调。
每按键一次发出五十个脉冲,发完后继续检查有无键按下。
第2章芯片引脚介绍
2.18031引脚介绍
8051单片机的引脚及相关功能;
40个引脚按引脚功能大致可分为4个种类:
电源、时钟、控制和I/O引脚。
⒈电源:
⑴VCC-芯片电源,接+5V; ⑵VSS-接地端;
⒉时钟:
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
⒊控制线:
控制线共有4根,
⑴ALE/PROG地址锁存允许/片内EPROM编程脉冲
①ALE功能:
用来锁存P0口送出的低8位地址
②PROG功能:
片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵PSEN:
外ROM读选通信号。
⑶RST/VPD:
复位/备用电源。
①RST(Reset)功能:
复位信号输入端。
②VPD功能:
在Vcc掉电情况下,接备用电源。
⑷EA/Vpp:
内外ROM选择/片内EPROM编程电源。
①EA功能:
内外ROM选择端。
②Vpp功能:
片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋I/O线
80C51共有4个8位并行I/O端口:
P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)
5.P3口第二功能
P30RXD串行输入口,P31TXD串行输出口
P32INT0外部中断0(低电平有效)
P33INT1外部中断1(低电平有效)
P34T0定时计数器0,P35T1定时计数器1
P36WR外部数据存储器写选通(低电平有效)
P37RD外部数据存储器读选通(低电平有效)
2.28255引脚介绍
RESET:
复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
CS:
芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.
RD:
读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
WR:
写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。
D0~D7:
三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
PA0~PA7:
端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。
PB0~PB7:
端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。
PC0~PC7:
端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。
'
A1,A0:
地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器. 当A1=0,A0=0时,PA口被选择;
当A1=0,A0=1时,PB口被选择;
当A1=1,A0=0时,PC口被选择;
当A1=1.A0=1时,控制寄存器被选择.
第3章电子琴实验
1、实验要求
利用实验仪上提供的键盘,是数字键1、2、3、4、5、6、7作为电子琴键,按下即发出相应的音调。
用8255的PA.0口发出音频脉冲,驱动喇叭。
二、实验目的
1、了解计算机发声原理。
2、进一步熟悉定时器编程方法。
3.、进一步熟悉键盘扫描电路工作原理及编程方法
三、实验电路及连接
键盘草图如下:
喇叭发声原理如下图:
PA0输出脉冲驱动喇叭:
连线:
连线
连接孔1
连接孔2
1
8255-CS
CS0
2
KEY/LED-CS
CS1
3
PA0
喇叭脉冲输入
四、实验说明
1、利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调。
2、定时器按设置定时的参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平。
由于定时参数不同,就发出了不同频率的脉冲。
本实验中按键一次,会发50个脉冲。
发完后继续检测键盘,如果键还按下,继续发音。
各音阶标称频率值:
音阶
1
2
3
4
5
6
7
频率(Hz)
440.00
493.88
554.37
587.33
659.26
739.99
830.61
五、实验框图
主程序框图定时中断程序框图
第四章实验程序
modeequ082h
PORTAequ08000h
CTLequ08003h
OUTBITequ09002h
INequ09001h
Pulseequ55h
PulseCNTequ50h
ToneHighequ51h
ToneLowequ52h
Toneequ53h
KeyBufequ54h
SpeakerequPORTA
ljmpStart
org000bh
Timer0Int:
pushPSW
clrTR0
movTH0,ToneHigh
movTL0,ToneLow
setbTR0
mova,Pulse
movdptr,#Speaker
movx@dptr,a
incPulse
decPulseCNT
popPSW
reti
ToneTable:
dw64578,64686,64778,64821,64898,64968,65029
TestKey:
movdptr,#OUTBIT
mova,#0
movx@dptr,a
movdptr,#IN
movxa,@dptr
cpla
anla,#0fh
ret
KeyTable:
db16h,15h,14h,0ffh
db13h,12h,11h,10h
db0dh,0ch,0bh,0ah
db0eh,03h,06h,09h
db0fh,02h,05h,08h
db00h,01h,04h,07h
GetKey:
movdptr,#OUTBIT
movP2,dph
movr0,#Low(IN)
movr1,#00100000b
movr2,#6
KLoop:
mova,r1
cpla
movx@dptr,a
cpla
rra
movr1,a
movxa,@r0
cpla
anla,#0fh
jnzGoon1
djnzr2,KLoop
movr2,#0ffh
sjmpExit
Goon1:
movr1,a
mova,r2
deca
rla
rla
movr2,a;r2=(r2-1)*4
mova,r1
movr1,#4
LoopC:
rrca
jcExit
incr2
djnzr1,LoopC
Exit:
movdptr,#OUTBIT
clra
movx@dptr,a
mova,r2
movdptr,#KeyTable
movca,@a+dptr
ret
Start:
movsp,#70h
mova,#mode
movdptr,#CTL
movx@dptr,a
movTMOD,#01;Timer
movIE,#82h;EA=1,IT0=1
movTone,#0
MLoop:
callTestKey
jzMLoop
callGetKey
movb,a
jzMLoop;=0,<1
anla,#!
7
jnzMLoop;>7
decb
mova,b
rla;a=a*2
movb,a
movdptr,#ToneTable
movca,@a+dptr
movToneHigh,a
movTH0,a
mova,b
inca
movca,@a+dptr
movToneLow,a
movTL0,a
setbTR0
movPulseCNT,#100
Wait:
mova,PulseCNT
jnzWait
clrTR0
ljmpMLoop
end
第5章原理电路图
总电路图:
单片机外部电路:
数据存储器扩展:
程序存储器与数据存储器基本相似
第六章修改程序
将七个键发其中音调改为十五个键发十五个音调。
延长发音时间,即将没按键一次发五十个脉冲改为没按键一次发一百个脉冲。
(修改部分为大号加粗字体)
修改后程序如下:
modeequ082h
PORTAequ08000h
CTLequ08003h
OUTBITequ09002h
INequ09001h
Pulseequ55h
PulseCNTequ50h
ToneHighequ51h
ToneLowequ52h
Toneequ53h
KeyBufequ54h
SpeakerequPORTA
ljmpStart
org000bh
Timer0Int:
pushPSW
clrTR0
movTH0,ToneHigh
movTL0,ToneLow
s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实现 电子琴 课程设计