四路定时控制器_第1页
四路定时控制器_第2页
四路定时控制器_第3页
四路定时控制器_第4页
四路定时控制器_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河南理工大学本科课程设计报告摘要本设计是实现四路定时计数器,即用来控制四条由继电器控制的回路的开断。 四 路定时控制器是由单片机核心板,定时电路,显示电路,继电器控制电路组成, 通过程序及单片机对其余电路进行控制,使得定时电路能准确对每一路进行定 时,并使继电器控制电路在定时时间段内导通, 其余时间段内关闭。按键一用来 选择回路,按键二三四五是通过对时分进行加一减一设置相应时间。对于整个电路,当按键一按第一次对当前时钟时间进行调整校对。对于第一条回路,我们在回路上安装了继电器,当按键一按第二次设置第一条回路继电器的吸合时间,当按键一按第三次设置第一条回路继电器的断开时间。对于第二,三,四条回路

2、, 我们使用发光二极管代替继电器,当按键一按第四次设置第二条回路二极管点亮 时间,当按键一按第五次设置第二条回路二极管熄灭时间,依次类推,实现对四条回路定时时间段的设置。止匕外,为了防止在显示时出现错误,我们将按键六设 置为返回现在状态的按键。我们将按键程序和数码管显示程序写成头文件的形 式,在主函数中调用,使主函数更加方便整洁。最终我们实现的功能为:对当前 时钟时间进行校对,设置好每条回路的开启和关断时间后。开启时间到,继电器吸合或二极管点亮;关断时间到,继电器断开吸合或二极管熄灭,以此来实现对 四条回路的控制。关键字:按键 数码管 四路 继电器-5 -目录摘要11概述31.1 课题背景以及

3、课题研究的意义 31.2 课题的研究工作31.3 课题研究中存在的困难 42系统总体方案及硬件设计 51.1 系统总体设计方案51.3 核心板原理图63 .软件设计73.1 定时设计73.2 按键设计73.3 数码管显示84 .protues 仿真 95 .课程设计体会 10参考文献10附1源程序代码11附2系统原理图211概述1.1 课题背景以及课题研究的意义四路定时控制器应用于开关中,在定时时间到后自动打开,定时时间到后自 动闭合,避免了人员自己去闭合断开开关而产生人身安全的危险。安全开关/插座独创线路终端一对一保护功能,将电流过载保护技术融入普 通开关、插座中,具备温升感应、自动断电、报

4、警、复位、转接、连接等功能。 既延长了供电线路使用寿命,杜绝了电气火灾的发生,同时,当用电发生异常时, 只切断故障位置的电源,而不会影响其它电器的正常用电。 产品的性价比得到了 极大的提高。既保障了人们的生命财产安全,又给用户带来方便可靠的用电环境。近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传 统控制检测日新月异更新.在实时检测和自动控制的单片机应用系统中, 单片机 往往是作为一个核心部件来使用, 仅单片机方面知识是不够的,还应根据具体硬 件结构,以及针对具体应用对象特点的软件结合,加以玩善。四路定时控制器, 可以更简单、方便的使用。本系统采用单片机at89c51为中心

5、器件来设计四路定 时控制器,系统实用性强、操作简单、扩展性强。1.2 课题的研究工作智能开关是在电子墙壁开关的基础上演变而来的,是对原有翘板式机械开关 颠覆性革命,从爱迪生1879年发明电灯泡开始,就有了简单的机械开关,一百 多年过去了,当代的墙壁开关无根本性改变,没有任何突破性发展,仍沿用机械式的开关方式,直到1992年,电子技术才开始进入墙壁开关领域,起初仅只是 用于公共走廊中的声控延时开关,触摸延时开关。到了 2000年人体热释传感器 的广泛应用,延时开关有了重大的发展,人体感应开关逐渐代替声控延时开关和 触摸延时开关,与此同时用可控硅相位控制的调光调速开关也孕育而生,旋钮式调光开关,主

6、要适用于白炽灯,旋钮式调速开关,主要适用于风扇电机。以上这 几种开关虽说从传统的机械模式进入到了电子模式,但其功能相对简单,仅只是在特定场合下使用,对传统的机械开关无法形成冲击和取代,另外由于现有的墙 壁开关的布线格局中绝大多数只是单火线接入方式,零线直接引到负载,在开关中只有火线没有零线,不能形成回路,无法正常供电,这样限制了许多电子技术 的引进和应用,十几年电子技术在墙壁开关中的发展一直在初期简单功能阶段徘 徊,始终只有五种类型:触摸延时开关,声控延时开关,人体感应延时开关(pir), 旋钮调光开关,旋钮调速开关。近年来,随着科学技术的发展,墙壁开关单火线接入的供电技术有了重大的突破,同时

