单片机作息时间控制器设计方案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机作息时间控制器设计方案
第1章总体方案设计
1.1 设计要求
本课题要求以单片机为核心,设计一个具有定时和计数功能的智能化作息时间控制器,用于学校教学楼的时间控制,实现时间基准定时,并配合“启动”、“复位”等按键的操作,并按作息时间显示的容要求有有以下功能:
(1)按作息时间接通/断开电铃;
(2)课间接通/断开播放音乐设备;
(3)时间的设置与值显示(显示的容要求有时、分、秒各两位)
1.2优点及意义
本课题要求设计一个具有定时和计数功能的智能化作息时间控制器,用于学校教学楼的时间控制,实现时间基准定时。数码管显示电路采用LED动态控制方式,显示时分秒。按键电路控制定时计时。闹铃指示电路控制铃声。
1.3 系统硬件电路设计
本方案采用一种是用以STC89C52为核心,外加8位数码管,蜂鸣器,继电器和按键完成系统的设计要求。
系统硬件设计框图。根据设计要求,确定系统的设计方案,图1-1为系统总体设计计框图。硬件电路由6个部分组成,即单片机时钟电路、复位电路、键盘输入电路、LED数码管显示电路、蜂鸣器电路、继电器电路。
1.4初步设计思路
(1)定义一组数表,存字形码
(2)定义4个数据缓冲区,对应4个数码管,将要显示的字符的偏移量存入。通过查表指令从P1口输出。
(3)LED数码管通过驱动电路,显示相应的状态。位选由P2口高四位产生,
(4)通过P3口接通继电器和蜂鸣器。
(5)系统设置3个按键,分别是选择键、时间加键、时间减键。
第2章硬件电路设计
2.1时钟电路设计
单片机工作的时间基准是由时钟电路提供的,在单片机的XTAL1和XTAL2两个引脚间,接一只晶振及两只电容就构成了单片机的时钟电路,如图2-1所示。
图2-1时钟电路
电路中器件选择可以通过计算和实验确定,也可以参考一些典型电路参数。电路中,电容器C1和C2对振荡频率有微调作用,同时帮助晶振起振,通常取值围在22±0.1PF,一般晶振为12MHZ,电容取22PF。石英晶体选择12MHZ。
2.2 复位电路设计
表2-2复位电路设计
单片机系统的复位电路在可以采用的是按钮式上电复位电路形式,其中电阻R采用10KΩ的阻值,电容采22μF的电容值。
2.3 键盘电路设计
为了减少键盘与单片机接口时所占用的I/O线的数目,独立是键盘。由于只要使用3
个按键,按键分别接p2.7 p2.6 p2.5。J6跳线帽短接,是按键按下是接通到地。
图2-3按键电路设计
2.4 显示电路设计
根据显示器显示接口的驱动方式采用动态显示。显示器的选择位接P2口高四位P2.0-P2.3。用动态扫描的方法进行显示,即逐个循环点亮各位显示器,实现4位共阳极LED 的动态显示。每次显示完4位,就判断时间是否超出,若超出则修改。
图2-4显示电路设计
2.5继电器电路
图2-5继电器电路
通过与设定时间比较,相等时P3.5接通继电器,继电器常闭断开,常开闭合,蜂鸣器接通,开始响铃。同时接通D2是LED灯点亮作为指示灯。
2.6 I/O接口的分配
PO 数码管显示P3.7 蜂鸣器
P2.7 K1 P2.0 数码管位选
P2.6 K2 P2.1 数码管位选
P2.5 K3 P2.2 数码管位选
P3.5 继电器P2.3 数码管位选
第3章应用软件设计
3.1 主程序设计
作息时间控制器的基本功能就是时间显示,要准确定时,就使用了定时器T0,定时50ms,同时用R2做软件计数,计数20次。完成1s定时。在主程序中对定时器赋初值,数据缓冲区初始化,同时对显示子程序、按键子程序、时间修改子程序、和响铃子程序的一次循环调用。
3.2 子程序设计
3.2.1 显示子程序
采用动态显示,通过P2口P2.0-P2.3实现显示器位的控制。令P2=0F7H,开始时取第一位待显参数(缓存区30H单元中的数,字形码的偏移量),将位控数据输出到P2口,将30H单元中的数转换为段码送入P0口。再取下一位位控数,缓存区指针加一,延时。循环显示,显示4次后结束循环。
LED数码管显示流程图:
图3-2显示程序流程图
3.2.2 响铃子程序
每次显示完4位时间后,就依次和预设的时间进行比较,看是否相等,若相等则对P3.7置1,开始响铃,同时判断20s时间完成没。当20s响铃完成后,对P3.7口置0,响铃结束。
图3-3响铃子程序流程图
3.2.3键盘扫描子程序
系统设计中需要用到3个按键。按键个数少,采用独立式键盘可以节约硬件资源。编程也相对简单一点。当读取到有按键按下时,加上延时去抖动,防止误读。
图3-4按键子程序流程图
第4章系统调试与性能分析
先按电路原理图把线连接好,通过STC软件下载好程序后就可以进行硬件调试了。(1)开机显示时间
电源接通后按下开机键,单片机开始工作,时间显示为16:09。其中小时的个位下面的点的闪烁用来表示秒针的自加。闪烁30次后系统默认1分钟,时钟自加1。
图4-1开机时间显示
(2)定时响铃
当时间到设定值时如16:40,上课打铃开始,蜂鸣器发出20s的声音。
图4-2定时打铃上课
(3)播放音乐。当时间到大课间时,系统就会播放音乐,这里用第2位LED的点亮来代替音乐的播放。
图4-3课间休息放音乐
(4)修改时间,按下S1键后根据按下的次数,会分别点亮左边LED6 LED5 LED4 LED3 分别表示可以修改时间个4位。
图4-4修改时间
在按键修改时出现过一些小问题,如可以调出24点25点等不存在的时间,经过后续的修改,这些问题都得到了解决