您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 统计图表 > 单片机用定时器设计的门铃
*******大学课程设计说明书课程设计名称:《单片机》课程设计专业:机械设计制造及其自动化学号:1224140146学生姓名:***指导教师:************大学课程设计说明书I目录1设计任务...............................................................................................................12系统总体设计.......................................................................................................13硬件系统设计.......................................................................................................24程序流程图...........................................................................................................35程序.......................................................................................................................46软件仿真...............................................................................................................77设计总结...............................................................................................................7参考文献...................................................................................................................8********大学课程设计说明书11设计任务用定时器设计的门铃,通过定时器控制门铃声响的系统设计,掌握定时/计数器的使用方法,和简单程序的编写,最终提高我们的逻辑抽象能力。要求是按下开关的时候开启中断,定时器溢出进入中断后,在软件以标志位i来判断门铃声音呢,开始响铃。先是“叮”,标志位i加1,延时后接着是“咚”,标志位i加1,然后是关中断。检测铃响脉宽也是以标志位i来识别“叮咚”。当i为0时给示波器A通道高电平,i为2时,给示波器B通道高电平。2系统总体设计1.针对本课题的设计任务,进行分析得到,本次设计是利用单片机实现对扬声器发省的,控制采用按钮操作,c51单片机进行控制,最终使扬声器发出“叮咚”声音。2.绘制电路原理图,编写程序,并进行仿真,基本实现对输出频率的控制,用扬声器的管理。其中有两个声音“叮”、“咚”,因此有两个输出的频率对应于两个不同扬声器声音的输出。最终利用单片机实现对扬声器发声的控制,采用按钮操作,c51单片机进行控制,最后使扬声器发出“叮咚”声音。3.本设计能模拟基本的扬声器发出声响的系统,是采用中断的方式定时控制不同频率的输出。定时/计数器工作方式寄存器,定时器采用T0定时器工作于模式0,位数:13位。计数范围:0-8192;中断设置每次定时器中断执行两个不同频率的输出。********大学课程设计说明书23硬件系统设计单片机设计的门铃系统,可用单片机直接控制输出频率变化来实现门铃声响可以广泛的应用到现实门铃的设计中。据此,本设计系统以单片机为控制核心,连接成最小系统。系统的总体框图如上图所示。因为它能够准确地划分成时钟频率,与UART(通用异步接收器/发送器)量常见的波特率相关。特别是较高的波特率(19600,19200),不管多么古怪的值,这些晶振都是准确,常被使用的。当定时器1被用作波特率发生器时,波特率工作于方式1和方式3是由定时器1的溢出率和SMOD的值(PCON.7-----双倍速波特率)决定。********大学课程设计说明书34程序流程图********大学课程设计说明书45程序ORG0000H;规定汇编的起始地址为0000HLJMPMAIN;把MAIN函数进行长转移ORG000BHLJMPT0ISRORG0030HMAIN:MOVTMOD,#00H;定义工作方式寄存器TMOD用于选择定时器/计数器的工作模式和工作方式MOVIE,#82HMOVTH0,#HIGH(8192-700);定义定时器/计数器0(高字节)的地址MOVTL0,#LOW(8192-700);定义定时器/计数器0(低字节)的地址MOVR2,#0MOVR3,#0LOOP:JBP2.0,$SETBTR0JNBP2.0,$;直接寻址位为零则转移SJMPLOOPT0ISR:CPLP2.3;对P2.3取反LCALLADDPLCALLCMPPJNZT01MOVTH0,#HIGH(8192-700)MOVTL0,#LOW(8192-700)RETI;从中断返回T01:DECA;累加器减1********大学课程设计说明书5JNZT02MOVTH0,#HIGH(8192-1000)MOVTL0,#LOW(8192-1000)RETIT02:CLRTR0MOVR2,#0MOVR3,#0RETIADDP:MOVA,R2ADDA,#1;把立即数1加上累加器中的数寄存到累加器A中MOVR2,AMOVA,R3ADDCA,#0;把立即数加到累加器MOVR3,ARETCMPP:CLRCMOVA,R2SUBBA,#90HMOVA,R3SUBBA,#1JCCMPP0CLRC;清进位位MOVA,R2SUBBA,#20H;累加器减去立即数20HMOVA,R3SUBBA,#3JCCMPP1********大学课程设计说明书6MOVA,#2RETCMPP1:MOVA,#1RETCMPP0:MOVA,#0RET;从子程序中返回END********大学课程设计说明书76软件仿真7设计总结这次课程设计使我得到了不小的收获,发现了自己的很多不足,知识体系上的漏洞,看到了自己的实践经验还是比较缺乏,理论联系实际的能力还需很大提高。首先拿到这个题目,我就开始收集大量的资料,包括C51单片机的原理,人的听力范围等等与课程设计相关的各类知识,了解了很多之前并未注意的知识。通过这次课程设计,开阔了我们的视野,提高了我们的兴趣。在今后的学习中我们仍可以进行这方面的尝试,开拓自己的眼界和操作能力,提高自己的动手制作能力,在动手中学习,在动手中收获。********大学课程设计说明书8参考文献[1]楼然苗.李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,2001.[2]王东峰等.单片机C语言应用100例[M].电子工业出版社,2009.[3]刘守义等.单片机技术基础[M].西安电子科技大学出版社,2007.
本文标题:单片机用定时器设计的门铃
链接地址:https://www.777doc.com/doc-2594527 .html