HH基于MCS-51单片机的智能控制开关的设计2

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

2010届本科生毕业设计
题目:基于MCS-51单片机的智能控制开关的设计
作者姓名:郝昊
学号:2006080212
系(院):电子与电气工程系
专业:电子信息工程
指导教师姓名:李光宇
指导教师职称:讲师
2010 年 2 月20 日
SuZhou University
Year 2010 Bachelor Graduationl ssignment
Title: Based on MCS-51 microcontroller design of intelligent control switch
Author: Hao Hao
Student ID: 2006080212
Department: Electronic and Electronical Engineering
Major: Electrical Information Engineering
Instructotr: Li Guangyu
Professional Title: Lecturer
Feburary 20th, 2010
摘要
单片机发展到今天已经是一项很成熟的技术,使用单片机控制能实现长达几小时的定时操作,有较好的市场发展前景和技术应用价值。

针对自动测控系统的要求,设计了一种基于MCS-51单片机控制的智能控制开关, 可以满足长时间无人值守的测控系统的要求。

设计电路主要由单片机89C51控制电路、掉电存储电路、按键与LCD 显示电路以及电源电路组成。

系统能实现实时显示和定时控制显示、定时断电保护、准时对开关进行控制等的功能,是一款比较实用的智能开关。

关键词:智能控制;开关;单片机;定时
ABSTRACT
SCM has been developed to a very mature technology, using SCM to achieve up to a few hours of regular operation, there are good prospects for market development and technology application. The requirements for the automatic control system, designed based on MCS-51 MCU intelligent control switch, to meet long unattended measurement and control systems. Circuit design is composed of 89C51 control circuit, power-down memory circuit, buttons and LCD display circuit and power circuit. System that can display real-time display and timing control, timing power-off protection time of the switch control function, is a more practical intelligent switch.
Key words: Intelligent Control; Switch; SCM; Timing
目录
绪论................................................................. 1 1设计要求
1.1 智能控制开关概述..............................................2
1.2 本设计任务....................................................2 2智能控制开关硬件设计............................................... 3
2.1 系统的硬件构成及功能.......................................... 3
2.2 AT89C51单片机及其引脚说明.................................... 3
2.3 键盘控制和实时显示电路....................................... 4
2.4时间设置掉电存储电路.......................................... 5
2.5 电源电路...................................................... 6
2.6开关控制电路.................................................. 7 3系统软件设计.......................................................8
3.1 系统程序流程图................................................8
3.2系统主程序....................................................8
4 系统调试与测试结果分析.............................................16
4.1使用的仪器仪表................................................16
4.2系统调试......................................................16 结论..................................................................17 附录..................................................................18 参考文献..............................................................19 致谢..................................................................20
绪论
在自动测控系统中,特别是长时间无人值守的测控系统中,经常需要进行长达几小时的定时操作。

若采用专门的计时芯片设计,一方面控制复杂,占用硬件资源,另一方面也不经济,一般的时钟芯片价格都比较贵。

由于单片机内部有定时器,因此,可以基于单片机设计一款智能控制开关。

由于使用了单片机来控制,因此使得该系统具有很强的灵活性和智能性。

单片机发展到今天已经是一项很成熟的技术了,采用单片机控制的产品也比比皆是,虽然单片机的价格比较便宜,但是功能却很强大,因此选择单片机来控制是绰绰有余的!人性化的显示设计更是该系统一大特色,能实时显示当前开关的工作状况。

1 设计要求
1.1 智能控制开关概述
该智能控制开关是由单片机89C51控制电路、按键与LCD显示电路和掉电存储电路以及电源电路组成,电路十分的简单,主要由51芯片编程实现,功能十分的强大,时间精度非常高,是一款比较实用的智能开关。

1.2本设计任务
要求:(1)实时显示和定时控制显示;
(2)定时断电保护;
(3)准时对开关进行控制(开和关);
(4)写出详细的设计报告;
(5)给出全部电路和源程序。

2 智能控制开关硬件设计
2.1 系统的硬件构成及功能
智能开关控制的原理框图如图2-1所示。

