项目四 音乐门铃和简易演奏器设计

项目四 音乐门铃和简易演奏器设计

ID:16149224

大小:823.22 KB

页数:14页

时间:2018-08-08

项目四 音乐门铃和简易演奏器设计_第1页
项目四 音乐门铃和简易演奏器设计_第2页
项目四 音乐门铃和简易演奏器设计_第3页
项目四 音乐门铃和简易演奏器设计_第4页
项目四 音乐门铃和简易演奏器设计_第5页
资源描述:

《项目四 音乐门铃和简易演奏器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、项目四音乐门铃和简易演奏器设计设计说明书任务一音乐门铃一、任务设计要求1、实现“滴、滴”报警声要求:产生频率为500Hz,扬声器响0.25s,停0.25s,反复循环2、实现“滴、滴”报警声实现“滴、滴”报警门铃要求:在1的基础上增加按钮动作。按钮按下一次,“滴、滴”声持续约3秒。3、技能提高任选一首歌曲,编制歌谱表,由单片机演奏,实现音乐门铃。4、计数器应用设用内部定时器/计数器1的计数功能,工作在方式2,实现计数5次产生中断使P1.7所接发光二极管闪烁。二、设计过程1、实现“滴、滴”报警声要求:产生频率为500Hz,扬声器响0.25s,停0.25s,反复循环1、设计方案确定2

2、、硬件电路设计14(实现“滴、滴”报警声)(实现“滴、滴”报警门铃)和(音乐门铃)的硬件电路设计14计数器的硬件电路设计3、软件设计实现“滴、滴”报警声步骤1:定时参数的计算1)要产生频率为500Hz的方波信号,方波信号的周期为2ms。电路采用12MHz的晶振,利用定时器T0的方式1,产生1ms的定时,在P1.7上输出周期为2ms的方波。(a)T0的方式控制字TMOD:M1M0=01,GATE=0,C/T=0,可取方式控制字为01H(b)计算计数初值X由于晶振为12MHz,机器周期T=,要产生产生1ms的定时,计数初值为X=65536-1000=64536=FC18H将FCH、

3、18H分别预置给TH0、TL0。重装计数值中断入口Yes输出声音计满0.25s?FLAG=1?无输出中断返回NoNoYes(1)、绘制流程图开始标志FLAG清0计时计数值清0设置定时器标志位FLAG取反计时计数值清0定时1ms启动定时器等待中断主程序流程图中断程序流程图14142、实现“滴、滴”报警门铃要求:在1的基础上增加按钮动作。按钮按下一次,“滴、滴”声持续约3秒14(2)、编写源程序:共4个程序程序一:实现“滴、滴”报警声   TCOUNTEQU30H14    FLAGBIT00HORG0000HSJMPSTART;跳转到主程序ORG000BH;T0的中断入口地址LJ

4、MPINT_T0;转向中断服务程序START:CLRFLAG;标志位清零MOVTCOUNT,#00H;计时计数值清零MOVTMOD,#01H;置T0工作于方式1MOVTH0,#(65536-1000)/256;装入计数初值MOVTL0,#(65536-1000)MOD256MOVIE,#82H;开中断SETBTR0;启动T0定时器SJMP$;;等待中断INT_T0:MOVTH0,#(65536-1000)/256;重新装入计数值MOVTL0,#(65536-1000)MOD256INCTCOUNT;计时计数值+1MOVA,TCOUNTCJNEA,#250,I1;是否计满0.25

5、秒CPLFLAG;标志位FLAG取反MOVTCOUNT,#00H;计时计数值清零I1:JBFLAG,I2;检查标志位CPLP1.7;声音输出SJMPRETUNEI2:CLRP1.7;关声音RETUNE:RETI;中断返回END程序二:按下门铃按键,发出“滴、滴”报警声TCOUNTEQU30HFLAGBIT00HORG0000HSJMPSTART;跳转到主程序ORG000BH;T0的中断入口地址LJMPINT_T0;转向中断服务程序;——————————————主程序———————————START:CLRFLAG;标志位清零MOVTCOUNT,#00H;计时计数值清零MOVTM

6、OD,#01H;置T0工作于方式114MOVTH0,#(65536-1000)/256;装入计数初值MOVTL0,#(65536-1000)MOD256MOVIE,#82H;开中断LOOP:JBP1.0,STOP;判断P1.0是否按下SETBTR0;启动T0定时器ACALLDELAY;等中断约3.2sSTOP:CLRP1.7;关声音CLRTR0;关闭T0定时器SJMPLOOP;;反复;————————————T0中断服务程序————————INT_T0:MOVTH0,#(65536-1000)/256;重新装入计数值MOVTL0,#(65536-1000)MOD256INCTC

7、OUNT;计时计数值+1MOVA,TCOUNTCJNEA,#250,I1;是否计满0.25秒CPLFLAG;计时计数值取反MOVTCOUNT,#00H;计时计数值清零I1:JBFLAG,I2;检查标志位CPLP1.7;声音输出SJMPRETUNEI2:CLRP1.7;关声音RETUNE:RETI;中断返回DELAY:MOVR1,#0FFH;延时约3.2秒DEL1:MOVR2,#0FFHDEL2:MOVR3,#09HDEL3:NOPNOPNOPDJNZR3,DEL3DJNZR2,DEL2DJN

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

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

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