7、将微电脑处理芯片引入到电子墙壁开关 中,使得具有各种不同功能的电子墙壁开关变得切实可行,借此技术一些公司开始推出了系列的电子墙壁开关新产品,这时电子墙壁开关的种类有了极大的丰富 和发展,因而有必要将之归纳分类,电子墙壁开关按功能分类如下:1)人体感应开关 2)电子调光开关 3)电子调速开关 4)电子定时开关 5) 其它智能开关 然而近二十年来居家生活已发生了重大的变化, 许多家用电器已 进入到了家庭,极大丰富了人们的生活,如冰箱、空调、 lew,装饰吊扇、排 风扇、浴霸等,控制它的还是一个简单机械开关, 所能做到的也只是简单的一开 一关,无法按照不同电器特点来作相应功能的运行,例如:排风扇装在

8、洗手间, 人离开时,需要延时一段时间关闭以排除异味, 有些、公共场合还要人来自动开, 人走后延时一段时间再关闭。吊扇装在客厅不仅需要开关,还需要3档或5档调 速,装在卧室中要求有定时功能,但有别于排风扇的延时关功能,最好能配上遥 控器,指尖轻动,风度自由掌控;然而对于 lew来说,需要开关功能的同时, 更为重要的是还需要调光/调色功能,诸如此类,对不同的家用电器,需要更加 智能化的开关与之相匹配,这势必将导致百年墙壁开关的一次彻底革命,其中 ipuray爱普瑞率先提出家电智能开关的全概念,同时推出家电智能开关下的系 列产品:led灯开关、风扇类开关、排风扇开关、吊扇遥控器、空调类开关、 加热器

9、开关、电饭煲开关、油烟机开关。1.3 课题研究中存在的困难每一个课题在研究过程中都需要考虑很多因素,不仅要考虑研究课题的实用价值,还要求系统开销经济节省,符合人民的消费能力要求,因此在系统设计时为 了统筹兼顾各个因素,所以在课题研究中存在以下几个困难:统的高性能要求与系统经济性要求相矛盾。因为单片机控制四路定时计数器系 统属于弱电控制领域,因此在控制过程中就为了防止外部干扰就要引进一些其他 辅助设备,这在无形中就增加了系统开发成本, 致使系统经济性不高。同时由于 要控制继电器,一般的继电器吸合都存在声音,而从增加人民生活的舒适程度出 发,这些声音是不允许的,但消除声音就需要引入外在设备或采用高

10、性能电机, 经济性不好;单片机系统需要5v低压供电,增加了系统成本,同时也增加了系统故障的几 率。如何实现四路定时计数器能定时时间超过24小时还需解决。2系统总体方案及硬件设计2.1 系统总体设计方案 四路定时控制器是由单片机,定时电路,显示电路,继电器控制电路组成,通过 程序及单片机对其余电路进行控制, 使得定时电路能准确对每一路进行定时, 并 使继电器控制电路在定时时间段内导通,其余时间段内关闭。流程图如下:2.2 硬件原理图根据单片机核心板画出如下流程图河南理工大学本科课程设计报告2.3核心板原理图3.软件设计3.1 定时设计通过设计两个变量分别实现对开启时间和关断时间的设定,通过按键更

11、改设 置的时间。流程图如下3.2 按键设计对于整个电路,当按键一按第一次对当前时钟时间进行调整校对。对于第一条回路,我们在回路上安装了继电器,当按键一按第二次设置第一条回路继电器的 吸合时间,当按键一按第三次设置第一条回路继电器的断开时间。对于第二条回路,我们使用发光二极管代替继电器,当按键一按第四次设置第二条回路二极管 点亮时间,当按键一按第五次设置第二条回路二极管熄灭时间。第三四条回路与第二条回路相同。当按键一按第十次返回到当前显示时间。 按键二三对时钟的小 时进行加减,按键四五对时钟的分钟进行加减。止匕外,为了防止在显示时出现错 1 口 京,3.3数码管显示数码管的前两位显示时钟的小时,

12、后两位显示时钟的分钟流程图如下:程序复位初始化数码管显示设置多路定时时间中断处理显示时间按键扫描初始化时间,键盘扫描河南理工大学本科课程设计报告-25 -4.protues 仿真幅的 rw说:tmlmf及 ftt-lftff孑一陵心帅岷 田时 flmia m*iifwij fm, 忖1.*f1mitt 髀禅5.课程设计体会一开始思路就很清晰,就是用程序通过单片机对四条由继电器控制的的电路 进行定时实现对四个回路通段控制,但理解有偏差,以为只是简单地定时,后来仔细看了要求,知道是定一个时间段。难度有所加大,但是有了前面四个单片机 实验的基础,对定时已经很熟悉了,在此基础上更改了对按键及主函数的编