它由以下几个部件组成:单片机89C 51、电源电路、掉电存储电路、开关控制、键盘输入和显示以及电源电路组成。

时间显示采用LCD 1602,以降低对单片机端口数的要求,同时也降低系统的功耗。

时间控制电路和键盘输入以及掉电存储都通过89C 51的I /O 口控制。

电源部分:电源部分由整流、滤波和集成稳压器组成,以保证系统稳定工作。

图2-1 智能开关控制系统原理框图
2.2 AT89C51单片机及其引脚说明
AT89C51单片机是51系列单片机的一个成员,内部自带4K 字节可编程FLASH 可编程可擦除只读存储器(FPEROM —Falsh Programmable and Erasable Read Only Memory )的低电压、高性能CMOS8位微处理器,与Intel MCS-51系列单片机的指令和输出管脚相兼容。

由于将多功能八位CPU 和闪速存储器结合在单个芯片中,因此,AT89C51构成的单片机系统是具有结构简单、造价低廉、效率高的微控制系统,减少了硬件开销,节省了成本,提高了系统的性价比。

AT89C51是一个有40个引脚的芯片,与8031相比,AT89C51自带4K 的ROM 和128B 的RAM ,因此编写中小型系统就无需任何硬件进行扩展。

AT89C51
键盘输入 开关控制
电 源
LCD1602显示
EEPROM 存储器
2.3 键盘控制和实时显示电路
由于采用软定时器计时,长时间运行会产生一些误差,就要通过按键修改实时时间,根据定时需要只要能够调整小时和分钟即可。

采用独立按键占用了单片机I/O 口,因此在设计该系统时,为了减少单片机I/O 口的使用,采用了行列式键盘,如下图2-2所示。

1
2PW11
2PW2
1
2PW3
1
2
PW4
1
2PW51
2PW6
1
2PW7
1
2
PW8
1
2PW91
2PW10
1
2PW11
1
2
PW12
1
2PW1312PW14
1
2PW15
1
2
PW16
PW1
PW2PW3PW4
PW5
PW6
PW7
PW8
图2-2 行列式键盘原理图
实时控制和显示分别采用了89C 51和1602LCD 液晶。

首先设计实时时钟,系统利用定时器产生实时时钟,采用中断子程序实现实时时钟的功能,采用软定时的方式产生实时时钟,由定时器T0工作在50ms 定时模式,采用中断的响应方式,对50ms 中断计数,每20次为1秒,秒计数单元的值加1,每60秒分钟单元计数单元加“1”,同理,完成小时计数单元的改变,从而实现时钟功能。

为了减小整个系统的功耗,不采用数码管作为显示器件,而用1602LCD 作为来显示时间和要定时的时间,它具有经济、方便、编程容易等优点,设计中显示的数据较少。

1602液晶一共可以显示两行,每行可以显示16个字符。

设计中,1602的第一行显示实时时间,第二行显示定时的时间,显示通过编程实现,液晶的外面要接10K 的可调电阻,用来调节液晶显示的对比度。

并且这两个芯片接通电源可以直接用单片机编程对它进行操作。

下图2-3为实时控制和显示电路原理图。

图2-3 实时控制和显示电路原理图
2.4 时间掉电存储电路
由于系统要显示的内容比较简单,但是定时的时间设置好了,断电了之后什么都没了,因此为了保护时间,该系统就需要有断电存储电路,由于显示量不多,所以选用I2C器件AT24C02。

AT24C02在单片机应用中,作为EEPROM储存器用,与单片机通过I2C通信。

优点是掉电后仍可以保存数据。

比如单片机运行时,手动设置了一些参数,可以用它保存起来。

该存储电路如图2-4所示。

图2-4 时间掉电存储电路
2.5 电源电路
为了给该数据采集系统提供一个比较稳定的工作环境,就此为该系统设计了一个稳压电源模块,电路原理如下图2-5所示,该电源模块5V 固定输出,采用了稳压模块7805,该系列集成稳压模块具有过流、过热和调整管安全工作区保护,以防止过载而损坏。

