单片机用定时器设计的门铃样本.docx
《单片机用定时器设计的门铃样本.docx》由会员分享,可在线阅读,更多相关《单片机用定时器设计的门铃样本.docx(8页珍藏版)》请在冰点文库上搜索。
![单片机用定时器设计的门铃样本.docx](https://file1.bingdoc.com/fileroot1/2023-5/25/78122bcc-de89-4bc0-8418-adcb0c82e732/78122bcc-de89-4bc0-8418-adcb0c82e7321.gif)
单片机用定时器设计的门铃样本
*******大学
课程设计说明书
课程设计名称:
《单片机》课程设计
专业:
机械设计制造及其自动化
学号:
学生姓名:
***
指导教师:
****
1设计任务
用定期器设计门铃,通过定期器控制门铃声响系统设计,掌握定期/计数器用法,和简朴程序编写,最后提高咱们逻辑抽象能力。
规定是按下开关时候启动中断,定期器溢出进入中断后,在软件以标志位i来判断门铃声音呢,开始响铃。
先是“叮”,标志位i加1,延时后接着是“咚”,标志位i加1,然后是关中断。
检测铃响脉宽也是以标志位i来辨认“叮咚”。
当i为0时给示波器A通道高电平,i为2时,给示波器B通道高电平。
2系统总体设计
1.针对本课题设计任务,进行分析得到,本次设计是运用单片机实现对扬声器发省,控制采用按钮操作,c51单片机进行控制,最后使扬声器发出“叮咚”声音。
2.绘制电路原理图,编写程序,并进行仿真,基本实现对输出频率控制,用扬声器管理。
其中有两个声音“叮”、“咚”,因而有两个输出频率相应于两个不同扬声器声音输出。
最后运用单片机实现对扬声器发声控制,采用按钮操作,c51单片机进行控制,最后使扬声器发出“叮咚”声音。
3.本设计能模仿基本扬声器发出声响系统,是采用中断方式定期控制不同频率输出。
定期/计数器工作方式寄存器,定期器采用T0定期器工作于模式0,位数:
13位。
计数范畴:
0-8192;中断设立每次定期器中断执行两个不同频率输出。
3硬件系统设计
单片机设计门铃系统,可用单片机直接控制输出频率变化来实现门铃声响可以广泛应用到现实门铃设计中。
据此,本设计系统以单片机为控制核心,连接成最小系统。
系统总体框图如上图所示。
由于它可以精确地划提成时钟频率,与UART(通用异步接受器/发送器)量常用波特率有关。
特别是较高波特率(19600,19200),不论多么古怪值,这些晶振都是精确,常被使用。
当定期器1被用作波特率发生器时,波特率工作于方式1和方式3是由定期器1溢出率和SMOD值(PCON.7-----双倍速波特率)决定。
4程序流程图
5程序
ORG0000H;规定汇编起始地址为0000H
LJMPMAIN;把MAIN函数进行长转移
ORG000BH
LJMPT0ISR
ORG0030H
MAIN:
MOVTMOD,#00H;定义工作方式寄存器TMOD用于选取定期器/计数器
工作模式和工作方式
MOVIE,#82H
MOVTH0,#HIGH(8192-700);定义定期器/计数器0(高字节)地址
MOVTL0,#LOW(8192-700);定义定期器/计数器0(低字节)地址
MOVR2,#0
MOVR3,#0
LOOP:
JBP2.0,$
SETBTR0
JNBP2.0,$;直接寻址位为零则转移
SJMPLOOP
T0ISR:
CPLP2.3;对P2.3取反
LCALLADDP
LCALLCMPP
JNZT01
MOVTH0,#HIGH(8192-700)
MOVTL0,#LOW(8192-700)
RETI;从中断返回
T01:
DECA;累加器减1
JNZT02
MOVTH0,#HIGH(8192-1000)
MOVTL0,#LOW(8192-1000)
RETI
T02:
CLRTR0
MOVR2,#0
MOVR3,#0
RETI
ADDP:
MOVA,R2
ADDA,#1;把及时数1加上累加器中数寄存到累加器A中
MOVR2,A
MOVA,R3
ADDCA,#0;把及时数加到累加器
MOVR3,A
RET
CMPP:
CLRC
MOVA,R2
SUBBA,#90H
MOVA,R3
SUBBA,#1
JCCMPP0
CLRC;清进位位
MOVA,R2
SUBBA,#20H;累加器减去及时数20H
MOVA,R3
SUBBA,#3
JCCMPP1
MOVA,#2
RET
CMPP1:
MOVA,#1
RET
CMPP0:
MOVA,#0
RET;从子程序中返回
END
6软件仿真
7设计总结
这次课程设计使我得到了不小收获,发现了自己诸多局限性,知识体系上漏洞,看到了自己实践经验还是比较缺少,理论联系实际能力还需很大提高。
一方面拿到这个题目,我就开始收集大量资料,涉及C51单片机原理,人听力范畴等等与课程设计有关各类知识,理解了诸多之前并未注意知识。
通过这次课程设计,开阔了咱们视野,提高了咱们兴趣。
在此后学习中咱们仍可以进行这方面尝试,开拓自己眼界和操作能力,提高自己动手制作能力,在动手中学习,在动手中收获。
参照文献
[1]楼然苗.李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,.
[2]王东峰等.单片机C语言应用100例[M].电子工业出版社,.
[3]刘守义等.单片机技术基本[M].西安电子科技大学出版社,.