毕业设计(论文)基于单片机的水箱控制系统设计.doc

上传人:文库蛋蛋多 文档编号:3980671 上传时间:2023-03-30 格式:DOC 页数:21 大小:335.50KB
返回 下载 相关 举报
毕业设计(论文)基于单片机的水箱控制系统设计.doc_第1页
第1页 / 共21页
毕业设计(论文)基于单片机的水箱控制系统设计.doc_第2页
第2页 / 共21页
毕业设计(论文)基于单片机的水箱控制系统设计.doc_第3页
第3页 / 共21页
毕业设计(论文)基于单片机的水箱控制系统设计.doc_第4页
第4页 / 共21页
毕业设计(论文)基于单片机的水箱控制系统设计.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《毕业设计(论文)基于单片机的水箱控制系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于单片机的水箱控制系统设计.doc(21页珍藏版)》请在三一办公上搜索。

1、 目录:摘要3引言4第一章 AT89C51单片机系统简介51.1 AT89C51单片机说明51.2时序61.3引脚极其功能8第二章 水箱给水设备的系统构成122.1外部硬件结构122.2本系统采用8051单片机控制部分结构13第三章 本系统的工作原理153.1工作原理153.2 主程序框图153.3 自动模式子程序:163.4 手动模式子程序:17总结18致谢19参考文献:19附录:20本系统程序清单20系统电路示意图22摘要本单片机系统设计的目的是应用单片机控制技术,以AT89C51单片机为核心控制工厂的水箱的水位,并实现了报警和手动、自动切换功能。该系统操作方便、性能良好,比较符合工厂生厂

2、用水系统控制的需要。本毕业论文还详细的给出了相关的硬件框图和软件流程图,并编制了该汇编语言程序。关键词:单片机 系统控制 核心 精度ABSTRACTThe purpose of single-chip system design is the application of single-chip control technology, to AT89C51 as the core to control the water level in water tank factory, and the realization of the alarm and manual, automatic swi

3、tching function. The system is easy to operate, good performance, more in line with Health Works plant needs water system control. This article also gives a detailed diagram of the related hardware and software flow chart, and the preparation of the assembly language program.KEYWORDS: MCU、system con

4、trol 、coer、precision引言漫步在繁华的现代化的大都市的大街上,随时都可以看到街上有很多可以用卡取钱的机器(ATM自动柜员机),十字路口的交通灯。我们的手机,我们家里数码电视机、数码音响、遥控器、空调、智能玩具.随着我国的国民经济与生活水平的发展,工厂对自动化的需求也日益增加,为减少污染、节约能源,单片机控制技术得到了广泛的应用。在工业生产里,很多都用到大水箱,水箱里的水位控制就是问题了,以前有专门的人看着,既浪费人力,又不能准确的判断水位高低。所以单片机控制水箱水位就在工厂得到广泛的应用。一般工业里用到的水箱,体积都比较大,所以对水位的控制需求就相应的大了,工厂里对水位的控制

5、精度要求也高。第一章 AT89C51单片机系统简介1.1 AT89C51单片机说明目前,8051单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的语音接口,构成具有合成语音输出能力的综合应用系统,以增强人机对话的功能。89C51是Intel公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。每一个单片机包括:一个8位的微型处理器CPU;一个256K的片内数据存储器RAM;片内程序存储器ROM;四个8位并行的I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/记数器;五个中断源的中断控制系统;一个全双工UART的串行I/O

6、口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率是12MHZ。以上各个部分通过内部总线相连接。下面简单介绍下其各个部分的功能。中央处理器CPU是单片微型计算机的指挥、执行中心,由它读人用户程序,并逐条执行指令,它是由8位算术逻辑运算部件(简称ALu)、定时控制部件,若干寄存器A、B、B5w、5P以及16位程序计数器(Pc)和数据指针寄存器(DM)等主要部件组成。算术逻辑单元的硬件结构与典型微型机相似。它具有对8位信息进行+、-、x、/ 四则运算和逻辑与、或、异或、取反、清“0”等运算,并具有判跳、转移、数据传送等功能,此外还提供存放中间结果及常用数据寄存器。控制器部