对于整个系统的工作而言,增加了电路的可靠性能和稳定性能。

图2-5 电源电路原理图
1
23
4
B1
1N4007*4C40.3
C11000PF
C2334
LED1LED3
Vin
1
G N D
2
+5V
3
J1
LM 7805CT
R11k
T1
TRANS3
VCC C3100u
220V ~
VCC GND A1 A2 A3 WP
SCL SDA
+5V
SDA
R10 R11 10K
I2C U3 10K SCL
2.6开关控制电路
该电路采用5V 继电器进行隔离控制,JDQ 继电器耐压为300V ,它的输出级由一个常开开关构成,它控制着主电路的导通与关断,原理图如下图2-6所示。

图2-6 开关控制电路
继电器
开关
+5V
beep
JDQ Q1
NPN
3系统的软件设计
本系统的软件系统主要完成修改时间、定时通断电等功能。

在程序设计过程中,加强了部分软件抗干扰措施,以达到按键的灵活性,确保整个系统的正常运行。

系统流程图如下图1所示。

3.1 系统程序流程图
系统流程图如下图3-1 所示。

图3-1 程序流程图
3.2 系统程序
FM BIT 20H ;分钟到的标志,由中断子程序产生 RING BIT P1.0 ;开关接通标志,由比较子程序产生 PLUS BIT P3.5 MINUS BIT P3.4
开 始
系统初始化 时间与定时时间显示
开关接通,放电
开关断开,不通电
修改时间子程序
修改定时时间子程序
修改定时时间
修改时间 定时时间到否
N
Y
Y
Y
N
N
STP BIT P3.3
PWR BIT P2.7
MS EQU 7FH
SECN EQU 7EH
MINU EQU 7DH
HOUR EQU 7CH
BCDH EQU 7BH ;伪指令定义压缩BCD码的小时表示,用于比较
BCDM EQU 7AH ;伪指令定义压缩BCD码的分钟表示,用于比较
NUMB EQU 6
BUFF EQU 60H
TT EQU 20 ;伪指令设定开关接通的时间长度,设为20秒
ORG 0000H
LJMP START
ORG 000BH
LJMP INTT0
START: LCALL CLEAR
LCALL INIT
MAIN: LCALL BTBCD
LCALL DISP
JBC FM, MAINA
LCALL KEY
JNB RING, MAIN
MOV A, SECN
SUBB A, #TT
JC MAIN
CLR RING
SETB PWR
LJMP MAIN
MAINA: LCALL BTBCD
LCALL COMP
LJMP MAIN
-------------------------------------------------------------------- 清零子程序
CLEAR: MOV R0,#7FH
MOV R7,#20H
CLEA1: MOV @R0, #0H ;全部清零
DEC R0
DJNZ R7, CLEA1
RET
-------------------------------------------------------------------- 初始化子程序INIT: MOV TMOD, #01H
MOV TH0, #3CH
MOV TL0, #0B0H
MOV MS, #20;
SETB TR0
SETB EA
SETB ET0
MOV SP, #30H
RET
-------------------------------------------------------------------- 数码转换子程序BTBCD: MOV A, SECN
MOV B, #10
DIV AB
MOV BUFF, B
MOV BUFF+1, A
MOV A, MINU
MOV B, #10
DIV AB
MOV BUFF+2, B
MOV BUFF+3, A
SWAP A
ORL A, B
MOV BCDM, A
MOV A, HOUR
MOV B, #10
DIV AB
MOV BUFF+4, B
MOV BUFF+5, A
SWAP A
ORL A, B
MOV BCDH, A
RET
-------------------------------------------------------------------- 按键扫描子程序KEY: MOV B, MINU
INC B
INC B
SETB STP
JNB STP, KEY11
SETB PLUS
JB PLUS, KEY2A
LCALL BTBCD
LCALL DDISP
SETB PLUS
JNB PLUS, KEY22 ;加一分钟
KEY2A: SETB MINUS
JB MINUS, KEYDD ;减一分钟
LCALL DDISP
LCALL BTBCD
LCALL DDISP
SETB MINUS
JNB MINUS, KEY33
KEYDD: LJMP KEYD
KEY11: LCALL DDISP
LCALL DDISP
SETB STP
JNB STP, KEY1
SJMP KEYDD
KEY22: LJMP KEY2
KEY33: LJMP KEY3
KEY1: LCALL DDISP
LCALL BTBCD
MOV BUFF+2, #11H
MOV BUFF+3, #11H
MOV BUFF, #11H
MOV BUFF+1, #11H
SETB PLUS
JNB PLUS, KEY5 ;判断小时+
SETB MINUS
JNB MINUS, KEY4 ;判断小时-
SETB STP
JB STP, KEY1
LCALL DDISP
LCALL BTBCD
SETB STP
JB STP, KEY1
KEY6: LCALL DDISP
LCALL BTBCD
SETB STP
JNB STP, KEY6
LJMP KEYD
KEY5: LCALL DDISP
LCALL DDISP
SETB PLUS
JB PLUS, KEY1
INC HOUR
MOV A, HOUR
CLR C
SUBB A, #24
JC KEY1
MOV HOUR, #00
LJMP KEY1
KEY4: LCALL DDISP
LCALL DDISP
SETB MINUS
JB MINUS, KEY1
DEC HOUR;
MOV A, HOUR
CLR C
SUBB A, #24
JC KEY1
MOV HOUR, #23
LJMP KEY1
KEY2: LCALL DDISP
SETB PLUS
JB PLUS, KEYD
INC MINU
MOV A, MINU
CLR C
SUBB A, #60
JC KEYD
MOV MINU, #00
LJMP KEYD
KEY3: LCALL DDISP
SETB MINUS
JB MINUS, KEYD
DEC MINU
MOV A, MINU
SUBB A, #60
JC KEYD
MOV MINU, #59
KEYD: RET
-------------------------------------------------------------------- 比较子程序
COMP: PUSH DPH
PUSH DPL
PUSH ACC
MOV DPTR, #ALARM
MOV R6, #NUMB
COMP1: CLR A
MOVC A, @A+DPTR
INC DPTR
CJNE A, BCDH, COMP0
CLR A
MOVC A, @A+DPTR
CJNE A, BCDM, COMP0
SETB RING
CLR PWR ;定时时间到COMP0: INC DPTR ;指向下一个定时时间COMP2: DJNZ R6, COMP1
COMPD: POP ACC
POP DPL
POP DPH
RET
-------------------------------------------------------------------- 扫描显示子程序
DISP: MOV R0, #BUFF
MOV R2, #06H
MOV R3, #01H;
MOV DPTR, #TABLE
DISP1: MOV A, R3
MOV P2, A
RL A
MOV R3, A
MOV A, @R0
MOVC A, @A+DPTR
MOV P0, A
LCALL DELAY
DJNZ R2, DISP1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H
DB 6DH,7DH,07H,7FH,6FH
-------------------------------------------------------------------- 调用3次显示子程序DDISP: MOV R1, #03H
DDIS1: LCALL DISP
DJNZ R1, DDIS1
RET
-------------------------------------------------------------------- 延时子程序DELAY: MOV R7, #100
DELAY0: MOV R6, #10
DELAY1: DJNZ R6, DELAY1
DJNZ R7, DELAY0
RET
-------------------------------------------------------------------- 时钟中断程序
INTT0: PUSH PSW
PUSH ACC
MOV TL1, #0B0H
MOV TH1, #3CH
DJNZ MS, INTD
MOV MS, #14 ;恢复计数值
INC SECN
MOV A, SECN
CJNE A, #60, INTD
MOV SECN, #0
INC MINU
SETB FM
MOV A, MINU
CJNE A, #60, INTD
MOV MINU, #0
INC HOUR
MOV A, HOUR
CJNE A, #24, INTD
MOV HOUR, #00H
INTD: POP ACC
POP PSW
RETI
ALARM: DW 0800H,0900H,0930H,1000H,1200H,1500H END
宿州学院2010届毕业设计系统调试与测试结果分析4 系统调试与测试结果分析
4.1 使用的仪器仪表
数字万用表DT9203
单片机仿真器WA VE6000
烧写器GF2100
双踪稳压稳流电源DH1718E-5
数字示波器TDS1002
4.2 系统调试
根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。

