2022年水箱单片机控制系统 .pdf
更多资料请访问电子天下 -收集整理论 文 设 计 说 明 书题目: 海丰热电公司 800立方米水箱单片机控制系统姓名:指导教师:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理摘要本单片机系统设计的目的是应用单片机控制技术,以8051单片机为核心控制庆丰热电公司的 800立方米的水箱的水位,并实现了报警和手动、自动切换功能。该系统操作方便、性能良好,比较符合电厂生产用水系统控制的需要。本文还详细的给出了相关的硬件框图和软件流程图,并编制了该汇编语言程序。关键词 : 单片机控制水位报警名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理目录摘目要 1 录 2 一、单片机的说明 3 1、8051单片机简介 3 2、单片机的时序 5 3、引脚极其功能 6 二、水箱给水设备系统的构成10 三、本系统 8051单片机控制部分 12 四、本系统的工作原理13 五、主程序框图14 六、本系统程序清单17 七、附录:本系统电路图21 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理一 8051 单片机系统说明1 8051单片机简介目前, 8051单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的语音接口,构成具有合成语音输出能力的综合应用系统,以增强人机对话的功能。89C51是Intel公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。每一个单片机包括:一个8位的微型处理器CPU;一个 256K的片内数据存储器RAM ;片内程序存储器ROM ;四个8位并行的 I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/ 记数器;五个中断源的中断控制系统;一个全双工UART 的串行 I/O口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率是12MHZ。以上各个部分通过内部总线相连接。下面简单介绍下其各个部分的功能。中央处理器 CPU是单片微型计算机的指挥、执行中心,由它读人用户程序,并逐条执行指令,它是由 8位算术逻辑运算部件 (简称ALu) 、定时控制部件,若干寄存器A、B、B5w、5P以及16位程序计数器 (Pc)和数据指针寄存器 (DM) 等主要部件组成。算术逻辑单元的硬件结构与典型微型机相似。它具有对8位信息进行 +、-、x、/ 四则运算和逻辑与、或、异或、取反、清“0”等运算,并具有判跳、转移、数据传送等功能,此外还提供存放中间结果及常用数据寄存器。控制器部件是由指令寄存器、程序计数器 Pc、定时与控制电路等组成的。指令寄存器中存放指令代码。枷执行指令时,从程序存储器中取来经译码器译码后,根据不同指令由定时与控制电路发出相应的控制信号,送到存储器、运算器或Io接口电路,完成指令功能。程序计数器 Pc 程序计数器 Pc用来存放下一条将要执行的指令,共16位可对以K字节的程序存储器直接寻址c指令执行结束后, Pc计数器自动增加,指向下一条要执行的指令地址。CPU功能,总的来说是以不同的方式,执行各种指令。不同的指令其功自略异。有的指令涉及到枷各寄存器之间的关系;有的指令涉及到单片机核心电路内部各功能部件的关名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理系;有的则与外部器件如外部程序存储器发生联系。事实上,cRJ是通过复杂的时序电路完成不同的指令功能。所谓cRJ的时序是指控制器控照指今功能发出一系列在时间上有一定次序的信号,控制和启动一部分逻辑电路,完成某种操作。2 2 时序1时钟电路M田51片内设有一个由反向放大器所构成的振荡电路,XTALI 和XTAL2 分别为振荡电路的输入端和输出端。时钟可以由内部方式产生或外部方式产生。采用内部方式时,在C1和C2引脚上接石英晶体和微调电容可以构成振荡器, 振荡频率的选择范围为 1212MHZ 在使用外部时钟时, XTAL2 用来输入外部时钟信号,而 XTALI 接地。2时序MGL5l 单片机的一个执器周期由 6个状态 (s1 s6) 组成,每个状态又持续 2 个接荡周期,分为 P1和P2两个节拍。这样,一个机器周期由12个振荡周期组成。若采用12MHz的晶体振荡器,则每个机器周期为1us,每个状态周期为 16us;在一数情况下,算术和逻辑操作发生在N期间,而内部寄存器到寄存器的传输发生在P2期间。对于单周期指令,当指令操作码读人指令寄存器时,使从S1P2 开始执行指令。如果是双字节指令,则在同一机器周期的s4读人第二字节。若为单字节指令,则在51期间仍进行读,但所读入的字节操作码被忽略,且程序计数据也不加1。在加结束时完成指令操作。多数Mcs 51 指令周期为 12个机器周期,只有乘法和除法指令需要两个以上机器周期的指令,它们需4个机器周期。对于双字节单机器指令,通常是在一个机器周期内从程序存储器中读人两个字节,但Movx指令例外,Movx指令是访问外部数据存储器的单字节双机器周期指令,在执行Movx 指令期间,外部数据存储器被访问且被选通时跳过两次取指操作。下面是51单片机的振荡电路图:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理3引脚极其功能MCS 51 系列单片机的 40个引脚中有 2个专用于主电源引脚, 2个外接晶振的引脚, 4个控制或与其它电源复用的引脚,以及32条输入输出 I/O引脚。下面按引脚功能分为 4个部分叙述个引脚的功能。1、电源引脚 Vcc 和 Vss Vcc(40脚):接 +5V电源正端;Vss(20脚):接 +5V电源正端。2、外接晶振引脚 XTAL1 和 XTAL2 XTAL1 (19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。XTAL2 (18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于 CHMOS芯片,该引脚悬空不接。3、控制信号或与其它电源复用引脚控制信号或与其它电源复用引脚有RST/VPD、ALE/P 、PSEN和EA/VPP等4种形式。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理(A)RST/VPD(9脚): RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部 RAM 供电,以保证 RAM 中的数据不丢失。(B)ALE/ P (30脚):当访问外部存储器时,ALE (允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的低(C)PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。(D)EA/Vpp (31脚): EA为访问外部程序储器控制信号,低电平有效。当EA 端保持高电平时,单片机访问片内程序存储器4KB(MS 52 子系列为 8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在 EPROM 编程期间,该引脚用于接21V的编程电源 Vpp。4.输入/输出( I/O)引脚P0口、P1口、P2口及P3口(A).P0口(39脚22脚): P0.0P0.7统称为 P0口。当不接外部存储器与不扩展I/O接口时,它可作为准双向 8位输入 /输出接口。当接有外部程序存储器或扩展I/O口时, P0口为地址 /数据分时复用口。它分时提供8位双向数据总线。对于片内含有 EPROM的单片机,当 EPROM编程时,从 P0口输入指令字节,而当检验程序时,则输出指令字节。(B).P1口(1脚8脚): P1.0P1.7统称为 P1口,可作为准双向 I/O接口使用。对于MCS 52 子系列单片机, 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接口。当接有外部程序存储器或扩展I/O接口且寻址范围超过 256个字节时, P2口用于高名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理8位地址总线送出高 8位地址。对于 EPROM编程和进行程序校验时,P2口接收输入的8位地址。(D).P3口(10脚 17脚): P3.0P3.7统称为 P3口。它为双功能口,可以作为一般的准双向 I/O接口,也可以将每1位用于第 2功能,而且 P3口的每一条引脚均可独立定义为第 1功能的输入输出或第 2功能。 P3口的第 2功能见下表单片机 P3.0管脚含义引脚P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第2功能RXD(串行口输入端 0)TXD (串行口输出端)INT0(部中断 0请求输入端,低电平有效)INT1(中断 1请求输入端,低电平有效)T0(时器 /计数器 0计数脉冲端)T1(时器 /计数器 1数脉冲端)WR(部数据存储器写选通信号输出端,低电平有效)RD(部数据存储器读选通信号输出端,低电平有效)综上所述, MCS 51 系列单片机的引脚作用可归纳为以下两点:1).单片机功能多,引脚数少,因而许多引脚具有第2功能;2).单片机对外呈 3总线形式,由 P2、P0口组成 16位地址总线;由 P0口分时复用作为数据总线。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理附:89C51的管脚如图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理二 800立方米水箱给水设备系统的构成800立方米由两台给水泵机组、水箱和三只浮球开关组成,其系统结构如图:其中M1、M2为给水泵机组, LG、LD、LDD 分别为水位高、水位低、水位低低浮球开关,当水位高(大于 90开度)时, LG闭合,当水位低(小于 75开度)时, LD 闭合,当水位低低(小于50开度)时, LDD闭合。 800 立方米水箱的控制器由 8051系统构成。为避免电机的起停和电源波动时对电路的影响,输入输出均采用光电隔离。输出通过继电器,控制水泵机组的起停和报警,其电路图如下:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理给水泵电机主控回路图如下:三本系统 8051单片机控制部分结构本系统采用 8051单片机,引脚具体控制如下:P1口和P3口为输入输出检测信号和控制信号。下面是8051芯片引脚具体分配:P1.0:水位低低输入信号。(低0 高1)P1.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)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理P3.0:水位低低报警输出信号。P3.1:水位低报警输出信号。P3.2:水位高报警输出信号。P3.4:手动起动 M1输入信号,低电频有效动作。P3.5:手动起动 M2输入信号,低电频有效动作。P3.6:手动停 M1输入信号,低电频有效动作。P3.7:手动停 M2输入信号,低电频有效动作。四本系统的工作原理当水箱水位低时,起动 M1、M2给水,水位上升到 90%,停M1。当水箱水位低低(小于 50%)时,同时起动 M1、M2,当水位上升到 50%以上70%以下时,停 M2,M1继续运行到水位上升到90%以上才停止工作。经过调试系统,测得以下数据:水位从 50%-70%,两台泵运行需要约 10分钟;水位从 70%-90%,一台泵运行需要约15分钟。水箱的水位一般保持在70%-90%。报警控制如下:当水位高与 90开度的时候,由传感器经变送器发送信号,LG闭合,系统水位高报警。当水位低于75开度的时候,由传感器经变送器发送信号,LD 闭合,系统水位低报警。当水位低与50开度的时候,由传感器经变送器发送信号,LDD 闭合,系统水位低低报警。手动/自动模式转换控制如下:全自动模式下,系统自动判断水位的状况,选择不同的工作状态。在手动的模式下,两台给水泵的运行控制可由人工自己操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理五主程序框图1 主程序框图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理2 自动模式子程序:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理3 手动模式子程序:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 20 页 - - - - - - - - - 主程序:ORG 0000H AJMP MAIN ORG 0060H 更多资料请访问电子天下 -收集整理六本系统程序清单MAIN: MOV P1, #FFH ; P1 P3口初始化置 1 MOV P3 ,#FFH JNB P1.3 , AVT ;若手动在自动位置,跳到自动模式子程序AJMP MEN ;否则转到手动模式子程序END AUT : NOP (空命令)JNB P1.2 , LG ;水位高 LG JB P1.1 LD ,;水位没低 -LD CLR P3.1 ;水位低报警JB P1.0, LDD ;水位未低低 -LDD CLR P3.0 ;水位低低报警JNB 3.1 P1.6, Y1 ;M1已启动 Y1 CLR P1.4 ;否则启动 M1 Y1:JNB P1.7 ,Y2 ; M2 已启动-Y2 CLR P1.5 ;否则启动 M2 Y2:ACALL DELAY ;延时 1分钟AJMP AUT ;返回自动模式LDD: JNB P1.6 ,Y3 ; 单独运行 M1(LDD 水位 LD)CLR P1.4 Y3: JB P1.7 Y2 SETB P1.5 AJMP Y2 LG:CLR P3.2 ;水位高报警名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理LD:AJMP MAIN ;返回主程序手动控制子程序MEN:NOP JNB P1.1 , MAIN ; ACALL KEY CJNE A ,#FOH,NN ; AJMP MEN NN:JNB ACC.4 ,HM1 JNB ACC.5, HM2 JNB ACC.6 ,DM1 JNB ACC.7 ,DM2 AJMP MEN HM1: JNB P1.6 ,MEN CLR P1.4 AJMP MEN HM2:JNBP1.7, MEN CLR P1.5 AJMP MEN DM1:JB P1.6, MEN SETB P1.4 AJMP MEN DM2:JB P1.7, MEN SETB P1.5 AJMP MEN RET 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理延时1S主程序T1M1: MOV R1, #F0H L4: MOV R2, #08H L1: MOV R3, #FAH L2: MOV R4, #FAH L1: DJNZ R4, L1 DJNZ R3, L2 DJNZ R2, L3 DJNZ R1, L4 RET 延时6ms子程序T1M3: MOV R4, #12 MM: MOV R5, #248 DJN2 R5, $ DJN2 R4, D3 RET 有无键合子程序:KEY :ACALL KS1 ;有无闭合JNZ LK1 ACALL TIM AJMP KEY ;无键闭合返回LK1 :ACALL TIM ACALL TIM ACALL KS1 JNZ LK2 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理ACALL TIM AJMP KEY LK2 :RET KS1:MOV A , P3 ;扫描ANL A , #FOH ;屏蔽低 4位RET 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 20 页 - - - - - - - - - 更多资料请访问电子天下 -收集整理七系统电路示意图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 20 页 - - - - - - - - -