7、件是由指令寄存器、程序计数器Pc、定时与控制电路等组成的。指令寄存器中存放指令代码。枷执行指令时,从程序存储器中取来经译码器译码后,根据不同指令由定时与控制电路发出相应的控制信号,送到存储器、运算器或Io接口电路,完成指令功能。程序计数器Pc 程序计数器Pc用来存放下一条将要执行的指令,共16位可对以K字节的程序存储器直接寻址c指令执行结束后,Pc计数器自动增加,指向下一条要执行的指令地址。 CPU功能,总的来说是以不同的方式,执行各种指令。不同的指令其功自略异。有的指令涉及到枷各寄存器之间的关系;有的指令涉及到单片机核心电路内部各功能部件的关系;有的则与外部器件如外部程序存储器发生联系。事实

8、上,cRJ是通过复杂的时序电路完成不同的指令功能。所谓cRJ的时序是指控制器控照指今功能发出一系列在时间上有一定次序的信号,控制和启动一部分逻辑电路,完成某种操作。1.2时序 1.2.1 时钟电路 M田51片内设有一个由反向放大器所构成的振荡电路,XTALI和XTAL2分别为振荡电路的输入端和输出端。时钟可以由内部方式产生或外部方式产生。采用内部方式时,在C1和C2引脚上接石英晶体和微调电容可以构成振荡器, 振荡频率的选择范围为1212MHZ在使用外部时钟时,XTAL2用来输入外部时钟信号,而XTALI接地。 1.2.2 时序 MGL5l单片机的一个执器周期由6个状态(s1s6)组成,每个状态

9、又持续2个接荡周期,分为P1和P2两个节拍。这样,一个机器周期由12个振荡周期组成。若采用12MHz的晶体振荡器,则每个机器周期为1us,每个状态周期为16us;在一数情况下,算术和逻辑操作发生在N期间,而内部寄存器到寄存器的传输发生在P2期间。对于单周期指令,当指令操作码读人指令寄存器时,使从S1P2开始执行指令。如果是双字节指令,则在同一机器周期的s4读人第二字节。若为单字节指令,则在51期间仍进行读,但所读入的字节操作码被忽略,且程序计数据也不加1。在加结束时完成指令操作。多数Mcs51指令周期为12个机器周期,只有乘法和除法指令需要两个以上机器周期的指令,它们需4个机器周期。 对于双字

10、节单机器指令,通常是在一个机器周期内从程序存储器中读人两个字节,但Movx指令例外,Movx指令是访问外部数据存储器的单字节双机器周期指令,在执行Movx指令期间,外部数据存储器被访问且被选通时跳过两次取指操作。下面是51单片机的振荡电路图: 图1-1振荡电路图1.3引脚极其功能MCS51系列单片机的40个引脚中有2个专用于主电源引脚,2个外接晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。下面按引脚功能分为4个部分叙述个引脚的功能。1.3.1 电源引脚Vcc和VssVcc(40脚):接+5V电源正端;Vss(20脚):接+5V电源正端。1.3.2 外接晶振引脚XTA

11、L1和XTAL2XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。1.3.3 控制信号或与其它电源复用引脚 控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。(A)RST/VPD(9脚):RST即为RESET

