- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于单片机的电子琴制作课程设计.doc
基于单片机的电子琴制作课程设计
设计指标
设计一个(4×4)的键盘,并将16个键设计成16个音;
可弹奏想要表达的音乐;
该电子琴包含1首示例音乐,接通电源可播放示例音乐。
设计所用实验仪器和设备:单片机芯片、晶体振荡器一个、电容电阻若干
独立开关十六个。
设计原理 乐音实际上是有固定周期的信号。我用AT89C51的一个定时器(如T1)控制,在P3.4脚上输出方波周期信号,产生乐音。根据不同的按键,调节T1的溢出时间,可输出不同频率的乐音,这样就做出了一台微型电子琴。其中根据行列式非编码键盘工作原理设计一个(4*4)的键盘,当按键按下经过软件的扫描电路进行扫描扫到对应的按键根据对应的负值将频率所对应的负值放进对应寄存器警醒单片机p3.4引脚的频率控制输出,从而使不同按键按下中断得到不同频率的音乐。 每个乐音的音高(频率)是固定的,表1列出了一个8度以及其上下共16个音的音名、频率及定时器T1初值对照(设晶体频率为6MHz)。
四、输出音节与单片机定时器输出频率关系表格如下:
序号音名 频率(HZ) TH1 TL1 1 7 493.9 FEH 06H 2 1 523.26 FEH 22H 3 554.37 FEH 3DH 4 2 587.34 FEH 56H 5 622.26 FEH 6EH 6 3 659.27 FEH 85H 7 4 698.17 FEH 9AH 8 740.00 FEH AEH 9 5 784.00 FEH C1H 10 830.62 FEH D3H 11 6 880.01 FEH E4H 12 932.34 FEH F4H 13 7 987.78 FFH 03H 14 1 1046.51 FFH 11H 15 1108.75 FFH 1FH 16 2 1174.68 FFH 2BH
2硬件电路设计 微型电子琴的电原理图见图1,其中键盘可使用小按键,排成钢琴键盘状(键多时可分为几排),图中还增加了一只按键指示灯(D1)。
图1
3软件设计 软件由初始化程序、主程序、定时器1中断服务程序、键盘扫描程序和延时程序组成。?? (1)初始化程序如下:
TMR1L EQU 30H
TMR1H EQU 31H
ORG 0000H
SJMP MAIN
ORG 001BH
AJMP TMR1
ORG 0040H
MAIN: MOV TMOD,#10H ;T1方式1,软件CONTROL
BEGIN:
MOV TCON,#00H ;关闭T1
MOV IE,#88H ;开T1中断
MOV IP,#08H ;T1优先
CLR P3.1 ;关扬声器
CLR P3.2 ;点亮灯
ACALL DELAY ;延时
主程序框图
主程序
MAIN PROGRAM
START:ACALL DELAY ;延时
ACALL KEYSCA ;调用键盘扫描子程序
CJNE R4,#00H,PLAYKEY ;判断有无按键按下
CLR TR1 ;没有键按下关闭T1
SETB P3.2 ;无键按下熄灭指示灯
SJMPSTART ;跳回开始位置PLAYKEY:CJNE R4,#20H,K0;有键按下由键值给TIMER1L和TIMER1H赋值
MOV TMR1L,#06H ;低音7初值
MOV TMR1H,#0FEH
AJMP SOUND
SOUND: SETB TR1 ;开启T1
CLR P3.2 ;点亮指示灯
AJMP START ;跳回开始
K0: CJNE R4,#30H,K1?
MOV TMR1L,#22H ;中音1初值
MOV TMR1H,#0FEH
AJMP SOUND
K1: CJNE R4,#50H,K2?
MOV TMR1L,#3DH ;中音1初值
MOV TMR1H,#0FEH
AJMP SOUND
K2: CJNE R4,#90H,K3?
MOV TMR1L,#5
文档评论(0)