由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试。

结论
上述智能开关,无论在外观上还是功能上都实现了较为完善的设计。

由于在画原理图时每个集成芯片的电源脚都有一个旁路电容连到地,从而巧妙地抑制了电磁干扰。

本系统在编写软件时还用了各种延迟程序来设置了按键的灵活性。

因而此产品可广泛应用于家庭中,系统可靠,工作方便。

通过这次做课程设计的锻炼,使我学到了许多书本中没有的东西!从选题到构思设计方案,尤其是在确立设计方案的过程中了解到了很多东西!特别是在芯片的选择上,了解到了许多平时很少接触的芯片的功能及优缺点!通过这次锻炼也给自己树立起了信心!同时也深刻体会到了“遇到困难,解决困难!”这句话的含义,只有这样才能真正提高自己的水平,真正的把学到的知识应用到实际中去!真正做到学以至用!
经过这一段时间的努力,在指导教师以及同学们的帮助下终于把毕业论文做完。

毕竟自己能力有限,没有他们的帮助与支持,不可能靠一个人的力量去完成毕业论文,在此向他们表示真诚的感谢!
时间的仓促及自身专业水平的不足,整篇论文肯定存在尚未发现的缺点和错误。

恳请阅读此篇论文的老师、同学,多予指正,不胜感激!
附录电路原理图如下。