13、程, 写出了能定时间段的程序。刚开始对继电器的工作原理和接线方法也不是很了 解,通过向老师请教,清楚地知道了继电器的工作原理和接线方法, 成功的接好 了外围电路,即有继电器控制的的四条回路。 这次的课程设计收获很多,更加熟 练地掌握了编程和单片机,也了解继电器及其相关知识。这次单片机课程设计不仅巩固了以前所学过的知识,而且学到了很多在书本 上没有学到过的知识,掌握了一种系统的研究方法,可以进行一些简单的编程。 通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论, 从 而提高自己的实际动手能力和独立思考的能力。

14、同时在设计的过程中发现了自己的不足之处,例如对以前所学过的知识理解得不够深刻,掌握得不够牢固,学习了单片机c语言。 经过一周的努力,顺利的完成了单片机课设。 这是一个磨练 意志的过程。从课题的选择开始,计算器的设计、硬件和软件系统的设计、到最 后的proteus软件仿真完成,这其中经历了很多困难,但是更重要的是在这个过 程中我们得到了很大的锻炼。一方面通过c51单片机等一些器件的设计让我们学 习和掌握了单片机技术的基础知识和技术要点, 也使以前学的很多知识都得到了 运用;另一方面在用proteus软件画电路图时,然后再转换成一维的 word进 行编辑,这个过程中让我掌握了计算机辅助的设计技术。

15、当然,这是一个需要不断的尝试,不断的校核,不断的修改,最后完成一个合理的设计的过程。需要的 是细心和耐心。在很大程度上培养了我们拼搏的工作精神。更重要的是,也许我 们做的不是做好的,但这几天的辛苦投入以及最后的功能实现让我们体会到了努 力认真的快乐,以及付出就有回报的真理。通过本次课设,我们不仅学到了关于单片机技术方面的许多专业知识,同时 也让我感觉到团队合作的重要性。真心感谢这次课程设计以及老师的热情指导, 这会对我们以后的学习和生活产生深远地影响。参考文献1郭天祥.51单片机c语言教程.北京:电子工业出版社2肖金立.微型计算机原理及应用.北京:电子工业出版社3杨立.微型计算机原理与接口技术

16、.北京:北京交通大学出版社4刘新瑞.c语言程序设计教程.北京:机械工业出版社5周志德.c+程序设计.北京:电子工业出版社附1源程序代码#include"key_6.h" /包含按键程序的头文件#include"smgxianshi.h"/包含数码管显示程序的头文件#define uint unsigned int#define uchar unsigned charuchar add_function(uchar aa,uchar bb); 设置数码管加一功能uchar sub_function(uchar aa,uchar bb); / 设 置数码管减

17、一功能sbit l1=p3a2; 回路一sbit l2=p3a3; / 回路二sbit l3=p3a4; 回路三sbit l4=p3a5; 回路四sfr p1m1=0x91;sfr p1m0=0x92;int num,shi,fen;ucharshi1o,fen1o,shi2o,fen2o,shi3o,fen3o,shi4o,fen4。;回路一至四的开始时间设置ucharshi1x,fen1x,shi2x,fen2x,shi3x,fen3x,shi4x,fen4x; /回路一至四的关断时间设置uchar s1;/按键一被按下的次数p1m0=0xff;p1m1=0;tmod=0x11;th0=(

18、65535-46083)/256;tl0=(65535-46083)%256;ea=1;总中断et0=1;定时器中断tr0=1;开启定时器void main(void)/ 主函数uchar k;init();while(1)if(s1=0)按键一没被按下,正 常显示时间xianshi_2(shi,fen);void init(void)k=key();if(k=1)s1+;if(s1!=0)if(s1=1)/按键一被按下一次if(k=2)/ 按键二小 时时间加一shi=add_function(shi,2);if(k=3)/按键三小 时时间减一shi=sub_function(shi,2);i

19、f(k=4) 按键四小 分钟间加一fen=add_function(fen,1);if(k=5)按键五小分钟间减一fen=sub_function(fen,1);p2=0xfe;xianshi_2(shi,fen);if(s1=2) 按键一被按下两 次设定第一条回路的起始时间if(k=2)shi1o=add_function(shi1o,2);if(k=3)shi1o=sub_function(shi1o,2);if(k=4)fen1o=add_function(fen1o,1);if(k=5)fen1o=sub_function(fen1o,1);p2=0xfd;xianshi_2(shi1

20、o,fen1o);if(s1=3)按键一被按下三次设定第一条回路的终止时间if(k=2)shi1x=add_function(shi1x,2);if(k=3) shi1x=sub_function(shi1x,2);if(k=4) fen1x=add_function(fen1x,1);if(k=5) fen1x=sub_function(fen1x,1);p2=0xff;xianshi_2(shi1x,fen1x);if(s1=4)按键一被按下四 次设定第二条回路的起始时间if(k=2)shi2o=add_function(shi2o,2);if(k=3)shi2o=sub_function

