单片机课程设计-电子音调发生器(学长不坑版)

单片机课程设计-电子音调发生器(学长不坑版)

ID:42585943

大小:224.44 KB

页数:20页

时间:2019-09-18

单片机课程设计-电子音调发生器(学长不坑版)_第1页
单片机课程设计-电子音调发生器(学长不坑版)_第2页
单片机课程设计-电子音调发生器(学长不坑版)_第3页
单片机课程设计-电子音调发生器(学长不坑版)_第4页
单片机课程设计-电子音调发生器(学长不坑版)_第5页
资源描述:

《单片机课程设计-电子音调发生器(学长不坑版)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机课程设计报告电子音调发生器班级:姓名:学号:指导老师:实验目的1.了解计算机发声原理。2.熟悉定时器和键盘扫描电路的工作原理及编程方法。设计任务及要求利用实验平台上的开关k0-k7和蜂鸣器设计电子音调发生器,要求:1.利用实验平台上开关k0-k7进行音调选择,即拨动不同的开关产生不同的音调,依次拨动K0~K7,蜂鸣器发出1234567i八个音调。2.编写2支歌曲,并可进行选择播放。工作原理及设计思路音节由不同频率的方波产生,音节与频率的关系如表1所示。要产生音频方波,只要算出某一音频的周期(1/频率),然后将此周期除以2,即

2、为半周期的时间。利用计时器计时此半周期时间,每当计时到后就将输出方波的I/0反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚得到此频率的方波。在ZKS-03实验仪上,产生方波的I/O脚选用P1.7,通过跳线选择器JP1将单片机的P1.7与蜂鸣器的驱动电路相连。这样P1.7输出不同频率的方波,蜂鸣器便会发出不同的声音。另外,音乐的节拍是由延时实现的,如果1拍为0.4秒,1/4拍是0.1秒。只要设定延时时间,就可求得节拍的时间。延时作为基本延时时间,节拍值只能是它的整数倍,每个音节相应的定时器初值X可按下法计算:(1/2)

3、*(1/f)=(12/fose)*(216-x)即x=216-(fose/24f)其中f:音调频率,当晶振fose=11.0592MHz时,音节“1”相应的定时器初值为x,则可得x=63777D=F921H其它的可同样求得。实验设计1.实现功能:(1)能奏出1~i这8个音(2)分别由2个开关控制2首歌曲的播放2.程序流程图:开始判断按键N发音播放音乐YYN是否放完是否有按键3.源程序ORG0000H;启动按键判断程序:;按下7个键分别对应1-i这8个音符;2个开关控制2首歌曲的播放KEYPRO:JBP1.2,KEY2LJMPSOU

4、ND01;P1.2为0发“1”音KEY2:JBP1.4,KEY3LJMPSOUND02;P1.4为0发“2”音KEY3:JBP1.5,KEY4LJMPSOUND03;p1.5为0发“3”音KEY4:JBP1.6,KEY5LJMPSOUND04;p1.6为0发“4”音KEY5:JBP3.2,KEY6LJMPSOUND05;p3.2为0发“5”音KEY6:JBP3.3,KEY7LJMPSOUND06;p3.3为0发“6”音KEY7:JBP3.4,KEYiLJMPSOUND07;p3.4为0发“7”音KEYi:JBP3.5,GOMUS1

5、LJMPSOUND08;P3.5为0发“i”音GOMUS1:JBP1.0,GOMUS2LJMPPLAYSONG1;P1.0为0播放第一首音乐GOMUS2:JBP1.1,KEYPROLJMPPLAYSONG2;P1.1为0播放第二首音乐,都为1则重新扫描SOUND01:SETBP1.7;音调1的方波发生MOVR3,#100;设循环初值,使开关在0时播放一段时间MAIN01:MOVTMOD,#01H;设置定时器t0工作方式1MOVTL0,#44HMOVTH0,#0FCH;音调1对应初值FC44hSETBTR0;启动t0工作WAIT01

6、:JNBTF0,WAIT01;定时未到,循环等待CLRTF0;定时到,清tf0CPLP1.7;由p1.7输出,信号取反DJNZR3,MAIN01LJMPKEYPROSOUND02:SETBP1.7;音调2的方波发生MOVR3,#100MAIN02:MOVTMOD,#01HMOVTL0,#0AEHMOVTH0,#0FCHSETBTR0WAIT02:JNBTF0,WAIT02CLRTF0CPLP1.7DJNZR3,MAIN02LJMPKEYPROSOUND03:SETBP1.7;音调3的方波发生MOVR3,#100MAIN03:MOV

7、TMOD,#01HMOVTL0,#0AHMOVTH0,#0FDHSETBTR0WAIT03:JNBTF0,WAIT03CLRTF0CPLP1.7DJNZR3,MAIN03LJMPKEYPROSOUND04:SETBP1.7;音调4的方波发生MOVR3,#100SETBP1.6MAIN04:MOVTMOD,#01HMOVTL0,#034HMOVTH0,#0FDHSETBTR0WAIT04:JNBTF0,WAIT04CLRTF0CPLP1.7DJNZR3,MAIN04LJMPKEYPROSOUND05:SETBP1.7;音调5的方波发

8、生MOVR3,#100MAIN05:MOVTMOD,#01HMOVTL0,#82HMOVTH0,#0FDHSETBTR0WAIT05:JNBTF0,WAIT05CLRTF0CPLP1.7DJNZR3,MAIN05LJMPKEYPROSOUND06:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。