12、,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。(B)ALE/ P (30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低(C)PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数

13、据存储器期间,PESN信号将不出现。(D)EA/Vpp(31脚):EA为访问外部程序储器控制信号,低电平有效。当EA端保持高电平时,单片机访问片内程序存储器4KB(MS52子系列为8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源Vpp。1.3.4 输入/输出(I/O)引脚P0口、P1口、P2口及P3口(A).P0口(39脚22脚):P0.0P0.7统称为P0口。当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。

14、当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。它分时提供8位双向数据总线。对于片内含有EPROM的单片机,当EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。(B).P1口(1脚8脚):P1.0P1.7统称为P1口,可作为准双向I/O接口使用。对于MCS52子系列单片机,P1.0和P1.1还有第2功能:P1.0口用作定时器/计数器2的计数脉冲输入端T2;P1.1用作定时器/计数器2的外部控制端T2EX。对于EPROM编程和进行程序校验时,P0口接收输入的低8位地址。(C).P2口(21脚28脚):P2.0P2.7统称为P2口,一般可作为准双向I/O接

15、口。当接有外部程序存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于高8位地址总线送出高8位地址。对于EPROM编程和进行程序校验时,P2口接收输入的8位地址。(D).P3口(10脚17脚):P3.0P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。P3口的第2功能见表1-1引脚第2功能P3.0RXD(串行口输入端0)P3.1TXD(串行口输出端)P3.2INT0(部中断0请求输入端,低电平有效)P3.3INT1(中断1请求输入端,低电平有效)P3.4T0(时器/计数器0

16、计数脉冲端)P3.5T1(时器/计数器1数脉冲端)P3.6WR(部数据存储器写选通信号输出端,低电平有效)P3.7RD(部数据存储器读选通信号输出端,低电平有效) 表1-1第2功能表综上所述,MCS51系列单片机的引脚作用可归纳为以下两点:1).单片机功能多,引脚数少,因而许多引脚具有第2功能;2).单片机对外呈3总线形式,由P2、P0口组成16位地址总线;由P0口分时复用作为数据总线。89C51的管脚图 图1-2 89C51的管脚图第二章 水箱给水设备的系统构成2.1外部硬件结构水箱由两台给水泵机组、水箱和三只浮球开关组成,其系统结构如图2-1: 图2-1 系统结构图其中M1、M2为给水泵机

17、组,LG、LD、LDD分别为水位高、水位低、水位低低浮球开关,当水位高(大于90%)时,LG闭合,当水位低(小于75%)时,LD闭合,当水位低低(小于50%)时,LDD闭合。 水箱的控制器由8051系统构成。为避免电机的起停和电源波动时对电路的影响,输入输出均采用光电隔离。输出通过继电器,控制水泵机组的起停和报警,其电路图2-2:图2-2 起停和报警给水泵电机主控回路图:图2-3主控回路图2.2本系统采用8051单片机控制部分结构本系统采用8051单片机,引脚具体控制如下:P1口和P3口为输入输出检测信号和控制信号。下面是8051芯片引脚具体分配:P1.0:水位低低输入信号。(低0 高1)P1

18、.1:水位低输入信号。(低0 高1)P1.2:水位高输入信号。(高1,低0)P1.3:手动与自动转换输入信号。(手动1,自动0)P1.4:M1起动KM1控制输出信号。(手动1,自动0)P1.5:M2起动KM1控制输出信号。(手动1,自动0)P1.6:M1开关状态输入信号。(开0,关1)P1.7:M2开关状态输入信号。(开0,关1)P3.0:水位低低报警输出信号。P3.1:水位低报警输出信号。P3.2:水位高报警输出信号。P3.4:手动起动M1输入信号,低电频有效动作。P3.5:手动起动M2输入信号,低电频有效动作。P3.6:手动停M1输入信号,低电频有效动作。P3.7:手动停M2输入信号,低电

19、频有效动作。第三章 本系统的工作原理3.1工作原理当水箱水位低时,起动M1、M2给水,水位上升到90%,停M1。当水箱水位低低(小于50%)时,同时起动M1、M2,当水位上升到50%以上70%以下时,停M2,M1继续运行到水位上升到90%以上才停止工作。经过调试系统,测得以下数据:水位从50%-70%,两台泵运行需要约10分钟;水位从70%-90%,一台泵运行需要约15分钟。水箱的水位一般保持在70%-90%。报警控制如下:当水位高于90%的时候,由传感器经变送器发送信号,浮球LG闭合,系统水位高报警。当水位低于75%的时候,由传感器经变送器发送信号,浮球LD闭合,系统水位低报警。当水位低与5

