基于单片机的电子琴制作课程设计.doc
上传人:qw****27 上传时间:2024-09-11 格式:DOC 页数:9 大小:109KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

基于单片机的电子琴制作课程设计.doc

基于单片机的电子琴制作课程设计.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于单片机的电子琴制作课程设计设计指标设计一个(4×4)的键盘,并将16个键设计成16个音;可弹奏想要表达的音乐;该电子琴包含1首示例音乐,接通电源可播放示例音乐。设计所用实验仪器和设备:单片机芯片、晶体振荡器一个、电容电阻若干独立开关十六个。设计原理乐音实际上是有固定周期的信号。我用AT89C51的一个定时器(如T1)控制,在P3.4脚上输出方波周期信号,产生乐音。根据不同的按键,调节T1的溢出时间,可输出不同频率的乐音,这样就做出了一台微型电子琴。其中根据行列式非编码键盘工作原理设计一个(4*4)的键盘,当按键按下经过软件的扫描电路进行扫描扫到对应的按键根据对应的负值将频率所对应的负值放进对应寄存器警醒单片机p3.4引脚的频率控制输出,从而使不同按键按下中断得到不同频率的音乐。每个乐音的音高(频率)是固定的,表1列出了一个8度以及其上下共16个音的音名、频率及定时器T1初值对照(设晶体频率为6MHz)。四、输出音节与单片机定时器输出频率关系表格如下:序号音名频率(HZ)TH1TL117493.9FEH06H21523.26FEH22H3554.37FEH3DH42587.34FEH56H5622.26FEH6EH63659.27FEH85H74698.17FEH9AH8740.00FEHAEH95784.00FEHC1H10830.62FEHD3H116880.01FEHE4H12932.34FEHF4H137987.78FFH03H1411046.51FFH11H151108.75FFH1FH1621174.68FFH2BH2硬件电路设计微型电子琴的电原理图见图1,其中键盘可使用小按键,排成钢琴键盘状(键多时可分为几排),图中还增加了一只按键指示灯(D1)。图13软件设计软件由初始化程序、主程序、定时器1中断服务程序、键盘扫描程序和延时程序组成。(1)初始化程序如下:TMR1LEQU30HTMR1HEQU31HORG0000HSJMPMAINORG001BHAJMPTMR1ORG0040HMAIN:MOVTMOD,#10H;T1方式1,软件CONTROLBEGIN:MOVTCON,#00H;关闭T1MOVIE,#88H;开T1中断MOVIP,#08H;T1优先CLRP3.1;关扬声器CLRP3.2;点亮灯ACALLDELAY;延时主程序框图开始有键按下吗?关闭T1,熄灭指示灯根据R4的键值将T1初值送到TMR1L和TMR1H开启T1,点亮指示灯主程序MAINPROGRAMSTART:ACALLDELAY;延时ACALLKEYSCA;调用键盘扫描子程序CJNER4,#00H,PLAYKEY;判断有无按键按下CLRTR1;没有键按下关闭T1SETBP3.2;无键按下熄灭指示灯SJMPSTART;跳回开始位置PLAYKEY:CJNER4,#20H,K0;有键按下由键值给TIMER1L和TIMER1H赋值MOVTMR1L,#06H;低音7初值MOVTMR1H,#0FEHAJMPSOUNDSOUND:SETBTR1;开启T1CLRP3.2;点亮指示灯AJMPSTART;跳回开始K0:CJNER4,#30H,K1MOVTMR1L,#22H;中音1初值MOVTMR1H,#0FEHAJMPSOUNDK1:CJNER4,#50H,K2MOVTMR1L,#3DH;中音1初值MOVTMR1H,#0FEHAJMPSOUNDK2:CJNER4,#90H,K3MOVTMR1L,#56H;中音2初值MOVTMR1H,#0FEHAJMPSOUNDK3:CJNER4,#21H,K4MOVTMR1L,#6EH;中音2初值MOVTMR1H,#0FEHAJMPSOUNDK4:CJNER4,#31H,K5MOVTMR1L,#85H;中音3初值MOVTMR1H,#0FEHAJMPSOUNDK5:CJNER4,#51H,K6MOVTMR1L,#9AH;中音1初值MOVTMR1H,#0FEHAJMPSOUNDK6:CJNER4,#91H,K7MOVTMR1L,#0AEH;中音4初值MOVTMR1H,#0FEHAJMPSOUNDK7:CJNER4,#23H,K8MOVTMR1L,#0C1H;中音5初值MOVTMR1H,#0FEHAJMPSOUNDK8:CJNER4,#33H,K9MOVTMR1L,#0D3H;中音#5初值MOVTMR1H,#0FEHAJMPSOUNDK9:CJNER4,#53H,K10MOVTMR1L,#0E4H;中音6初值MOVTMR1H,#0FEHAJMPSOU