单片机用定时器设计的门铃

  • 格式:docx
  • 大小:17.97 KB
  • 文档页数:8

单片机用定时器设计的
门铃

Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT
******* 大 学
课 程 设 计 说 明 书

课程设计名称:《单片机》课程设计
专 业:机械设计制造及其自动化
学 号:
学 生 姓 名:***
指 导 教 师:****
目录
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的值(双倍速波特
率)决定。

4 程序流程图
5 程序
ORG 0000H ;规定汇编的起始地址为0000H
LJMP MAIN ;把MAIN函数进行长转移
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:

MOV TMOD,#00H ;定义工作方式寄存器TMOD用于选择定时器/计数器的

工作模式和工作方式
MOV IE,#82H
MOV TH0,#HIGH(8192-700) ;定义定时器/计数器0(高字节)的地址

MOV TL0,#LOW(8192-700) ;定义定时器/计数器0(低字节)的地址
MOV R2,#0
MOV R3,#0
LOOP:
JB ,$
SETB TR0

JNB ,$ ;直接寻址位为零则转移
SJMP LOOP
T0ISR:

CPL ;对取反
LCALL ADDP
LCALL CMPP
JNZ T01
MOV TH0,#HIGH(8192-700)
MOV TL0,#LOW(8192-700)

RETI ;从中断返回
T01:
DEC A ;累加器减1
JNZ T02
MOV TH0,#HIGH(8192-1000)
MOV TL0,#LOW(8192-1000)
RETI
T02:
CLR TR0
MOV R2,#0
MOV R3,#0
RETI
ADDP:
MOV A,R2

ADD A,#1 ;把立即数1加上累加器中的数寄存到累加器A中
MOV R2,A
MOV A,R3

ADDC A,#0 ;把立即数加到累加器
MOV R3,A
RET
CMPP:
CLR C
MOV A,R2
SUBB A,#90H
MOV A,R3
SUBB A,#1
JC CMPP0
CLR C ;清进位位
MOV A,R2
SUBB A,#20H ;累加器减去立即数20H
MOV A,R3
SUBB A,#3
JC CMPP1
MOV A,#2
RET
CMPP1:
MOV A,#1
RET
CMPP0:
MOV A,#0

RET ;从子程序中返回
END

6 软件仿真

7 设计总结
这次课程设计使我得到了不小的收获,发现了自己的很多不足,知识体系上
的漏洞,看到了自己的实践经验还是比较缺乏,理论联系实际的能力还需很大提
高。
首先拿到这个题目,我就开始收集大量的资料,包括C51单片机的原理,人
的听力范围等等与课程设计相关的各类知识,了解了很多之前并未注意的知识。
通过这次课程设计,开阔了我们的视野,提高了我们的兴趣。在今后的学习中我
们仍可以进行这方面的尝试,开拓自己的眼界和操作能力,提高自己的动手制作
能力,在动手中学习,在动手中收获。
参考文献
[1] 楼然苗.李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,
2001.
[2]王东峰等.[M].,2009.
[3]刘守义等.单片机技术基础[M].,2007.