欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于单片机的水位控制系统毕业论文.doc

    • 资源ID:42289604       资源大小:661KB        全文页数:32页
    • 资源格式: DOC        下载积分:9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于单片机的水位控制系统毕业论文.doc

    基于单片机的水位控制系统毕业论文目录河系学院本科生毕业论文(设计)诚信声明2河西学院本科生毕业论文(设计)开题报告3摘要6ABSTRACT61. 绪论71.1 研究背景71.2研究现状72.设计任务与要求分析82.1 设计任务与要求82.1.1 设计任务82.1.2 设计要求82.1.3 要求分析83. 系统方案论证与选择83.1方案设计83.2 系统整体方案103.2 各单元电路方案论证103.3 主要模块简介113.3.1 核心芯片STC89C51单片机113.3.2 1602液晶显示器144. 硬件电路设计174.1 单片机最小硬件系统电路184.2水位显示电路184.3 水位调整与其报警电路194.4初值设置按键电路205. 程序设计205.1水位控制系统主程序设计流程图205.2 水位控制系统主程序206. 实物调试与测试216.1实物图216.2 测试结果分析217. 完毕语22参考文献23致谢24附录25河西学院本科生毕业论文(设计)题目审批表33河西学院物理与机电工程学院指导教师指导毕业论文情况登记表34河西学院毕业论文(设计)指导教师评审表35河西学院本科生毕业论文(设计)答辩记录表361. 绪论1.1 研究背景 水位自动控制技术越来越频繁地进入到自动控制系统设计者的视线。传统的水位控制系统虽结构简单,但功能单一,无法实现人机交互,且通用性差。如今随着电子技术的飞速发展,电子产品制造工艺成熟,批量生产降低了产品价格。人们开始意识到采用单片机来实现水位控制。其人机交互性强, 功能强大, 控制精度高, 能够方便地与上位机通讯, 实现数据共享。且价格低廉, 通用性、实用性强, 能够在稍作改造后或直接用于诸如自来水厂的储水池、爆气池, 污水处理厂、化学工厂的各类液体池以与电厂一的锅炉气泡等需要水位自动控制的场合。 1.2研究现状在许多工业生产系统中,需要对系统的液位或物料位进行监测,特别是对具有腐蚀性的液体液位的测量,传统的电极法是采用差位分布电极,通过给电脉冲来检测液面,电极长期浸泡在液体中,极易被腐蚀、电解、失去灵敏性,因而对测试设备的抗腐蚀性要求较高。超声波液位检测系统,利用了超声波传感技术的原理,采取一种非接触式的测量方法,能够实现对工业系统中液位或物料位的检测;而且超声波具有很好的指向性和束射特性,人耳听不见,一般不会对人体造成伤害检测工程方便、迅速、易做到实时控制,而且测量精度又能达到工业实用的要求,所以有广泛的工业应用前景。并且目前,我国住宅小区楼房自来水供水系统主要采用高塔供水,既在楼顶或者另外建设的高塔上面建个蓄水池以保证用户水压的恒定。目前大多数的住宅小区都是采用人工加水的方法,即当水用完的时候,就人工开启水泵进行加水,十分不便。所以这一切问题的存在,都在呼唤一种简单经济的水位检测报警控制系统的诞生。传统的控制方式存在控制精度低、能耗大的缺点,而自动控制原理, 依据用水量的变化自动调节系统的运行参数,保持水压恒定以满足用水要求, 从而提高了供水系统的质量,而且成本低,安装方便,经过多次实验证明,灵敏性好,是节约水源,方便家庭和单位控制水位的理想装置。2.设计任务与要求分析2.1 设计任务与要求2.1.1 设计任务设计一个以单片机为基础,用超声波传感器测量水位并将水位高度实时显示在液晶显示器上;用发光二极管直观显示水位当前状态;水位最高与最低值能在按键上调节的智能水位控制系统。2.1.2 设计要求(1)控制容器的水位在某一值附近。当水位发生变化时利用单片机控制进水阀或水泵,使水位能迅速调整到预定值;(2)能通过键盘对水位控制的阈值进行设置;(3)能通过数码管、液晶显示器或PC机显示当前水位值与水位阈值等信息;(4)要求水位控制精度在5%以。2.1.3 要求分析根据该设计的任务与要求分析知该系统中测量水位这是一个重要部分,只有准确的测量出了水位才能用单片机控制其余硬件电路做出响应。要准确测量水位需选用合理的测距模块,经过分析和比较几种传感器的功能和原理,此次用超声波测距模块来解决这个问题。3. 系统方案论证与选择3.1方案设计方案一:本方案采用555电路进行控制,即当水位探测传感器探测到低水位时送一个低于1/3VCC的低电平给NE555芯片,555的输出即为高电平驱动水泵加水;当在正常的水位时候,送给NE555为1/3VCC-2/3VCC的电平,即保持前一个水泵不加水的状态;当水位居于高水位时,给NE555电路一个高电平,这时NE555输出电平翻转为低电平,不能驱动水泵,水泵停止加水。 图3.1 方案一方框图 方案二:本方案采用单片机STC89C51作为我们的控制芯片,主要工作过程是当水塔中的水在低水位时,水位探测传感器送给单片机一个高电平,同时单片机驱动水泵加水和显示系统使红灯变亮。STC89C51单片机 水泵控制电路 显示部分供水系统电源电路 超声波 传感器图3-2方案二方框图方案论证:第一种方案设计使用起来比较方便也简单,不用编程等软件方面的设计,但是没有稳压电路,使输入NE555芯片的电平十分不稳定,容易发生误判水位引起混乱的情况,且NE555电路只有一个输出端,不能接显示系统,所以不能完成显示功能。另外,此方案不能精确测量出液位高度,铜丝长时间沁在水中表面会发生氧化,长时间会是系统的误判率升高。第二种方案中使用了单片机芯片和超声波传感器,单片机控制和超声波测距技术是信息时代用于精密测量的技术。此系统使用过程中采用稳压电路能够准确地把输入的电平送给单片机不会产生误判的情况,由于STC89C51单片机有四端口32引脚能够非常方便地设计显示系统。综上,我们已经清楚地看到了两种方案的优劣,要能够很好地完成本次设计的各个指标和达到设计的目的,我们选择第二种方案作为我们的设计方案。3.2 系统整体方案图3.1 液位控制系统由上图可观察到此液位控制系统工作如下:传感器通过对液面进行测量,输出模 拟信号,再通过STC89C51单片机的运算控制,在LED上进行显示,通过报警装置进行报警,报警显示之后再通过对阀门的开启实现对水体的液位进行调节控制,阀门的驱动设备是电动机。3.2 各单元电路方案论证(1)能使单片机工作的最小系统电路最小系统由复位电路、外部晶振和单片机STC89C51组成(2)显示电路用LCD1602,指显示的容为16X2,即可以显示两行,每行16个字符液晶模块。(3)调整控制电路用三极管和电阻等元件构成的驱动电路接到家用电水泵上来调节水位。(4)声音报警电路在停电或者水泵由于故障而无法上水时,声音报警启动,以便与时做出处理。水位控制系统中传感器的选用论证系统考虑的要求,在对器件的选择过程中,侧重于对传感器的选择。方案设计过程中主要对以下几种传感器做了比较。方案一:压力传感器 目前的液位压力传感器大部分是投入式静压液位变送器,而投入式静压液位传感器只有参考大气压才能进行准确测量,然而连接电缆中的通气会受到环境的影响,造成气管壁冷凝,结露。露水滴到电子器件和传感器上,会影响精度或者输出漂移。同时,结露过快,变送器的使用寿命也会大大缩短。此压力传感器容易受到环境的影响而造成测量不准确,并且安装不方便。方案二:压阻式压力传感器压阻式传感器是用集成电路工艺直接在硅平膜片上按一定晶向制作扩散压敏电阻;硅平膜片在微小变形时有良好的弹性特性,当硅片受压后,膜片的变形使扩散电阻的阻值发生变化;此变阻器容易受外部环境的影响,如温度,从而造成测量不准确,而且体积一般比较大,不易安装、不易携带;一般其精确度也比较低。不能满足设计的需要,所以不选择。方案三:超声波传感器超声波传感器是工业领域第一款在产品上带有按键设定功能和自诊断功能的小型传感器。它虽然体积小,但是具有其它大型传感器所具有的功能,安装使用方便而且不受被测物体的颜色影响,有许多特设功能,如:具有自诊断LED 显示和按键设定功能、温度补偿功能、可选择模拟量或开关量输出等;其供电电压为1030V,测量围为30mm300mm,输出电压0V10V,输出电流为4mA20mA,最小负载阻抗2.5 欧,精度可达到0.5mm,外形分为直线型和直角型。感应口径为18mm。综上,此次我们选用超声波传感器,主要原因有:超声波传感器可以不用与液体接触,管理比较方便。超声波液位检测系统,利用了超声波传感技术的原理,采取一种非接触式的测量方法,能够实现对工业系统中液位的检测;而且超声波具有很好的指向性和束射特性,人耳听不见,一般不会对人体造成伤害检测工程方便迅速易做到实时控制,而且测量精度又能达到工业实用的要求,所以有广泛的工业应用前景。超声波传感器所具有的条件满足设计所需要025cm 的液位控制,以与液位误差不超过±0.3cm 的要求,并且解决了安装不方便的难题。所以本设计选择了精度高,体型小的超声波传感器3.3 主要模块简介3.3.1 核心芯片STC89C51单片机STC89C51单片机学习板是一款基于8位单片机处理芯片STC89C52RC的系统。其功能强大,可以实现单片机开发的多种要求,学习、开发者可以根据需要选配多种常用模块,达到实验与教学的目的。89C51单片机学习板功能强大,具有报警,跑马灯、串行通信(max232)、段码液晶(msm0801LCD)和字符液晶显示(LCD1602)、电机控制(L298)、A/D转换(TLC2543)、D/A转换(TLC5615)、温度采集(DS18B20)、数字信号合成(AD9851)、实时时钟电路(DS1302)、420mA输出、PWM输出(UC3842)、红外检测(KSM-603LM)控制等十七种功能。其引脚图如下3.2图3.2 STC89C51引脚图主要特性 (1)置标准51核,机器周期:增强型为6时钟,普通型为12时钟 (2)工作频率围:040MHZ,相当于普通8051的080MHZ;(3)STC89C5xRC对应Flash空间:4KB8KB15KB; (4)部存储器(RAM):512B; (5)定时器计数器:3个16位;(6)通用异步通信口(UART)1个;(7)中断源:8个; (8)有ISP(在系统可编程)IAP(在应用可编程),无需专用编程器仿真器;(9)通用IO口:3236个;(10)工作电压:3.85.5V; (11)外形封装:40脚PDIP、44脚PLCC和PQFP等管脚说明(1)VCC:供电电压。(2)GND:接地。(3)P3口:P3口是一组带有部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(ILL)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表3.1所示。(4)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。 表3.1 P3口的第二功能端口引脚第二功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT0(外中断0)P3.3 INT1(外中断1)P3.4 T0(定时/计数0)P3.5 T1(定时/计数1)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读选通)(5)ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率和周期输出正脉冲信号,此频率为振荡器频率的1/6。(6)/PSEN:外部程序存储器的选通信号,低电平有效。在从片外程序存储器取指期间,在每个机器周期中,当/PSEN有效时,程序存储器的容被送上P0口(数据总线)。/PSEN可以驱动8个TTL负载。(7)/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。(8)XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。(9)XTAL2:来自反向振荡器的输出。STC89C51的复位使CPU开始工作的方法就是给CPU一个复位信号,CPU收到复位信号后将部特殊功能寄存器设置为规定值,并将程序计数器设置为“0000H”。复位信号完毕后,CPU从程序存储器“0000H”处开始执行程序STC89C51为高电平复位,一般有2种复位方法。(1) 上电复位。通过外部复位电路的电容充电来实现的。(2) 手动复位。设置一个复位按钮,当操作者按下按钮时产生一个复位信号。图3.3为最简单的上电复位和手动复位方法。图3.3 STC89C51的复位电路3.3.2 1602液晶显示器LCD1602分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如图3.4所示:图图3.4 1602LCD尺寸图 LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如下:第1、2脚:VSS为地电源;VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15、16脚:BLA背光源正极;BLK背光源负极。3.3.3 超声波模块简介超声波测距模块可提供2cm-3.5m的非接触式距离感测功能。我们只需要提供一个周期10us的脉冲触发信号。该模块部将发出8个40khz周期电平并检测回波。一旦检测到有会波信号则输出回响信号。回响信号是一个脉冲的宽度成正比的距离对象。可通过发射信号到收到回响信号时间间隔可以计算得到超声波模块距离水面的距离。 US-015超声波测距模块 概述US-015是目前市场上分辨率最高,重复测量一致性最好的超声波测距模块;US-015的分辨率高于1mm,可达0.5mm,测距精度高;重复测量一致性好,测距稳定可靠。US-015超声波测距模块可实现2cm4m的非接触测距功能,供电电压为5V,工作电流为2.2mA,支持GPIO通信模式,工作稳定可靠。 主要技术参数 表 3.2电气参数US-015超声波测距模块工作电压DC 5V工作电流2.2mA工作温度0+70度输出方式GPIO感应角度小于15度探测距离2cm-400cm探测精度0.1cm+1%分辨率高于1mm(可达0.5mm)本模块实物图图 3.5 US-015接口接口说明从左到右依次编号1,2,3,4。它们的定义如下:(1)1号Pin:接VCC电源(直流5V)。(2)2号Pin:接外部电路的Trig端,向此管脚输入一个10uS以上的高电平,可触发模块测距。(3)3号Pin:接外部电路的Echo端,当测距完毕时,此管脚会输出一个高电平,电平宽度为超声波往返时间之和。(4)4号Pin:接外部电路的地。 测距工作原理 模块测距的时序如图3.6所示:图3.6 US-015测距时序图图3.6 说明:只需要在Trig管脚输入一个10US以上的高电平,系统便可发出8个40KHZ的超声波脉冲,然后检测回波信号。当检测到回波信后,通过Echo管脚输出。根据Echo管脚输出高电平的持续时间可以计算距离值。即距离值为:(高电平时间*340m/s)/2。 超过测量围时返回值与测量周期当测量距离超过US-015的测量围时,US-015仍会通过Echo管脚输出高电平的信号,高电平的宽度约为80ms。如图3.7所示: 图3.7 超出测量围返回值 测量周期:当接收到US-015通过Echo管脚输出的高电平脉冲后,便可进行下一次测量,所以测量周期取决于测量距离,当US-015距离被测物体很近时,Echo返回的脉冲宽度较窄,测量周期就很短;当US-015距离被测物体比较远时,Echo返回的脉冲宽度较宽,测量周期也就相应的变长。最坏情况下,被测物体超出US-015的测量围,此时返回的脉冲宽度最长,约为80ms,所以最坏情况下的测量周期稍大于80ms即可(取85ms足够)4. 硬件电路设计图 4.1 系统硬件框图4.1 单片机最小硬件系统电路图4.2 最小系统电路图 上图是单片机运行工作起来所必需的最基本电路组成。由电源电路和复位电路组成。电源电路向单片机供电,通常给单片机外接5V直流电源。复位电路产生复位信号,使单片机从固定的起始状态开始工作,完成单片机的启动过程。4.2水位显示电路液晶显示模块已作为很多电子产品的通用器件,如在计算器、万用表、电子表与很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、LED数码管、液晶显示器,如以下图4.3:图4.3 LCD水位显示电路 单片机系统中应用晶液显示器作为输出器件有以下几个优点: 显示质量高 由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光, 而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。 数字式接口 液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。 体积小、重量轻液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量比相同显示面积的传统显示器要轻得多。 功耗低 相对而言,液晶显示器的功耗主要消耗在其部的电极和驱动IC上,因而耗电比其它显示器要少得多。 液晶显示的原理是利用液晶的物理特性, 通过电压对其显示区域进行控制,有 电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域6。4.3 水位调整与其报警电路图4.4 水位调整与其报警电路图图中BUZ1代表水泵,水位调整部分是为了让水位稳定在某一围的,当超声波模块计算出到水面距离超出设定的最大值(水位最低)时,自动启动水位调整电路,通过软件程序控制水泵开关,以达到调整水位的功能。当水位超出设定围的最高值或最低值时,利用三极管驱动蜂鸣器报警并且Led指示灯发光,同时水泵开始工作。4.4初值设置按键电路在这个独立键盘上可以对水位的最低值与最高值手动调整,以便系统方便的控制水位。其中K0是最高水位max的设置键,当按下K0时进入max设置状态,此时分别按K2与K3达到增减max的效果;K1设置最低水位min,当按下K1时进入min设置状态,按动K2或K3达到增减min的效果。 图4.5 按键设置电路5. 程序设计5.1水位控制系统主程序设计流程图图5.1 程序流程图由此流程图可以看出此系统工作原理如下,利用声波传输于原理计算相对水位,然后由单片机发出指令完成自动控制水位的功能。5.2 水位控制系统主程序 本水位测试系统采用了STC89C51单片机,用单片机C语言实现软件编程,也可用汇编语言来实现。整个系统软件功能的实现可以分为主程序、子程序、中断子程序几个部分组成。整个系统的流程如图5-1所示,在初始化以与调用激发超声波模块程序后T1开始计时,等待接收信号完成后,激发外部中断0,响应中断子程序,T1计数停止,用公式S=t*340/2*1000mm计算出距离,再用L=-S计算出水位,C语言主程序见附录2。6. 实物调试与测试6.1实物图图6.1实物图6.2 测试结果分析表6-1 测试结果测试次数实测结果(cm)测试结果(cm)测量误差(%)176.65.1265.75.235.85.55.446.76.44.656.35.955.865.75.45.574.84.64.387.26.85.8 根据测试结果可以看出,距离较短的时候测量结果比较准确。但是随着距离的增大,由于外界的干扰或者温度因素使得测试结果有小围的跳变。主要引起干扰的因素:设备误差、操作误差、长时间设备使用引起的实验误差。7. 完毕语该水位控制系统是利用单片机控制水泵来调节水位来实现智能控制水位的。我们主要用了单片机、数码管、继电器、超声波传感器、开关、以与发光二极管等组成了该系统。是典型的用软件控制硬件的类型。我们编程实现水位的测量、显示、以与水位的调节,实时监测水位情况,并作出相应的控制。虽然我们的设计基本实现了我们计划的功能,但是还是有很多的不足,比如说超声波的抗干扰问题还有缺陷,若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。另外,本系统还有的重要缺陷就是没考虑到温度对光速的影响,如能再做一个温度补偿电路,就可很好的减少系统误差, 可这些不足正是我们去更好的研究更好的创造的最大动力,只有发现问题面对问题才有可能解决问题,不足和遗憾不会给我打击只会更好的鞭策我前行。参考文献1童诗白.模拟电子技术基础M.高等教育,2006.2杰,黄鸿.传感器与检测技术M.:高等教育,2002.3谭浩强.C程序设计M.清华大学,2005.4高吉祥.全国大学生电子设计竞赛培训系列教程M.电子工业,2007.5周澜景.基于PROTEUS的电路与单片机系统设计与仿真M.航空航天大学,2006.5.6何希才.传感器与其应用实例M.工业,2004.7康光华.电子技术基础模拟部分(第五版)M.:高等教育,2006.8潘新民,王燕芳.微型计算机控制技术M.电子工业,2011.1.9何立民.单片机高级教程M.航空航天大学出版,2004.10楼然苗,光飞.单片机课程设计指导M.航空航天大学,2007.11毅刚,彭喜元,彭宇.单片机原理与应用.高等教育,2010.12王小建,长胜主编.单片机设计与应用.清华大学,2011.13卢胜利主编.智能仪器设计与实现.大学,2003.14王兆安,黄俊主编.电力电子技术(第四版).机械工业,2002.15汉才编著.单片机原理与系统设计M. 清华大学,2002.致 谢在毕业设计完成和论文的完成之际我要感谢很多人。首先要感谢学校给了我一个学习的机会,在这毕业之际做这个毕业设计使我学到了很多实际的东西,感谢学校的各位领导和老师一直以来对我的教导和帮助。其次感谢我的论文指导老师周佐周老师,老师严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇尚风与平易近人的人格魅力对我影响深远。在这次毕业设计制作过程中是老师您给我进行了很多的辅导,不仅在思路方面给了我很多的启迪,而且在制作技术方面也给了我很大帮助。最后还要感谢我的同学,是你们在我设计过程中给了我不少的建议,受你们的启发有了很多的突破。再次我对大表示最诚挚的谢意,谢谢你们!附 录附录1 源程序#include<reg52.h>#include<intrans.h>#define dint unsigned int#define char unsigned charvoid acquaintanceship();bit RX=P34;bit TX=P35;bit p10=P10; /红灯bit p11=P11; /绿灯bit p12=P12; /黄灯bit p13=P13; /水泵bit s1=P24;bit s2=P25;bit s3=P26;bit s4=P27;dint time=0;dint times=0;char error,bum=0,n=0;char min=50,max=5; / min为最低水位,max为最高水位char num1=0;char num2=0;unsigned long S=0;unsigned char code table =0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF/*-*/;unsigned char code opposite3= 0xfe,0xfd,0xfb;unsigned char dis buff4= 0,0,0,0,;char shuzu14=0,0,0,0;char shuzu24=0,0,0,0;/延时void delay(char z) char x,y; for(x=100;x>0;x-); for(y=z;y>0;y-);/初值设定max与min的显示赋值void i nit() shuzu10=max/100; shuzu11=max%100/10; shuzu12=max%10; shuzu20=min/100; shuzu21=min%100/10; shuzu22=min%10;/*void display1()/显示设定值max P2=oppositenum1; P0=tableshuzu1num1; num1+; if(num1>=3) num1=0;/*void display2()/显示设定值min P2=oppositenum2; P0=tableshuzu2num2; num2+; if(num2>=3) num2=0;/* void Display(void)/水位高度显示 if(bum=0) P0=(tabledis buffbum)&0x7f; else P0=tabledis buffbum; P2=oppositebum; if(+bum>=3) bum=0;/* void Co nut(void) /脉宽与高度换算 time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.7) /100; /算出来是CM if(S>=700)|error=1) /超出测量围显示 error=0; dis buff0=10; dis buff1=10; dis buff2=10; else /超出围显示 dis buff0=S%1000/100; dis buff1=S%1000%100/10; dis buff2=S%1000%10 %10; /* void zd0() interrupt 1 /T0中断用来计数器溢出,超过测距围 error=1; /中断溢出标志 /* void zd3() interrupt 3 /T1中断用来扫描数码管和计600MS启动模块 TH1=0xf8; TL1=0x30; Display(); times+; if(times>=300) times=0; TX=1;/600MS 启动一次模块 _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); _bop_(); TX=0; /*void main(void) /主函数 TMOD=0x11; /设T0为方式1,GATE=1; TH0=0; TL0=0; TH1=0xf8; /2MS定时 TL1=0x30; ET0=1; /允许T0中断 ET1=1; /允许T1中断 TR1=1; /开启定时器 EA=1; /开启总中断 p10=p11=p12=1; p13=1; s1=s2=s3=s4=1; while(1) while(!RX);/当RX为零时等待 while(RX);/当RX为1计数并等待 Co nut();/计算 acquaintanceship(); while(!s1)/设置max初值 n+; display1(); i nit(); if(n=3) n=0; if(s3=0) /*加功能 delay(10); if(s3=0) max+; while(!s3); if(s4=0) /*减功能 delay(10); if(s4=0) max-; while(!s4); while(!s2)/设置min初值 n+; display2(); i nit();

    注意事项

    本文(基于单片机的水位控制系统毕业论文.doc)为本站会员(可****阿)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开