基于单片机控制的电铃控制器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于单片机控制的电铃控制器

一.设计要求

(一)基本功能

1.显示:可以显示星期、时、分和秒

2.打铃:每天可设置20次,打铃持续时间每次1-90秒可调,每次打铃的间隔

时间1-99 分钟可调.

3.铃声:内置蜂鸣器可以发出监控声音

(二)性能: 时间日误差< 1.5秒

(三)扩展功能:

1.可设定单/双休息日不打铃

2.随季节变化,每天自动调整开与关的时间

目录

1引言 (1)

2总体设计方案 (1)

2.1设计思路 (1)

2.2总体设计框图 (1)

2.3设计方案 (1)

3设计原理分析 (2)

3.1按键功能 (2)

3.2状态指示 (2)

3.3打铃控制 (2)

3.4电路原理图 (2)

4程序流程框图 (3)

4.1总体程序流程图 (3)

4.2主程序流程图 (3)

4.3校时程序流程图 (4)

4.4时钟打铃程序流程图 (4)

5心得与体会 (5)

参考文献 (5)

附录 (6)

基于单片机控制的电铃控制器

摘要:该设计介绍了一种以AT89c51单片机为核心,以七段数码管显示星期、时、分和秒,发光二极管作为指示灯标志及按键较时、定时的自动打铃器。

关键词:单片机电铃自动数码管

1引言

基于目前传统电铃噪音大,声音刺耳,不符合人们追求绿色环保的要求,我们采用89c51单片机设计了一套自动打铃系统。单片机(Single-Chip Microcomputer SCM)技术的应用,不但降低了生产成本,同时也方便了消费者,使操作简洁、安全。单片机的应用使许多复杂的事情,都能够简单、方便的实现了。用单片机控制的自动打铃器,充分发挥单片机体积小,价格便宜,功耗低,可靠性好等特点,充分发挥了单片机的控制优势。本打铃器可用于作息时间控制,方便了广大师生。

2总体设计方案:

2.1设计思路

利用单片机及其定时器设计的一个时钟,在每次毫秒加1的计时过程中,都与设定的打铃时间作比较,如果相等就输出打铃信号,不等则返回。如此反复运行。

2.2总体设计框图

键盘电路复位电路

数码管显示

状态指示

打铃信号AT89S51

图1 总体设计框图

2.3设计方案

根据设计任务的基本要求,设计了由单片机(AT89S51)作为主控器件,七段数码管作为显示电路,七个按键组成的按键操作电路,七个发光二极管组成的状态指示电路,以及三极管、蜂鸣器组成的报警提示电路和继电器组成的打铃信号输出电路构成的自动打铃器。

除了以上的硬件电路外,还充分利用软件、硬件相结合,充分发挥单片机设计的优势。使设计更具特色。

系统可分成三部分,即时钟电路、时间显示电路、控制电路,而时钟电路起控制主导作用。

时钟电路的构成由单片机及其定时器完成,时间显示电路则由单片机串口输出,送到外部集成芯片74LS164,最后由七段数码管显示出来。控制电路主要控制着复位电路、校时以及设置打铃点等操作,并配以状态指示电路辅助操作。

3设计原理分析:

3.1按键功能

初步设计了由六个按键来完成所有的操作,它们的功能分别是:复位键、设置键、存储键、加一键、减一键、确认键,具体操作方法由软件设计为菜单式操作,使所有的操作更加的简洁,方便。

3.2状态指示

状态指示电路由硬件部分(六个发光二极管),结合软件使操作状态一目了然。第一个发光二极管亮时候,表明当前状态为时间显示;第二个发光二极管亮时候,表明此状态为时间调整状态;第三个发光二极管亮时候,表明此状态为时间加一状态;第四个发光二极管亮时候,表明此状态为时间减一状态;第五个发光二极管亮时候,表明此状态为定时时间设定存储状态。

3.3打铃控制

比较所存储的打零时间点,到打铃时间时进行打铃。

3.4电路原理图

图2 总体电路图

图2中,S1为确认键,S2为设置键,S3为加一键,S4为减一键,S5为存储键,S7为复位键。当S2按下时L2亮,S3按下时L3亮,S4按下时L4亮,S5按下时L5亮。L1为正常运行指示。S5,L6暂无使用。蜂鸣器在每个操作时给予报警提示。继电器电路作为打铃信号输出电路,对外提供打铃信号。

4程序流程框图

4.1总体程序流程图

根据硬件设计结果,为满足要求,程序应有主程序、按键处理程序、中断服务程序和显示程序等部分构成。主程序中主要是程序各部分的初始化;按键处理程序处理五个按键的操作,包括各个按键的响应程序以及按键指示、闪烁指示、报警输出等;显示程序显示星期、时、分、秒,主要是时钟显示。

初始化

主程序

按键处理程序中断

服务

程序

图3 总体程序流程图

4.2主程序流程图

该部分程序主要是对程序中所用到的数据单元进行初始化,以及定时器的赋初值。

定时器初始化初始化各单元响应中断计时中断打铃中断显示

校时

图4 主程序流程图

4.3校时程序流程图

该部分的键盘扫描为程序扫描方式,CPU 不停的对P1口进行扫描,当任何一个键按下时,与之相连的输入数据线即被清0(低电平),而平时该线为1(高电平)。这种键盘扫描方式的优点是电路简单:缺点是当键数较多时,要占用较多的I/O 线。由于按键的机械特性,在闭合及断开的瞬间均伴随有一连串的抖动,键抖动会引起一次按键被误读多次。为了确保CPU 对键的一次闭合仅作一次处理,必须去除键抖动。该程序使用10ms 延时程序作为去抖动程序去除键抖动。

校时程序设置键

星期调整小时调整

分钟调整

秒调整

调用闪烁子程序调用显示子程序退出?加一?

减一?

确定?

保存设置

Y N N N N

Y Y Y

图5 校时程序流程图

4.4时钟打铃程序流程图

时钟打铃程序使用单片机T0、T1两个定时器中断,两个定时器均为方式一,初

相关文档
最新文档