单片机课程设计电子琴.docx
- 文档编号:24059739
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:17
- 大小:499.30KB
单片机课程设计电子琴.docx
《单片机课程设计电子琴.docx》由会员分享,可在线阅读,更多相关《单片机课程设计电子琴.docx(17页珍藏版)》请在冰豆网上搜索。
单片机课程设计电子琴
单片机原理课程设计报告
一.题目:
用protues实现硬件实验25电子琴
二.要求:
2.1设计任务
a.设计一个4X6的24个按键矩阵,并且1---7键每个键对应一个音。
b.用AT80C51将键盘连接设计成为电子琴。
c.编写电子琴的程序,要达到可以随意弹奏想要表达的音乐的目的。
d.程序的分析与调试。
2.2设计要求
a.用汇编语言编程实现程序设计。
b.利用查表,中断等方式实现目的。
c.系统的各个功能模块要清楚,有序。
2.3设计说明
a、利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经
喇叭驱动电路放大滤波后,就会发出不同的音调.
b、定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平.由于定时参数不同,就发出了不同频率的脉冲.本实验中按键一次,会发50个脉冲.发完后继续检测键盘,如果键还按下,继续发音。
各音阶标称频率值:
音阶
1
2
3
4
5
6
7
频率(HZ)
444.0
493.8
554.3
587.3
659.2
739.9
830.6
2.4课设目的
a.了解计算机发声原理。
b.进一步熟悉定时器编程方法.
c.进一步熟悉键盘扫描电路工作原理及编程方法
三.总体说明:
本系统采用单片机AT80C51为电子琴的控制核心,系统主要包括播放模块、按键控制模块。
下面对各模块的设计逐一进行论证比较。
3.1播放模块
播放模块是喇叭构成。
它几乎不存在噪声,音响效果较好。
而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。
3.2按键控制显示模块
电子琴设有24个按键,其中7个作为音符输入。
7个按键分别代表7个音符,包括中音段的全部音符。
当按下剩余的17个按键时,实现数码管显示全为8.8.8.8.8.8.
3.3总体硬件组成框图
三.硬件设计:
电子琴全图
4.1键盘显示电路
数码显示电路
键盘按键电路
键盘采用编程扫描方式,显示译码管采用动态显示方式,左端74LS374和74LS245的输入端接分别接地址锁存器74LS373的输入端。
RD
WR
片选信号CS1
A0
A1
A2
Movdptr,#8001h
Movxa,@dptr
Movdptr,#8002h
Movx@dptr,a
Movdptr,#8004h
Mov@dptr,a
4.2片选(74ls138)
A15
A14
A13
A12
4.3地址锁存器(74ls373)
输入端接单片机P0口,输出分别为A0—A7
4.4单片机(80c51)
4.5音频输出及8255
片选
输入端D0—D7分别接入单片机P0口,A0A1接入地址锁存器输出端A0A1
单片机工作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号,在此情况下,C调的各音符频率与计数值T的对照如下表:
音符
频率(HZ)
计数值(T值)
音符
频率(HZ)
计数值(T值)
低1DO
262
63628
#4FA#
740
64860
#1DO#
277
63737
中5SO
784
64898
低2RE
294
63835
#5SO#
831
94934
#2RE#
311
63928
中6LA
880
64968
低3MI
330
64021
#6LA#
932
64994
低4FA
349
64103
中7SI
968
65030
#4FA#
370
64185
低1DO
1046
65058
低SO
392
64260
#1DO#
1109
65085
#5SO#
415
64331
高2RE
1175
65110
低6LA
440
64400
#2RE#
1245
65134
#6LA#
466
64463
高3MI
1318
65157
低7SI
494
64524
高4FA
1397
65178
中1DO
523
64580
#4FA#
1490
65198
#1DO#
554
64633
高5SO
1568
65217
中2RE
587
64633
#5SO#
1661
65235
#2RE#
622
64884
高6LA
1760
65252
中3MI
659
64732
#6LA#
1865
65268
中4FA
698
64820
高7SI
1967
65283
五.软件设计
5.1程序框图
5.2源程序
modeequ082h
PORTAequ08000h
CTLequ08003h
OUTBITequ09002h
INequ09001h
Pulseequ55h
PulseCNTequ50h
ToneHighequ51h
ToneLowequ52h
Toneequ53h
KeyBufequ54h
SpeakerequPORTA
ljmpStart
org000bh
Timer0Int:
;设置中断0
pushPSW
clrTR0
movTH0,ToneHigh
movTL0,ToneLow
setbTR0
mova,Pulse
movdptr,#Speaker
movx@dptr,a
incPulse
decPulseCNT
popPSW
reti
ToneTable:
;设置7个音节的频率
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
六.使用说明
开启仿真模式,单片机处于工作模式,当按下键盘的1—7键时,会分别发出音调为DORIMIFASOLATI七个音,但按下其他键时,显示译码管会始终显示8.8.8.8.8.8.
七.心得体会
首先通过此次单片机课程设计,我明白更加深了了解了许多单片机知识,并且将这些学习的东西通过课设体现在了实实在在的电路当中。
在以往的学习中,都是学习的一些理论上的知识,而真正怎样运用到实践中并没有认真想过。
课本上的知识毕竟是死的,而实践过程中往往会发生很多状况,该如何发现问题,解决问题,是需要我们来认真思考的。
这种能力也是我们亟待培养的。
我觉得这次的课设,就是一次小小的锻炼,在课设过程中找到问题,分析问题,并找出方法来解决它,这个过程就是理论与实际的结合过程,既锻炼了我们的动手能力,又巩固了我们的理论知识,两全其美。
在者通过两人的合作,让我明白了团结协作的重要性,两人相互团结互相努力,会使工作变得简单而又有趣,更可以激发对方的潜力,互相督促,共同进步,增加友谊。
并且,这次课设不仅教会了我很多知识增进了友谊,同时也磨练了我的意志。
告诉我们只要坚持就一定会成功。
不管电路图、程序如何复杂,只要细心去连就一定会实现预定的目标。
总之,课设给我了我很好的锻炼机会,我也充分地利用这次机会,从中学习到了好多。
最后感谢段老师的细心帮助与支持。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 电子琴
![提示](https://static.bdocx.com/images/bang_tan.gif)