




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、XXXX 大学 本科生毕业论文(设计) 题 目: 基于单片机的液位控系统 学生姓名: XXX 指导教师: XXX 二级院系: XXXXXXXXXX 专业班级: XXXXXXXXX 完成时间: 2011 年 X 月 XX 日 摘要: 随着电子技术的迅速发展,以单片机控制的智能型控制器广泛应用于电子 产品中。而液位控制是现代工业业中常见的参数,有着直接观察、容易测量的 优点,本系统采用 AT89S52 单片机为主控制器,设计一个对供水箱水位进行监 控的系统。根据监控对象的特征,要求实时检测水箱的液位高度,并与开始预 设定值作比较,由单片机控制继电器的开断进行液位的调整,最终达到液位的 预设定值。检
2、测值若高于上限设定值,要求报警,开启水位控制电路,控制水 泵开始抽水水,检测液位若低于下限设定值,要求报警,开启水位控制电路, 控制水泵开始上水。现场实时显示测量值,从而实现对水箱液位的监控。比较 适合用于一般的液位控制,如自来水厂蓄水槽、污水处理厂的污水槽等都需要 液位检测装置来检测液位。 关键字:AT89S52 液位监测 数码管显示 目 录 摘要:.2 第一章 绪论.5 1.11.1 课题背景课题背景 .5 1.21.2 研究目的和意义研究目的和意义 .5 1.31.3 基本章节安排基本章节安排 .6 第二章 总体方案设计.7 2.12.1 系统总体结构规划系统总体结构规划 .7 2.22
3、.2 单片机的选择单片机的选择 .7 2.32.3 显示方式的选择显示方式的选择 .8 第第 3 3 章章 中央控制器中央控制器 AT89S52AT89S52 及其外围电路的设计与分析及其外围电路的设计与分析 .9 第第 4 4 章章 系统硬件设计系统硬件设计.16 4.1 系统主电路图.16 4.24.2 显示电路设计显示电路设计 .16 4.34.3 液位采集电路设计液位采集电路设计 .18 4.54.5 控制部分电路设计控制部分电路设计 .19 第第 5 5 章章 系统软件设计系统软件设计.20 5 51 1 软件设计应用环境简介软件设计应用环境简介 .20 5 52 2 系统程序设计流
4、程图系统程序设计流程图 .22 5 53 3 总体程序设计总体程序设计 .22 5.55.5 液位采集程序设计液位采集程序设计 .24 第第 6 6 章章 系统调试系统调试.25 6.16.1 系统原理图设计系统原理图设计 .25 6 62 2 系统测试方法系统测试方法 .25 6.36.3 开始测试开始测试 .26 6.46.4 系统功能测试系统功能测试 .27 总 结.28 参考文献.30 附录附录.31 第一章 绪论 1.11.1 课题背景课题背景 现如今自动化、信息化程度越来越高,单片机的应用领域也就越来越广, 成为人们生活不可或缺的一部分。随着社会的发展、科技的进步以及人们生活 水平
5、的逐步提高,各种方便于生活的自动控制系统开始进入了人们的生活,以 单片机为核心的自动门系统就是其中之一。同时也标志了自动控制领域成为了 数字化时代的一员。它实用性强,功能齐全,技术先进,这是科技进步的成果。 它更让人类懂得,数字时代的发展将改变人类的生活,将加快科学技术的发展。 经济飞速发展的中国,高楼耸立的大都市,自动门已经是随处可见,在各大厦、 宾馆、酒店、银行、商场、医院、写字楼等场所,自动门更是得到大范围的普 及使用。自动门不但能给我们带来人员进出方便、节约空调能源、防风、防尘、 降低噪音等好处,更令我们的建筑增添了不少高贵典雅的气息。 1.21.2 研究目的和意义研究目的和意义 我国
6、水资源严重短缺同时又存在严重浪费现象,两方面因素制约了国民经 济 的可持续发展,使社会经济建设受到巨大挑战。提高生产、生活用水水价以及 对大型工、矿企业强制安装中水处理设备,都是国家不得己而为之的重大节水 举措,然而由于变送器在水位控制系统中普遍存在着时漂、温漂、精确度、抗 干扰能力、稳定性等一系列问题,尤其在恶劣气候条件下的电闪、雷击,易造 成水位交送器的故障频发,使监控设施失控,形成跑、冒水现象,进一步加剧 了宝贵水资源的大量浪费, ,仅水资源浪费一项每年就占到全国用水量的 40%以 上,新型自动水位测控系统的设计研制工作正是在这一契机下应运而生的。 1.31.3 基本章节安排基本章节安排
7、 本设计通过分析液位控制系统的发展和现状来规划液位控制的智能功能, 从而对电动液位控制器进行设计。采用直流电机作为执行元件。89S52单片机作 为控制芯片,通过液位采集电路,采集液位信息,通过数码管显示电路,实时 显示水位情况,根据水位的情况实现自动抽排水功能,最终实现了液位控制器 的多项智能项目。 主要章节分为: (1)绪论:介绍设计目标国内外的发展现状和研究意义目的,设计的基本 内容和本文的章节安排。 (2)总体设计方案:给出了液压控制器的器的总体方案设想,智能项目, 和设计结构规划。 (3)单片机最小系统介绍:中央控制器 AT89S52及其外围电路的设计与分 析(4)系统硬件设计:介绍各
8、部分模块电路的功能 (5)系统软件设计:主要介绍了各项功能的设计流程。 (6)总结与展望 第二章 总体方案设计 2.12.1 系统总体结构规划系统总体结构规划 液位控制器的总体结构框图如下图 2-1 所示。 液位采集电路信号调理电路 单片机 指示灯显示电路电机模拟 图2-1液位控制器机构框图 由液位判断电路来实现对液位的实时检测,经过信号调理电路的处理,转 换后的信号由单片机控制器,并通过数码管显示水位,来实现继电器的吸合与断开。 来模拟电机的抽放水功能。 2.22.2 单片机的选择单片机的选择 20 世纪 80 年代以来,单片机的发展非常迅速,就通用单片机而言,世界 上一些著名的计算机厂家已
9、投入市场的产品就有 50 多个系列,数百个品种。尽 管单片机的品种很多,但是在我国使用的最多的是 INTER 公司的 MCS-51 系列单 片机,直到现在 MCS-51 系列单片机仍不失为主流系列。在最近的若干年仍是工 业检测控制的主角。 AT89S52 采用 0.35 新工艺,成本降低,而且将功能提升,增加了竞争力。 89SXX 可以向下兼容 89CXX 等 51 系列芯片。AT89S51/LS51 单片机是低功耗的、 具有 4KB 在线课编程 Flash 存储器的单片机。它与通用 80C51 系列单片机的指 令系统和引脚兼容。片内的 Flash 可允许在线重新编程,也可使用非易失性存 储器
10、编程。他将通用 CPU 和在线可编程 Flash 集成在一个芯片上,形成了功能 强大、使用灵活和具有较高性能性价比的微控制器2。 2.32.3 显示方式的选择显示方式的选择 该系统可以使用液晶来显示液位信息,也可以采用数码管显示,但考虑到就 显示一个液位,用液晶会增大系统的体积,还会增加成本。采用数码管显示亮 度高,易于观察,成本低,故选用数码管显示。 第第 3 3 章章 中央控制器中央控制器 AT89S52AT89S52 及其外围电路的设计与分析及其外围电路的设计与分析 3.13.1 芯片芯片 AT89S52AT89S52 的性能及其参数的分析的性能及其参数的分析 Vcc P10 P12 P
11、11 RST P15 P17 P16 P13 P14 P07 P01 P00 P02 P03 P05 P04 P06 P37 P31 P30 P32 P33 P35 P34 P36 ALE EA/VPP P27 P21 P20 P22 P23 P25 P24 P26 PSEN XTAL1 XTAL2 GND 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 23 22 21 26 25 24 29 28 27 32 31 30 35 34 33 38 37 36 39 (AD0) (AD1) (AD2) (AD3) (AD4) (AD5
12、) (AD6) (AD7) (AD15) (AD14) (AD13) (AD12) (AD11) (AD10) (AD9) (AD8) (RXD) (INT0) (INT1) (T0) (T1) (WR) (RD) (TXD) (T2) (T2EX) 图 3-1 AT89S51 单片机引脚图 AT89S52 是 51 系列单片机的一个型号,它是 ATMEL 公司生产的。 AT89S52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可 反复擦写的 Flash 只读程序存储器和 256 bytes 的随机存取数据存储器(RAM) , 器件采用 ATMEL 公司的高密度
13、、非易失性存储技术生产,兼容标准 MCS-51 指令 系统,片内置通用 8 位中央处理器和 Flash 存储单元,功能强大的 AT89S51 单 片机可为您提供许多较复杂系统控制应用场合。 AT89S52 有 40 个引脚,32 个外部双向输入/输出(I/O)端口,同时内含 2 个外中断口,3 个 16 位可编程定时计数器,2 个全双工串行通信口,2 个读写口 线,AT89S51 可以按照常规方法进行编程,也可以在线编程。其将通用的微处 理器和 Flash 存储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地 降低开发成本。 AT89S52 为 40 脚双列直插封装的 8 位通用微
14、处理器如图 3-3 所示,采用工 业标准的 C52 内核,在内部功能及管脚排布上与通用的 8xc51 相同,其主要用 于会聚调整时的功能控制。功能包括对会聚主 IC 内部寄存器、数据 RAM 及外部 接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号 IR 的接收解码及与主板 CPU 通信等5。 AT89S52 时钟有两种方式产生,即内部方式和外部方式,如下图 3-4 a 所 示。AT89S52 中有一个构成内部震荡器的高增益反向放大器,引脚 XTAL1 和 XTAL2 分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外 石英或陶 瓷震荡器一起构成自激震荡器震荡电路
15、。外接石英晶体(或陶瓷震荡 器)及电容 C1、C2 接在放大器的震荡回路中构成并联震荡电路。对外接电容 C1、C2 虽然没有非常严格的要求,但电容的大小会轻微影响震荡频率的高低、 震荡工作的稳定性、起震的难易程序及温度稳定性, 。还可以采用外部时钟,采 用外部时钟,如图 3-4 b 所示。在这种情况下,外部时钟脉冲接到 XTAL1 端, 既内部时钟发生器的输入端,XTAL2 悬空。由于外部时钟信号是通过一个 2 分 频的触发器后作为内部时钟信号的所以外部时钟的占空比没有特殊要求,但最 小高电平持续的时间和最大低电平持续的时间应符合技术条件的要求5。 30p 30p XTAL1 XTAL1 GN
16、D XTAL1 XTAL1 GND NC 外部振 荡信号 输入 C1 C2 a 内部震荡电路 b 外部震荡电路 图 3-2 时钟电路图 3.23.2 单片机时钟电路的设计单片机时钟电路的设计 电路中的晶振即石英晶体震荡器。由于石英晶体震荡器具有非常好的频率 稳定性和抗外界干扰的能力,所以,石英晶体震荡器是用来产生基准频率的。 通过基准频率来控制电路中的频率的准确性。同时,它还可以产生振荡电流, 向单片机发出时钟信号。 图 3-3 是单片机的晶振电路。电路中的电容 C1 和 C2 的典型值通常选择为 30PF 左右,该电容的大小会影响振荡电路频率的高低、振荡器的稳定性和起振 的快速性。晶体振荡频
17、率的范围通常在 1.212MHz。晶体的频率越高,系统的 时钟频率越快,单片机的运行速度越快。AT89S51 常选择振荡频率 12MHz 的石 英晶体。 VccP10 P12 P11 RST P15 P17 P16 P13 P14 P07 P01 P00 P02 P03 P05 P04 P06 P37 P31 P30 P32 P33 P35 P34 P36 ALE EA/VPP P27 P21 P20 P22 P23 P25 P24 P26 PSEN XTAL1 XTAL2 GND 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 23
18、 22 21 26 25 24 29 28 27 32 31 30 35 34 33 38 37 36 39 30p 30p C1 C2 图 3-3 单片机晶振电路图 3.33.3 单片机复位电路的设计单片机复位电路的设计 复位是单片机的初始化操作,只需要给 AT89S51 的复位引脚 RST 加上大于 2 个机器周期(即 24 个时钟振荡周期)的高电平就可以使 AT89S51 复位。复位 时,单片机初始化为 0000H,从 0000H 单元开始执行程序。除了进入系统的正 常初始化之外,当程序运行错误(如程序跑飞)或操作错误使系统处于锁死状 态时,也需要复位键使 RST 脚为高电平,使 AT8
19、9S52 摆脱“跑飞”或“死锁” 状态而重新启动。图 3-4 是复位电路图。 Vcc P10 P12 P11 RST P15 P17 P16 P13 P14 P07 P01 P00 P02 P03 P05 P04 P06 P37 P31 P30 P32 P33 P35 P34 P36 ALE EA/VPP P27 P21 P20 P22 P23 P25 P24 P26 PSEN XTAL1 XTAL2 GND 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 23 22 21 26 25 24 29 28 27 32 31 30 35
20、34 33 38 37 36 39 10uf 10k 图 3-4 复位电路图 3.43.4 单片机复位后的状态分析单片机复位后的状态分析 表 3-1 特殊功能寄存器与初始状态表 特殊功能寄存器初始状态特殊功能寄存器初始状态 A00HTMOD00H B00HTCON00H PSW00HTH000H SP07HTL000H DPL00HTH100H DPH00HTL100H P0P3FFHSBUF不定 IP*00000BSCON00H IE0*00000BPCON0*B 说明:表中符号*为随机状态。 单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器 PC0000H,这表明程序从 000
21、0H 地址单元开始执行。单片机冷启动后,片内 RAM 为随机值,运行中的复位操作不改变片内 RAM 区中的内容,21 个特殊功能 寄存器复位后的状态为确定值,见上表 3-1 所示。 系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件 状态下。51 单片机的复位是由 RESET 引脚来控制的,此引脚与高电平相接超过 24 个振荡周期后,51 单片机即进入芯片内部复位状态,而且一直在此状态下等 待,直到 RESET 引脚转为低电平后,才检查 EA 引脚是高电平或低电平,若为高 电平则执行芯片内部的程序代码,若为低电平便会执行外部程序5。 51 单片机在系统复位时,将其内部的一些重要寄
22、存器设置为特定的值,内 部 RAM 内部的数据则不变。 3.53.5 电源电路电源电路 电源是提供电压的装置。把其他形式的能转换成电能的装置叫做电源。电 源是向电子设备提供功率的装置,也称电源供应器,它提供计算机中所有部件 所需要的电能。电源功率的大小,电流和电压是否稳定,将直接影响计算机的 工作性能和使用寿命。有条件的可以使用电源模块来为系统供电。 由于该系统中的步进电机要求用 12V 电源供电,而单片机的需要 5V 供电, 所以需要加个稳压芯片这里采用 LM7805 进行稳压处理。把 12V 稳降至 5V 来供 给单片机及各芯片的使用。经测试 12V 完全满足各器件的运行要求。 图 3-5
23、 三端集成稳压器 7805 内部结构 此设计的电源电路是由 7805 集成稳压器,桥式整流,滤波电容及电源指示 灯组成的。 电源电路的核心元件是 7805,其内部结构如图 3-5 所示。 (1)调整管 调整管接在输入端与输出端之间,当电网电压或负载电流波动时,调整自 身的集-射压降使输出电压保持不变。在 7805 三端集成稳压电路中,调整管由 调整管 放大 电路 保护 电路 采 样 电 路 基 准 电 源 启 动 电 路 + + - U0 UI 两个三极管组成的复合管充当,这种结构只要求放大电路用较小的电流即可驱 动调整管发射极回路中较大的输出电流,而且提高了调整管的输入电阻。 (2)放大电路
24、 放大电路将基准电压与从输出端得到的采样电压进行比较,然后再放大并 送到调整管的基极。放大倍数愈大,则稳定性能愈好。在 7805 三端集成稳压器 中,放大管也是复合管,电路组态为共射接法,并采用有源负载,可以获得较 高的电压放大倍数。 (3)基准电源 基准电压的稳定性将直接影响稳压电路输出电压的稳定性。在 7805 中,采 用一种能带间隙式基准源,这种基准源具有低噪声,低温漂的特点,在单片式 大电流集成稳压器中被广泛应用。 (4)采样电路 采样电路由两个分压电阻组成,它将输出电压变化量的一部分送到放大电 路的输入端。 (5)启动电路 启动电路的作用是在刚接通直流输入电压时,使调整管,放大电路和
25、基准电 源等建立起各自的工作电流,而当稳压电路正常工作时启动电路被断开,以免 影响稳压电路的性能。 (6)保护电路 在 7805 中,已将三种保护电路集成在芯片内部,它们是限流保护电路,过 热保护电路和过压保护电路6。 5.6k 7805 100uf 100uf 104 输入 输出 1 2 3 图 3-6 电源电路 电源电路如图 3-6 所示,此电源电路能输出稳定的+5V 电压,可以给整机 电路上电,所以在电路中起到至关重要的作用。其中 7805 三端集成稳压器的 1 脚为输入,3 脚为输出,2 脚为接地。作用是将由桥式整流电路,整流滤波后得 到的直流输入电压转变成稳定的直流+5V 输出电压,
26、为了改善纹波电压,常在 输入端接入电容 CJ3,我所选用的电容容量为 100uF。同时,在输出端接上电容 CJ2,以改善负载的瞬态响应,CJ2 的容量为 100uF。两个电容应直接接在稳压 器的引脚处。在稳压管的输入端还要接二极管,方向如图 3-8 所示,起到对 7805 集成稳压器的一种保护作用。 第第 4 4 章章 系统硬件设计系统硬件设计 4.1 系统主电路图 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 R S T 9 P3.0/R xD 10 P3.1/TxD 11 P3.2/INT0 12 P3.3/INT1 13
27、P3.4/T0 14 P3.5/T1 15 P3.6/W R 16 P3.7/R D 17 XTAL2 18 XTAL1 19 GND 20 P2.0 21 P2.1 22 P2.2 23 P2.3 24 P2.4 25 P2.5 26 P2.6 27 P2.7 28 PS EN 29 ALE 30 EA/VPP 31 P0.7 32 P0.6 33 P0.5 34 P0.4 35 P0.3 36 P0.2 37 P0.1 38 P0.0 39 VC C 40 U3 89S 52 VC C GND Y1 C 4 30P C 5 30P GND S 1 C 3 10uF R 21 10K GND
28、 VC C P00 P01 P02 P03 P04 P05 P06 P07 1 2 J1 2H VC C GND 1 2 3 4 5 6 7 8 9 P1 VC C P00 P01 P02 P03 P04 P05 P06 P07 A B C D E F G DP R 1 1K L1 R S TR S T C LK EOC S T OE P23 P27 P34 P35 P36 B 2 C 2P37 123 456 789 101112 E D DP C G G4 B G3 G2 F A G1 S HU1 R 14 1K R 15 1K R 16 1K R 17 1K VC C Q5 Q6Q7Q8
29、 G1G2G3G4 G1G2G3A CDE F GDP B G4 1 1 2 2 3 3 4 4 J2 4h A1 B 1 C 1 VC C A2 ALE R 5 10K R 2 1K R 4 1K Q1 VC C GND A1 B 1C 1 A2B 2C 2 R 3 1K R 7 10K R 6 10K Q3Q2 1B 1 2B 2 3B 3 4B 4 5B 5 6B 6 7B 7 E 8 C OM 9 7C 10 6C 11 5C 12 4C 13 3C 14 2C 15 1C 16 U2 uln2003 GND 47U C 1 104 C 2 VC C A 1 B 2 C 3 D 4 V
30、 5 V 6 四 U1 *A2 B 2 C 2 D2 VC C GND P24 P25 P26 P27P24P25P26 P10 P11 P12 P13 P10 P11 P12 P13 图 4.1 系统总电路图 4.2 显示电路设计 本设计中压力大小采用 4 位 LED 数码管显示。在单片机系统中,通常用 LED 数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用 电压低、寿命长的特点,因此使用非常广泛。八段 LED 显示器由 8 个发光二极 管组成。其中 7 个发光二极管构成字型“8”的各个笔画段,另一个小数点为 dp 发光二极管。LED 显示器有两种不同的形式:一种是发光二极
31、管的阳极都连 在一起的,称之为共阳极 LED 显示器;另一种是发光二极管的阴极都连在一起 的,称之为共阴极 LED 显示器。如图 4.2 所示。本次设计采用共阳极极接法。 LED 显示方式有动态显示和静态显示两种方式。本系统采用动态扫描显示接 口电路,动态显示接口电路是把所有显示器的 8 个笔划段 a-h 同名端连在一起, 而每一个显示器的公共极 COM 各自独立地受 I/O 线控制。CPU 向字段输出口送 出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取 决于 COM 端。也就是说我们可以采用分时的方法,轮流控制各个显示器的 COM 端,使各个显示器轮流点亮。在轮流点亮扫
32、描过程中,每位显示器的点亮时间 是极为短暂的(约 1ms) ,由于人的视觉暂留现象及发光二极管的余辉效应,尽 管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就 是一组稳定的显示数据,不会有闪烁感。 12345 109876 A B C D E F G DP AGFB EDC DP GND GND A)外形 AABBCDEFGDPCDEFGDP GND+5V B)共阳接法C)共阴接法 图 4.2 七(八)段 LED 显示器 本设计 P2.0、P2.1、P2.2、P2.3 信号一起组成位选通的位选信号, P0.0P0.7 信号一起组成段码选通的段选信号,通过软件编程,先把所要显
33、示 的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个 LED,逐步完成四个 LED 的显示。 由于采用 4 位共阳数码管。用单片机吸收电流驱动,列扫描驱动使用三极管, 按每段 6mA 电流算,全显示字型“8”时,每个数码管需 6mA8=48mA。由于四 位数码管的驱动电流相同,4 组需 192mA,因此设计中采用功率三极管 S9012 驱 动。由于单片机每个段码输出口需吸收 48mA 电流,因此在电路设计中要在 P0 口加一个上拉电阻。其显示驱动电路如图 4.3 所示。 1 2 3 4 5 6 7 8 9 P1 VC C P00 P01 P02 P03 P04 P05 P06
34、P07 A B C D E F G DP 123 456 789 101112 E D DP C G G4 B G3 G2 F A G1 S HU1 R 14 1K R 15 1K R 16 1K R 17 1K VC C Q5 Q6Q7Q8 G1G2G3G4 G1G2G3A CDE F GDP B G4 P27P24P25P26 图 4.3 显示电路 4.3 液位采集电路设计 1 1 2 2 3 3 4 4 J2 4h A1 B 1 C 1 VC C R 5 10K R 2 1K R 4 1K Q1 VC C GND A1 B 1C 1 A2B 2C 2 R 3 1K R 7 10K R 6
35、 10K Q3Q2 图 4.4 液位采集电路 液位检测电路的的检测原理,首先先将一根 VCC 线放到水底如图 4.4 所示,然 后将 A、B、C 三根线分别放入水中,当水位到 A 点时 A1 为高电平,B1 和 C1 低 电平,三极管导通 A2 变为高电平,此时继电器动作抽水并伴随报警声,当水位 到达 B 点时,此时 A1 和 B1 为高电平,C1 为低电平,A2,B2,都为高电平,此 时状态良好,当水位到 C 点时,此时 A1、B1、C1 都为高电平,A2、B2、C2 都 为低电平继电器动作,电机放水并伴随报警声。 4.54.5 控制部分电路设计控制部分电路设计 控制驱动电路主要电动机、继电
36、器及相应的元件构成,它根据液位检 测电路的实际需要控制电机的启动、停止,从而能自动地控制液位的高度。 1B 1 2B 2 3B 3 4B 4 5B 5 6B 6 7B 7 E 8 C OM 9 7C 10 6C 11 5C 12 4C 13 3C 14 2C 15 1C 16 U2 uln2003 GND 47U C 1 104 C 2 VC C A 1 B 2 C 3 D 4 V 5 V 6 四 U1 *A2 B 2 C 2 D2 VC C GND P10 P11 P12 P13 第第 5 5 章章 系统软件设计系统软件设计 该系统硬件完全,但系统的运算与控制必须靠软件支持,系统硬件组态完后
37、,根据 I/O 地址分配和功能要求便可以进行软件编程。软件编程是系统完全控制的一个重要部分。 系统软件程序主要完成初始化工作,输入输出控制,子程序主要完成数据采集处理的功能 包括采集的液位数据与给定的液位值的比较,是否需要报警,以及处理完成显示部分与调 节阀的信号输出。 在该系统的软件部分的设计中,第一部分主要是对流程图的介绍,其中包括了对谁位 的检测,对水泵的控制和开关,以及水泵是否正常工作的报警。通过对水体液位进行的简 易方便的操纵,可以准确得控制水泵进行添加水或放水以适应工作的需要,第二部分是系 统工作编程内容,由于全部编程比较多,只取重要的水位检测主程序段和部分控制程序。 5 51 1
38、 软件设计应用环境简介软件设计应用环境简介 Keil C51 的 V8. xx 是目前世界上最好的 51 单片机的汇编和 C 语言的开发工具。 它支持汇编、C 语言以及混合编程,同时具备强大的软件仿真和硬件仿真功能。 在此次设计中采用开发环境的正是此项。 1、创建项目:执行Project|NewVision Project菜单命令,将新创建一 个项目。为项目建一个单独的文件夹,然后选择子文件夹并键入项目的名称。 在项目创建之前,需要为新建的项目选择一个 CPU。在命名项目名称后,弹出 的对话框,其中显示的是器件数据库,用户只要选择所需要的 MCU 就可以了。 选择 AT89S52 之后,右边一
39、栏是对这个单片机的基本的说明,然后单击确定 按钮。2、添加配置启动代码:启动文件 STARTUP.C 中包含了目标启动代码,可 在每个 project 中加入这个文件。 3、项目设置:Vision 3 允许用户为目标硬件设置选项,可以通过工具条图 标打开,也可以用鼠标右击项目窗口中的 Files 标签页中的 Target1,在右键 菜单中选择Options for Targe1命令: Output:定义 Keil 工具的输出文件,并定义生成处理后的执行用户程序; Listing:定义 Keil 工具输出的所有列表文件; C51:设置 C51 编译器的特别工具选项; A51:设置汇编器的特殊工具
40、选项; BL51 Locate:定义不同类型的存储器和存储器的不同段位置; BL51 Misc:其他的与连接器相关的设置,如警告或存储器指示; Debug:Vision 3 的 Debugger 设置; Utilities:文件及其 Group 的特别选项。 4、Target 标签:单击 Target 标签,其中各参数设置如下: 1) Xtal(MHz):设置单片机的工作的频率,默认值是 24.0MHz。 2) Use On-chip ROM(0 x00 x1FFF): Flash ROM。单片机的 EA 引脚接高电平, 则一定需要选中这个选项。 3) Memory Model:变量存储空间。
41、 5、Output 标签: 1) Select Folder for Objects:选择编译之后的目标文件存储在哪个目录。 2) Name of Executable:设置生成的目标文件的名字。 3) Create Executable:生成 omf 以及 hex 文件。 4) Create Hex File:要生成 hex 文件一定要选中该选项。 5) Create Library:生成 lib 库文件。 6、Listing 标签:Keil C51 在编译之后除了声称目标文件之外,还生成 *.lst、*.m51 的文件。用户可以在 Listing 标签中设置*.lst、*.m51 文件的各
42、 种选项。 7、C51 标签:用户通过 C51 标签来设置 C51 编译器的特别的工具选项。 8、A51 标签:A51 标签用来设置汇编器的特别工具选项,如宏处理和条件汇编 等。 9、BL51 Locate 标签:BL51 是具有代码分段功能的连接器/重定位器,它组合 一个或多个目标模块成一个 MCS-51 的执行程序。此连接器处理外部和全局数据, 并将可重定位的段分配到固定的地址上。连接器自动选择适当的运行库并连接 那些用到的模块。也可以在命令行上输入相应的目标模块的名字的组合来运行 本连接器。 10、BL51 Misc 标签:Misc 标签是对 BL51 Locate 标签的补充设置。 1
43、1、Debug 标签:该标签对 Vision 3 的调试器进行设置。 12、项目编译:项目一旦设置完成,就可以开始编译。单击调试工具条上的图 标,编译项目中所有的源文件并生成应用。当应用中有语法错误时,Vision 3 将在 Output Window 的 Build 标签页显示这些错误和告警信息。双击一个信 息将打开此信息对应的文件并定位到语法错误处。在编译项目时,会在输出窗 口中出现错误信息,单击其中一条错误信息,将在源代码窗口中出现错误的地 方出现一个小箭头。 13、列表文件(C 语言):如果在对话框中选中了 C Compiler Listing 选项下 的各种复选框和 Assemble
44、r Listing 选项下的各种复选框,Vision 3 在编译 时将产生 C 语言和汇编语言的列表文件,该文件中包含了源代码文件中的各种 指示信息,这些信息对分析源代码非常重要。 14、列表文件(汇编语言):在 Vision 3 中,集成的 A51 宏汇编译器是一个 8051 MCU 系列的宏汇编器。它把汇编语言翻译成机器代码。A51 汇编器允许用 户定义程序中的每一个指令,在需要极快的运行速度、很小的代码空间、精确 的硬件控制时使用。因此用户可以利用 Vision 3 的集成开发环境进行汇编语 言代码的编译和调试。在汇编语言列表文件中,宏汇编编译器报告所有必要的 信息,如变量名、函数名、行
45、数以及 Vision 3 调试器或其他仿真器用来详细 调试和分析程序所需要的信息。 5 52 2 系统程序设计流程图系统程序设计流程图 通过软件控制单片机的功能是单片机的主要特点和优点,程序的设计要考 虑合理性和可读性,遵循模块化设计的原则,采用自顶向下的设计方法。模块 化设计使程序的可读性好、修改及完善方便。 软件设计包括主程序、水位采集、按键扫描子程序、延时子程序、中断服务子 程序、显示子程序、报警程序等等。 水位采集子程序是将传感器产生的信号经单片机处理之后,经显示子程序 可以显示出来。 延子程序时 MCS-51 的工作频率为 2-12MHZ,我们选用的 89S52 单片机的工 作频率为
46、 12MHZ。机器周期与主频有关,机器周期是主频的 12 倍,所以一个机 器周期的时间为 12*(1/12M)=1us。我们可以知道具体每条指令的周期数,这 样我们就可以通过指令的执行条数来确定 1 秒的时间。 中断服务子程序用来实现数码管的动态扫描。 显示子程序是将数据处理的结果送显示器显示。 系统软件总体流程图如图 5.1 所示。 开始 初始化 液位检测 报警电路显示程序 处理 5 53 3 总体程序设计总体程序设计 本软件流程图设计简易合理,方便易于操控,能够针对水位的不同状态和 不同外界条件进行控制,水位运行稳定、控制品质良好、控制效果明显改善, 同时大大提高了控制的抗干扰能力,保证了
47、工业水体液位方面作业的稳定运行。 下图即为水位检测主程序流程图。 开始 初始化系统 水位检测 水位是否低于A1 N 水位是否低于C1 N 水位是否在A1和C1之间 N 报警打开排水电机 Y 报警打开抽水电机 Y 关闭所有电机 Y Flag是否为1 N 显示水位 Y 图 5.2 总程序流程图 5.55.5 液位采集程序设计液位采集程序设计 当液位在 A 点以下时红灯连续亮并且发出频率较高的报警声显示 00,电机 正转;当 A液位B 时,显示 A0,继电器 1 吸合,电机正转;当 B液位C 时, 显示 OB,电机不转;液位在 C 点及以上时,绿灯连续亮并且发出报警声,显示 C0,电机反转。 水位是
48、否低于A1 N 水位是否低于C1 N 水位是否在A1和C1之间 N 报警打开排水电机 Y 报警打开抽水电机 Y 关闭所有电机 Y 液位采集 图 5.4 液位采集子程序流程图 第第 6 6 章章 系统调试系统调试 6.16.1 系统原理图设计系统原理图设计 利用 Altium designer6.9 软件来进行原理图的绘制,先将原理图做出,然 后将其转化成相应的 PCB 图,布绘制过程中要注意布置线要求:铜箔厚度为 00 5mm、宽度为 11. 5mm 时,通过 2A 的电流,温度不会高于 3,因此导 线宽度为 1. 5mm (60mil)可满址要求。对于集成电路,尤其是 数字电路,通常选 0.
49、 020.3mm(0.812mil)导线宽度。当然,只要允许,还是 尽可能用宽线尤其是电源线和地线。导线的最小间距主要由最坏情况下的线 间绝缘电阻利击穿电压决定。对于集成电路,尤其是数字电路,只要工艺允许, 可使问距至 58mm。 6 62 2 系统测试方法系统测试方法 在水塔中经常要根据水面的高低进行水位的自动控制,同时进行水位压力 的检测和控制。本液位器具有水位检测、报警、自动上水和排水(上水用电机 正转模拟,下水用电机反转模拟) 。该控制器主要由 89S52 单片机,A、B、C 三 点水位检测电路、数码显示电路、报警电路和电源电路组成。 由三路“传感器” (三根插入水中的导线)检测液位的
50、变化,由 89S52 控制 液位的显示及电泵的抽放水。 三路液位检测都采用简单的三极管检测电路检测液位变化,将电 平信号分别送入单片机。实际检测时,从 P3 焊接出四根导线,分别 将接 A、B、C 和 VCC 的导线放入水杯(模拟水塔)中,位置如图 6.2 所示。 C B A VCC 当液位在 A 点以下时红灯连续亮并且发出频率较高的报警声显示 00,电 机正转;当 A液位B 时,显示 OA,继电器 1 吸合,电机正转;当 B液位C 时, 显示 OB,电机不转;液位在 C 点及以上时,绿灯连续亮并且发出报警声,显示 OC,电机反转。 6.36.3 开始测试开始测试 1 整个电路安装焊接之后,开
51、始调试。硬件电路的检查。先断电观察有无 断路和短路现象;检查元件足否安装正确,有无损坏;检查电路部分是否有虚 焊、脱焊现象;榆查电源系统等,然后接通电源,用万用表等测试工具测试电 路的通断情况;检查芯片、按键、数码管等元器件能否正常工作等。 2 软件的调试检查。 首先对程序进行调试,没有芯片的支持,系统将无法正常运行,而一个程 序是否能正常运行,首先要检查它的语法上有没有错误,检查程序语法的错误。 利用 Keil uVision4 软件对程序进行调试。首先将程序在程序编辑器中编辑, 因为在调试时没有实验箱,所以在调试时只能看有没有错误,即只能对程序进 行编译连接,如果有编译连接错误,将鼠标指向
52、窗口内的错误提示信息,双击 左键,光标将自动跳到编辑窗口源程序文件发生错误的地方,对程序进行修改。 在修改正确之后就可以产生一个 HEX 文件,该文件就是程序的代码文件。将程 序烧入电路,按功能要求对电路进行调试,并反复对程序进行修改调试,以达 到基本功能要求。然后把程序烧制程序成功之后,开始进行硬件调试。 导通电源之后,数码管不显示,6 个灯全亮现象,在老师的指导下找到了 问题,复位电路有虚焊点,造成一直复位状态,单片机不工作。在调试监测水 压功能时发现根本无法实现,接着对水压传感器接口进行电平测试,测得该口 的 VCC 总处于低电平电平,最后检查检查主电路,发现电路板上有断线。把所 有问题
53、都处理好,系统运行正常,很好地实现了设计的各个功能。 6.46.4 系统功能测试系统功能测试 (1)测试在 lOcm-40cm 范围内任务设定水箱的上、下水位,当水箱的水位 下降到设定水位时,继电器 1 吸合水泵电机可自动起动运转工作,给水箱补水; 当水箱的水位上升到设定水位高度时,继电器 2 吸合水泵电机倒转可自动放水。 (2)测试在设定报警的液位上下限值,当水管水位降到或升到设定的报警 水位时,能发山报警声,同时能起动水泵和排水阀进行自动调节。 (3)测试用数码管显示器件显示水位高度,分辨率1ccm。 (4)测试当水泵电机工作时如果无水泵出或水管液位不变化报警。 总 结 本设计是采用一个单
54、片机系统来进行根据水位大小自动抽水放水的液位控 制器设计与制作,它具有全集成化,智能化,高精度,高性能,高可靠性和低 价格等优点,是一个值得推广的一种方法。 在设计本作品时,我通过查阅网络与图书馆搜集到的资料,再加上指导老 师的耐心指导与资料提供,设计出了这一套根据水压大小自动抽水放水的液压 控制系统的主要硬件结构和软件结构,基本完成了任务书的要求,但是由于设 计的理论基础尚浅,对课题的研究经验还不成熟,使得在技术的解决与运用上 显得粗糙了一些,在某些技术关键上的叙述不能达到详细、精辟。但是这个系 统的设计却不缺乏自己的特点和创新点,特归纳为以下几点: 该产品的互换性好,响应速度快,抗干扰能力
55、强,外围电路简单易懂, 体积小。 该系统能用软件的方式设计硬件,所以用软件方式设计的系统向硬件系 统的转换是由有关开发软件自动完成的。 设计过程中可以对有关软件进行各种仿真,且系统可现场编程,在线升 级,所以有不同的功能可以实现。 可以从以前的组合设计转向真正的自由设计,所以设计的移植性好,效 率高。可适合大规模的现场操作。 因为整个系统可集成在一个芯片上,因此体积小,外围电路简单、功 耗低,可靠边性更高。 在软件上,充分利用了 AT89C52 的强大功能,实现了信息的快速处理和控 制、显示功能,能精确监测。更进一步实现了自动化,高效率。 由于本人的水平有限,设计当中,难免会有不少的缺点和不足
56、之处,恳请 教导老师批评并改正。 致 谢 通过这次的毕业设计,使自己大学四年以来所学的理论知识和实践做到了有 机结合,进一步深化巩固了自己的专业知识,同时也让我深深体会到要想有更 好的发展,必须要通过自身不断的学习,才能为将来打下更加坚定的基础。 在完成本毕业设计之际,首先感谢我的导师 插入老师的名字 老师对我在学业上的悉心指导,某某老师渊博的理论知识、 热心负责、 无私 的奉献精神深深地感动了我,某某老师帮助解决了毕业设计中遇到的许多 问题,使我能顺利完成此次设计,在这里,再一次对于某某老师的指导和 帮助致以诚挚的谢意! 同时,学院各级领导、 老师以及身边的同学也给予了热情关心和帮助。在此
57、感谢学校四年的培养,同时对关心和帮助过自己的领导、 老师以及同学表示衷 心的感谢! 最后,感谢评审老师在百忙中抽出时间对我的论文进行评审指正,谢谢! 参考文献 1蔡美琴,张为民,何金儿.MCS-51 系列单片机系统及其应用M高等教育出 版社,2009 2毛谦敏,洪潭元,肖艳萍.单片机原理及应用设计M国防工业出版社,社, 2005 3雷思孝,冯育长.单片机系统设计及工程应用M.西安电子科技大学出版社, 2005 4何宏,龚威,志宏.单片机原理与接口技术M.国防工业出版社,2006 5张树江,王成安.模拟电子技术M.大连理工大学出版社,2009 6刘峰,孙艳萍.电力电子技术M.大连理工大学出版社,
58、2007 7陈小忠,黄宁.单片机接口技术实用子程序M.人民邮电出版社,2005:2- 8 8Charles K.Alexander,Matthew N.O.Sandiku.Fundamentals of electric circuitM. 清华大学出版社,2009:78-82 9Janice Mazidi.8051 Microcontroller and Embedded SystemsM.Prentice Hall,2009:82-84 10 Brian W.Kernighan.The C Programming LanguageM.Prentice Hall PTR,2009:69-71 附录附录 程序清单程序清单 /* =液位控制程序= */ #include /头文件 #define uchar unsigned char /宏定义 #define uint unsigned int uchar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学生篮球比赛准备计划
- 吉他教学计划:节奏与技巧结合
- 小学六年级少先队团队建设计划
- 航空公司合规部门年度工作总结及未来工作计划
- 有关技术服务合同范例
- 25年公司员工安全培训考试试题附参考答案(B卷)
- 房屋买卖补充协议书格式范例
- 2025企业安全培训考试试题含完整答案(全优)
- 25年新版车间安全培训考试试题(达标题)
- 2025管理人员岗前安全培训考试试题标准卷
- 湖北省咸宁市2025年高考数学试题全真模拟卷
- 食品生产设施安全设计试题及答案
- 2025山东潍坊市天成水利建设有限公司招聘30人查看职位笔试参考题库附带答案详解
- 弱电工程施工项目管理流程
- 宁夏中考试题历史及答案
- 2024-2025学年二年级语文下册统编版第四单元达标卷(单元测试)(含答案)
- 2025年高考英语二轮复习专题01 阅读理解之细节理解题(课件)(新高考)
- 河南郑州大学第二附属医院招聘考试真题2024
- 7.2做中华人文精神的弘扬者 课件 -2024-2025学年统编版道德与法治七年级下册
- 2024年贵州省高考地理试卷(含答案详解)
- 《企业运营管理基础》课件
评论
0/150
提交评论