20、0%的时候,由传感器经变送器发送信号,浮球LDD闭合,系统水位低低报警。手动/自动模式转换控制如下:全自动模式下,系统自动判断水位的状况,选择不同的工作状态。在手动的模式下,两台给水泵的运行控制可由人工操作。3.2 主程序框图 图3-1 主程序框图3.3 自动模式子程序:图3-2 自动模式子框图3.4 手动模式子程序: 图3-3 手动模式框图致谢本毕业论文是老师的精心指导下完成的。在整个课题的设计、编写过程中,王海峰老师和尹海昌老师给予了细致的指导和帮助,使我能够点面结合,设计过程环环相扣。在此,谨对他们致以衷心的感谢。同时也对本毕业论文做出认真审阅的老师们给以深深的敬意!参考文献:1林立,张

21、俊亮,刘得军.单片机原理及应用M.电子工业出版社2陶希平.模拟电子技术第二版 M.化学工业出版社3刘勇.数字电路M.机械工业出版社4陈忠.电子制作M.电子制作杂志社5杨志忠.数字电子技术M.高等教育出版社.6胡宴如.模拟电子技术M.高等教育出版社.7王秀珍,姜林.电子技术基础M.中国电力出版社8韩伟.数字电子技术及其应用M.国防工业出版社附录:本系统程序清单主程序:ORG 0000HAJMP MAINORG 0060HMAIN: MOV P1, #FFH ; P1 P3口初始化置1MOV P3,#FFHJNB P1.3 , AVT ; 若手动在自动位置,跳到自动模式子程序AJMP MEN ;否

22、则转到手动模式子程序ENDAUT: NOP(空命令)JNB P1.2 , LG ;水位高LGJB P1.1 LD , ;水位没低-LDCLR P3.1 ;水位低报警JB P1.0, LDD ;水位未低低-LDDCLR P3.0 ;水位低低报警JNB 3.1 P1.6, Y1 ;M1已启动Y1CLR P1.4 ;否则启动M1Y1:JNB P1.7 ,Y2 ; M2已启动-Y2 CLR P1.5 ;否则启动M2Y2:ACALL DELAY ;延时1分钟 AJMP AUT ;返回自动模式LDD: JNB P1.6 ,Y3 ; 单独运行M1(LDD水位LD)CLR P1.4Y3: JB P1.7 Y2

23、 SETB P1.5AJMP Y2LG:CLR P3.2 ;水位高报警LD:AJMP MAIN ;返回主程序手动控制子程序MEN:NOP JNB P1.1 , MAIN ;ACALL KEYCJNE A ,#FOH,NN ;AJMP MENNN:JNB ACC.4 ,HM1JNB ACC.5, HM2JNB ACC.6 ,DM1JNB ACC.7 ,DM2AJMP MENHM1: JNB P1.6 ,MENCLR P1.4AJMP MENHM2:JNBP1.7, MEN CLR P1.5AJMP MENDM1:JB P1.6, MENSETB P1.4AJMP MENDM2:JB P1.7,

24、MENSETB P1.5AJMP MENRET延时1S主程序T1M1: MOV R1, #F0HL4: MOV R2, #08HL1: MOV R3, #FAHL2: MOV R4, #FAHL1: DJNZ R4, L1DJNZ R3, L2DJNZ R2, L3DJNZ R1, L4RET延时6ms子程序T1M3: MOV R4, #12MM: MOV R5, #248DJN2 R5, $DJN2 R4, D3RET有无键合子程序:KEY:ACALL KS1 ;有无闭合JNZ LK1ACALL TIMAJMP KEY ;无键闭合返回LK1:ACALL TIMACALL TIMACALL KS1JNZ LK2ACALL TIMAJMP KEYLK2:RETKS1:MOV A , P3 ;扫描 ANL A , #FOH ;屏蔽低4位 RET系统电路示意图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号