电路原理图
参考文献
[1] 谢自美.电子线路设计·实验·测试.华中理工大学出版社
[2] 张毅坤,陈善久,裘雪红.单片微型计算机原理及应用.
西安电子科技大学出版社
[3] 沈任元,吴勇.常用电子元器件手册.机械工业出版社
[4] 吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用.清华大学出版社
[5] 吕国芳,张玉华.A T24C02在电压控制系统中的应用.
国外电子测量技术#2004年增刊
[6] 陈世同,梁辉,张成,毛泽安.A T24C02在光纤陀螺测试中的应用.
第32卷第12期应用科技
[7] 王念旭.DSP基础与应用系统设计[M].北京:北京航空航天大学出版社,2000.
[8] 曾繁泰,陈美金.VHDL程序设计[M].北京:清华大学出版社,2000.
[9] 李现勇.VisualC++串口通信技术与工程实践[M].北京:人民邮电出版社,2002.
[10] 王庆.PROTEL 99 SE&DXP电路设计教程.电子工业出版社,2008年5月
[11] 康光华.电子技术基础(第五版).高等教育出版社,2007年6月
[12] 李及.MCS-96系列单片机原理与应用[M].长春:吉林科学出版社,1996.
[13] 何立民.单片机应用技术选编[M].北京:北京航空航天大学出版社,1997.
[14] 王福瑞.单片微机测控系统设计大全[M].北京:北京航空航天大学出版社,1999.
[15] 孙涵芳.Intel16位单片机[M].北京:北京航空航天大学出版社,1995.
[16]谭浩强. C 程序设计[M]. 清华大学出版社,1999 年12 月第2 版
[17] 冯耀辉等.PowerPCB 5.0入门与提高.人民邮电出版社,2004年6月
致谢
首先感谢各位老师四年来的教导,他们的辛勤教导使我受益匪浅,为我不断吸取新知识提供了很好的源泉。

感谢我的指导老师李光宇老师,无论在论文的选题、课题的研究以及论文的撰写过程中,自始至终得到了李老师的悉心指导和热心帮助,使我对所选题目有了具体了解,对所要撰写的内容进行了较为细致的规划。

在初稿上交后,李老师在内容改动方面提供了宝贵的意见,使我的毕业设计才得以顺利完成。

感谢学校,感谢校图书馆和自修室为我提供了良好的学习环境和学习氛围,使我终身受益。

相关文档
最新文档