21、(shi2o,2);if(k=4)fen2o=add_function(fen2o,1);if(k=5)fen2o=sub_function(fen2o,1);p2=0xfb;xianshi_2(shi2o,fen2o);if(s1=5)按键一被按下五if(k=2) shi2x=add_function(shi2x,2);if(k=3)shi2x=sub_function(shi2x,2);if(k=4) fen2x=add_function(fen2x,1);if(k=5) fen2x=sub_function(fen2x,1);p2=0xff;xianshi_2(shi2x,fen2x);

22、if(s1=6)按键一被按下六 次设定第三条回路的起始时间if(k=2)shi3o=add_function(shi3o,2);if(k=3)shi3o=sub_function(shi3o,2);if(k=4)fen3o=add_function(fen3o,1);if(k=5)fen3o=sub_function(fen3o,1);p2=0xf7;次设定第二条回路的终止时间xianshi_2(shi3o,fen3o);p2=0xef;if(s1=7)按键一被按下七次设定第三条回路的终止时间xianshi_2(shi4o,fen4o);if(k=2) shi3x=add_function(s

23、hi3x,2);if(k=3) shi3x=sub_function(shi3x,2);if(k=4) fen3x=add_function(fen3x,1);if(k=5) fen3x=sub_function(fen3x,1);p2=0xff;xianshi_2(shi3x,fen3x);if(s1=9)按键一被按下九 次设定第四条回路的终止时间if(k=2) shi4x=add_function(shi4x,2);if(k=3) shi4x=sub_function(shi4x,2);if(k=4) fen4x=add_function(fen4x,1);if(k=5) fen4x=su

24、b_function(fen4x,1);p2=0xff;if(s1=8)按键一被按下八次设定第四条回路的起始时间if(k=2)shi4o=add_function(shi4o,2);xianshi_2(shi4x,fen4x);if(s1=10)按键一被按下十次回到显示状态s1=0;tr0=1;if(k=3) shi4o=sub_function(shi4o,2);if(k=4) fen4o=add_function(fen4o,1);if(k=5) fen4o=sub_function(fen4o,1);if(s1=0)s1=0;tr0=1;if(shi=shi1o&&fen

25、=fen1o) 11=0;/ 回 路一开if(shi=shi1x&&fen=fen1x) 11=1; 回 路一关if(shi=shi2o&&fen=fen2o) 12=0; / 回路二开if(shi=shi2x&&fen=fen2x) 12=1; / 回路二关if(shi=shi3o&&fen=fen3o) 13=0; / 回路三开if(shi=shi3x&&fen=fen3x) 13=1; / 回路三关if(shi=shi4o&&fen=fen4o) 11=0; / 回路四开if(shi=shi4

26、x&&fen=fen4x) 11=1; / 回路四关uchar add_function(uchar aa,uchar bb)if(bb=1)if(aa>=59)return 0;elseaa=aa+1;return aa;else if(bb=2)if(k=6)/按键六返回显示if(aa>=23)return 0;elseaa=aa+1;return aa;uchar sub_function(uchar aa,uchar bb)if(bb=1)if(aa<=0)return 59;elseaa=aa-1;return aa;else if(bb=2)if(

27、aa<=0)return 23;elseaa=aa-1;return aa;void t0_time(void) interrupt 1 中断th0=(65535-46083)/256;tl0=(65535-46083)%256;num+;if(num=1200)num=0;fen+;if(fen=60)fen=0;shi+;if(shi=24)shi=0;按键头文件:#ifndef _key_h_#include"key_6.h"#define _key_h_#include <intrins.h>j = 66;do/while (-j) while (

28、-i);#include<reg52.h>unsigned char key()void delay5ms()11.0592mhz unsigned char k=0;3msp0|=0xe0;unsigned char i, j;p3&=0x3f;_nop_();if(p0&0xe0)!=0xe0)_nop_();i = 33; delay5ms();p2&=0xfb;delay5ms();p0|=0xe0;if(p0&0xe0)!=0xe0) p3|=0xc0;p3&=0x7f;switch(p0&0xe0)case 0xe0: b

29、reak;case 0x60: k=6;break;case 0xa0: k=5;break;case 0xc0: k=4;break;while(p0&0xe0)!=0xe0);p3|=0xc0;p3&=0xbf;switch(p0&0xe0)case 0xe0: break;case 0x60: k=3;break;case 0xa0: k=2;break;case 0xc0: k=1;break; while(p0&0xe0)!=0xe0);return k;#endif数码管显示头文件:#ifndef _smgxianshi_h_ / #include"smgxianshi.h"#define _smgxianshi_h_while (-j);#inc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论