收藏 分销(赏)

基于单片机的水位检测与控制新版系统的研究应用与设计.doc

上传人:精*** 文档编号:2686942 上传时间:2024-06-04 格式:DOC 页数:36 大小:360.04KB
下载 相关 举报
基于单片机的水位检测与控制新版系统的研究应用与设计.doc_第1页
第1页 / 共36页
基于单片机的水位检测与控制新版系统的研究应用与设计.doc_第2页
第2页 / 共36页
基于单片机的水位检测与控制新版系统的研究应用与设计.doc_第3页
第3页 / 共36页
基于单片机的水位检测与控制新版系统的研究应用与设计.doc_第4页
第4页 / 共36页
基于单片机的水位检测与控制新版系统的研究应用与设计.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、江 西 理 工 大 学 南 昌 校 区 毕 业 设 计(论文)题 目:基于单片机水位检测系统研究与设计系 别:信息工程系专 业:电气自动化班 级:09自动化1班学 生:凌晖学 号:09321108指引教师:郭泉江 职称:助教摘 要当代传感技术、电子技术、计算机技术、自动控制技术、信息解决技术和新工艺、新材料发展为智能检测系统发展带来了前所未有奇迹。在工业、国防、科研等许多应用领域,智能检测系统发挥着越来越大作用。随着社会进步、生产工艺和生产技术发展,人们对液位检测与控制提出了更高规定。而新型电子技术微电子技术和微型计算机广泛应用于普及,单片机控制系统以其控制精度高,性能稳定可靠,设立操作以便,

2、造价低等特点,被应用到液位系统控制中来。本设计用液位检测集成芯片LM1042、A/D转换芯片A/D574A、继电器、水泵,以及AT89C51单片机作为主控元件液位检测与控制原理、电路及监控程序。用LM1042液位检测集成芯片测量液位,具备测量精度高、速度快、可靠、稳定等长处;采用单片机来控制液位信息采集,并且计算出真实液位值,通过运算判断与否超限报警,使检测与控制具备更高智能性。核心词:AT89C51;AD574A;液位检测;LM1402;超限报警;继电器;水泵.ABSTRACTModern sensing technology,electronic technology,computer t

3、echnology,automatic control technology,information processing technology and new technology,new material for the development of the intelligent detection system development has brought an unprecedented miracle. In industry,national defense,scientific research and many other fields of application,int

4、elligent detection system is playing the more and more major role. Along with the progress of the society,the production technology and production technology development,the people to the level of test and control put forward higher request. And the new electronic technology of microelectronics tech

5、nology and microcomputers widely used in popularity,single-chip microcomputer control system with its high control accuracy,high performance is stable and reliable,setting,convenient operation,cost low characteristic,has been applied to the liquid level control systems. This design with liquid level

6、 detection integrated chips LM1042,A/D converse.Keywords:AT89C51;AD574A;The liquid level detection;LM1402;Overrun alarm;Relay;Water pump.目 录第一章 绪 论11.1 水位检测技术应用与发展11.2 水位检测系统设计意义11.3 本设计研究内容和办法1第二章 系统硬件设计32.1系统总体功能概述32.2 核心芯片选取42.3硬件原理图10第三章 系统软件设计153.1软件功能概述153.2 主程序设计163.3定期器T0中断服务程序173.4 A/D转换子程序

7、183.5 LED显示子程序18第四章 结 论19参照文献20致 谢21附 录22附录一 主程序代码22附录二 电路图26附录三 PCB版27第一章 绪 论1.1 水位检测技术应用与发展 当今工业领域中液位检测对许多自动控制方案来说都至关重要。当代电子技术、传感技术、通信技术和计算机技术迅速发展,也增进了水位监测技术自动化发展。水位监测是采集、存储、传播、解决等技术集成。从老式水位检测与控制方式即人工监测技术分析来看,重要存在如下问题:一方面记录方式以模仿方式为主,就是数学方式记录也很难以便输入计算机解决,另一方面数据解决基本靠人工解决判断,费时易错,最后水位信息采集、传播、解决实时性和精确性

8、较差,控制也是全人工操作,无法适应当代水文需求。因而,要用自动化技术增进水位检测与控制自动化发展。1.2 水位检测系统设计意义水位检测系统是自然界和普通工业界不可缺少一种检测系统。但凡江河湖海,工业中应用蓄水池、水塔、水箱、地下水等都需要有水位检测。供水系统中有许多设备由于所处地势高,上下极为不便,有时水即将用完或者已经用完也不懂得,导致需用水时却水量局限性或者无水可用状况。此时,在向池中注入水过程中,由于不懂得水位状况,也就无法控制水量多少,为了精确掌握水位状况,老式做法是安排人员进行人为监控,这样不但会占用人力、物力,还会大大影响工作效率。为此需要对水位监测状况实现自动化监测、数据化、智能

9、化显示、视觉或听觉冲击化报警,实现水位检测一种完整系统,那么工作人员便可以在操作室获知整个设备水位状况,如此不但大大减低工作人员危险性,同步更提高了工作效率及简便性。1.3 本设计研究内容和办法 内容:本设计以MCS-51系列单片机为核心设计水位检测系统,自行设计电源,选用液位检测传感器检测液位,数码管显示,当液位高度太高或太低时,报警( 可采用中断方式设计),由单片机控制继电器闭合来控制水泵工作,达到调节水位效果。 办法:本设计通过调研,收集且分析有关技术资料,综合考虑液位检测技术发展和液位检测系统特点基本上,提出把液位检测显示同超限报警综合解决方案。本系统采用AT89C51单片机作为解决器

10、,重要完毕如下工作:1 基于AT89C51液位信息检测设计方案。2 传感器LM1042、A/D转换芯片AD574A与单片机接口电路设计。3 LED数码管驱动芯片ICM7218与单片机接口电路及其与数码管硬件连接。4 继电器控制水泵加水电路设计。5 设计重要软件程序模块,完毕软件设计。第二章 系统硬件设计2.1系统总体功能概述该系统可看做两个方面:检测装置与控制执行。系统以AT89C51作为核心控制部件。检测装置由传感器、一片A/D转换芯片和一片数码管驱动芯片来完毕液位检测、显示和超限报警。LM1042外接热阻探针温度变化依赖于周边材料热阻大小,而空气和液体热阻大小有很大差别,从而可以依照探针在

11、液体中深度不同步电阻不同检测出液位深度信息,由LM1042内部转换电路网络转换为与液位成线性关系电压信号,再由12位逐次逼近型A/D转换芯片AD574A将模仿信号转换为数字信号,实现液位信息输入,AT89C51从AD574A读取液位信息后进行数据解决和超限判断,随后将解决过数据输出到数码管驱动芯片ICM7218RAM中,由ICM7218实现数码管静态显示,若液位超限则由单片机驱动蜂鸣器报警。控制执行方面,通过单片机输出电信号控制继电器闭合,实现对水泵控制。AT89C51液 位LED驱动器继电器水 泵电 源传感器AD转换数码管图2-1 系统总体构造图各某些功能:1. 电源某些提供+5V +15V

12、 -15V电压供系统各某些使用。2. 传感器LM1042实现液位信息到电压信号转换。3. AD574A将传感器输出电压信号经A/D转换成数字信号后送到单片机。4. AT89C51为解决器,实现液位信息接受、数据解决、和输出到ICM7218.5. 蜂鸣器某些在单片机检测到液位超限是由单片机驱动实现声音报警。6. 单片机对液位数据解决后输出,由ICM7218驱动数码管显示。7. 水泵加水电路由继电器进行控制。2.2 核心芯片选取(1)单片机AT89C51 单片机是把微型计算机重要某些集成在一块芯片上单芯片微型计算机。单片机AT89C51由CPU、存储器(涉及RAM和ROM)、I/O接口、定期/计数

13、器、中断控制功能等均集成在一块芯片上,片内各功能通过内部总线互相连接起来。1. 重要特性:8位CPU内置4K字节可重复编程Flash寿命:1000写/擦循环全静态工作:0HZ-24HZ三级程序存储器锁定128*8位内部RAM32根可编程I/O线两个16位定期器/计数器5个中断源,2个中断优先级可编程串行通道低功耗闲置和掉电模式片内振荡器和时钟电路2.管脚阐明:图2-2 AT89C51引脚图Vcc:供电电压Vss:接地P0口:P0口为一种8位漏级开路双向I/O口,每脚可吸取8TTL门电流。当P1口管脚第一次写1时,被定义为高阻输入。P0可以用于外部程序数据存储器,她可以被定义为数据/地址第八位。

14、在FIASH编程时,P0口作为原码输入口,当FLISH 进行校验时,P0输出源码,此时P0外部必要被拉高。P1口:P1口是一种内部提供上拉电阻8位双向I/O口,P1口缓冲器能接受输出4TTL门电流。P1口管脚写入1后,被内部上拉位高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉缘故。在FLISH 进行校验时,P1口作为第八地址接受。P2口位一种内部上拉电阻8位双向I/O口,P2口缓冲器可接受,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因而作为输入时,P2口管脚被外部拉低,将输出电流。这是由于内部上拉缘故。胖口当用于外部程序存储器

15、或16位地址外部数据存储器进行存取时,p2口输出地址高八位。在给地址“1”时,她运用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出器特殊功能寄存器内容。P2口在FLISH编程和校验时接受高八位地址信号和控制信号。P3口:P3口管脚是八个带内部上拉电阻双向I/O口,可接受输出4个TTL门电流。当P3口写入“1”后,她们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流,这是由于上拉缘故。P3口也作为AT89C51某些特殊功能口,如下所示:P3口管脚备选功能:P3.0 RXD (串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0

16、)P3.3 /INT1(外部中断1)P3.4 T0(计时器0外部输入)P3.5 T1(计时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3口同步为闪烁编程和编程校验接受某些控制信号RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期高电平时间。ALE/PROG:当访问外部存储器时,地址所存容许输出电平用于锁存地址低位字节。在FLISH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变频率周期输出正脉冲信号,此频率为振荡器频率1/6。因而它可用作对外部输出脉冲或用于定是目。然而要注意是:每当用作外部数据存储器是,将跳过一种ALE脉

17、冲。如想禁止ALE输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。此外,该引脚被略微拉高,如果微解决器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器选通信号。在有外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部存储器时,这两次有效/PSEN信号讲不浮现。/EA/VPP:当/EA保持低电平时,则在此期间外部存储器(0000H-FFFFH),不论内部与否有程序存储器。注意加密方式1时,/EA将内部锁存为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP

18、).XTAL1:反响放大振荡器输入及内部时钟工作电路输入XTAL2:来自反响振荡器输出。3.I/O口引脚:a:P0口,双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用;b:P1口,8位准双向I/O口c:p2口,8位准双向I/O口,与地址总线(高8位)复用;d:P3口,8位准双向I/O口,双功能复用。(2)传感器LM1042传感器由液位检测专用集成芯片LM1042和一组热探针构成,实现液位信号到电压信号转换。LM1042使用热阻探针技术来测量非可燃性液体液面高度,它能提供一正比于液位高度输出,可进行单次或重复测量,所有控制热阻探针、检测热阻探针短路和开路所需监控电路都集成在LM1

19、042芯片内部。此外该芯片还可采用其她传感器信号或线性输入作为输入信号。该器件采用16脚DIP封装。芯片重要特点如下;集成有热阻探针控制电路;可单次测量或重复测量;具备探针短路、开路检测功能;电源或控制输入端具备50V瞬态电压保护电路;电源范畴7.518V;内部有电源调节器;可在-40+80工作温度范畴内工作。(3)A/D转换芯片AD574AAD574A是美国模仿数字公司推出单片高速12位逐次比较型A/D转换器,内置双极性电路构成混合集成转换显片,具备外接元件少,功耗低,精度高等特点,并且具备自动较零和自动极性转换功能,只需外接少量阻容元件即可构成完整A/D转换器,其重要功能特性如下:辨别率:

20、12位非线性误差:不大于1/12LBS或1LBS转换速率:25us模仿电压输入范畴:0-10v和0-20v,0-5v和0-10v两挡四种电源电压:15v和5v数据输出格式:12位/8位芯片工作模式:全速工作模式和单一工作模式(4)数码管驱动芯片ICM7218ICM7218是INTERSIL公司生产一种性能价格比较高通用8位LED数码管驱动电路,28脚双列封装,是一种多功能LED数码管驱动芯片,可与各种单片机接口使用。ICM7218输出可直接驱动LED显示屏,不需外接驱动电路,其构成显示电路构造简朴,使用以便。其引脚图和内框图如图2-4和2-5所示。 图2-3 ICM7218引脚图88静态RAM

21、十六进制译码器段驱动器位驱动器振荡器控制器多位器写地址计数器ID0-ID7WR MODE 段码和小数点位选信号 图2-4 ICM7218内部构造 (5)蜂鸣器在单片机检测到液位超限时,将由单片机驱动蜂鸣器实现声音报警。(6)继电器继电器是具备隔离功能自动开关元件,在咱们设计当中重要来做自动控制作用,咱们采用+5V直流电来控制220V交流电,以达到控制水泵作用,由于是在这里是以一种弱电来控制强电因此安装和使用过程当中咱们一定要注意用电安全注意事项。电磁式继电器普通由铁芯、线圈、衔铁、触点簧片等构成。只要在线圈两端加上一定电压,线圈中就会流过一定电流,从而产生电磁效应,衔铁就会在电磁力吸引作用下克

22、服返回弹簧拉力吸向铁芯,从而带动衔铁动触点与静触点(常开触点)吸合。当线圈断电后,电磁吸力也随之消失,衔铁就会在弹簧反作用力返回本来位置,使动触点与本来静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中导通、切断目。对于继电器“常开、常闭”触点,可以这样来区别:继电器线圈未通电时处在断开状态静触点,称为“常开触点”;处在接通状态静触点称为“常闭触点”。其中光电耦合器是以光为媒介传播电信号一种电一光一电转换器件。它由发光源和受光器两某些构成。把发光源和受光器组装在同一密闭壳体内,彼此间用透明绝缘体隔离。发光源引脚为输入端,受光器引脚为输出端,在本设计当中发光源为发光二极管,受光器为光敏三

23、极管。在本设计当中咱们采用光电耦合器构成开关电路作用,可以较好地将单片机信号稳定地送给继电器驱动继电器闭合。(7)水泵:定义:普通把提高液体、输送液体或使液体增长压力 ,即把原动机机械能变为液体能量从而达到抽送液体目机器统称为泵。分类:依照不同工作原理可分为容积水泵、叶片泵等类型。容积泵是运用其工作室容积变化来传递能量;叶片泵是运用回转叶片与水互相作用来传递能量,有离心泵、轴流泵和混流泵等类型。工作原理:1 、容积式泵:运用工作腔容积周期变化来输送液体。 2 、叶片泵 :运用叶片和液体互相作用来输送液体。本系统中可选用普兰迪2202水泵。2.3硬件原理图图2-5电源电路(1)电源某些本系统供电

24、为市电AC220v,经变压器T1降为交流18v,经整流桥堆整流后得到脉动直流电压18v,再分别经三端稳压器LM7805、LM7815、LM7915分别得到VCC(+5v)、+15v和-15v ,其中电解电容C1、C3、C22、C5、C7、C9起滤波作用,C2、C4、C23、C6、C8、C10是旁路电容,起抑制干扰作用。电源电路如图2-5所示。(2)传感器电路图2-6传感器电路传感器电路如图2-6 所示。在传感器电路中,7脚和10脚是用于探针2调节,由于本系统只用到探针1,故只需将7脚和10脚接地即可;1脚是热阻探针输入端;5脚是探针故障检测端;6脚是电源端;3,4脚分别接PNP管发射极和集电极

25、用于给探针提供200MA固定电流;16脚为模仿电压输出端,输出与液位成正比模仿电压;12,13脚用来调节探针测量周期;9,14脚外接两个电容作为探针记忆电容,记忆探针电压值。(3)A/D转换电路A/D转换电路如图2-7所示。图2-7 A/D转换电路本系统通过采用AD574A芯片,其中1脚为电源端;10脚输出原则10V电压通过变阻器R4连接到8脚给芯片内部解码网络供电;9脚为地端;12脚外接电阻网络用于调节零点,13脚为0-10V量程输入端;14脚为0-20V量程输入端,此系统不用;7,11脚为基准电压输入端;16-19脚接单片机P1.4-P1.7用于输出低4位,20-27脚接单片机P1.0-P

26、1.7用于输出高8位;28脚输出转换完毕信号,6,3,4,5脚用于控制芯片工作方式,2脚接地代表芯片用于12位转换。当传感器信号输入13脚,单片机控制6脚为高电平,3,4,5脚为低电平时,芯片使28脚输出低电平并启动12位A/D转换,转换完毕后置位28脚,容许单片机读取数据,当单片机检测到28脚为高电平,控制6脚为高电平,3,4,5脚为低电平读取高8位,再4,6脚为高电平,3,5脚为低电平读取低4位,这样就完毕一次A/D转换和数据读取。(4)单片机外围电路及蜂鸣器电路单片机外接12MHZ晶振,在9脚外接手动复位电路;P0.3接蜂鸣器用于报警。电路如图2-8所示:图2-8 单片机外围及蜂鸣器电路

27、图2-9 ICM7218A显示电路(5)ICM7218A显示电路ICM7218A显示电路如图2-9所示。本系统显示用4位七段数据管由数据管专用驱动芯ICM7218A驱动,27,3,1,25,2,24,26脚分别接数据管ag,15,16,23,20脚为位选,分别控制4位数码管亮灭,ID07为数据线,接单片机P2口,WRITE,MODE是写控制位和模式控制位,分别接单片机P0.6,P0.7。(6)继电器控制水泵加水电路K1该电路由继电器RL1和闭合开关、光电耦合器、水泵、R7、R8、R9、R10以及D2、Q3等构成。当水位在低水位时单片机给P3.1送出一种高电平导通光电耦合器然后光电耦合器驱动Q3

28、导致继电器闭合从而让220V交流电接通使水泵加水。U3GDOUHEJUMP RELAY-SPDT123CON3R91KR152KR72KR1010KD7Q3NPN+5V+5V图2-10 继电器控制水泵加水电路原理图第三章 系统软件设计3.1软件功能概述在系统硬件拟定后来,功能完善软件可以较好指引和协调硬件工作,可使系统发挥其最大作用,并且便利后来更新换代升级。一种完整系统都离不开对系统状态监控,为了更好协调软件,硬件各个某些正常工作就必要对整个系统进行严密监控。在本系统中定期器T0中断服务程序担任数据读取,解决和输出显示任务,每隔一定期间对A/D转化进行一次采样,并进行相应解决,在通过LED驱

29、动电路来实现液位显示。而主程序完毕任务相对简朴,它只是完毕初始化和启动T0定期工作。显示液位高度传感器测量启动水泵继续供水启动A/D转换报警提示启动水泵关闭水泵停止供水报警提示关闭水泵结 束 开 始测量值高于上限值 测量值等于设定值测量值低于下限值YYYNNN图3-1主程序设计开 始 转换完毕 STS=1? 写入控制字 读取高8位 计算液位值 修改控制字 逐微分离液位值并将各位放到ADV中 读取低4位 结 束 重装ID初值 T0 c+ 记时次数T0c清零 T0计时20次 AD读取子程序 启动AD转换 LED显示 判断报警 开 始 结 束 N N Y YY图3-2定期器T0中断服务子程序 图3-

30、3 A/D转换子程序3.2 主程序设计主程序如图3-1所示。系统开始工作时,由LM1042传感器检测出水位深度,经A/D转换后,送入单片机与设定值相比较。如果测量值高于上限值则发出警报并关闭水泵;如果测量值低于下限值则发出警报并启动水泵供水;如果测量值等于设定值则关闭水泵停止供水,并由显示水位值,否则启动水泵继续供水且显示水位值。返 回开 始ICM置于中作模式1写模式控制字ICM置于中作模式0 输出液位值8位完? 显 示YX图3-4 LED显示子程序3.3定期器T0中断服务程序T0中断服务程序完毕任务比较多,重要涉及:每一秒启动一次A/D转换,读取并解决数据,显示和超限报警。T0中断服务程序流

31、程图如图3-2所示:其中读取和解决数据放到A/D值读取子程序;显示放到LED显示子程序;由于液位是一种变化比较缓慢量,故只需每隔一定期间检测一次即可满足需要,在此选定一秒检测一次,即1秒进行一次A/D转换。由于本系统所用晶振为12MHZ,故定期器每计时一次用时为1/12*10(-6)*12S=1us,因而定期器为16位定期器,故最多计时216=65536次,即计时65536US=65.536MS,此时用定期器T0定期50ms,则当定期器定期20次,共定期20*50MS=1S,满足系统需要。据TC=M-T/T计数(T=50ms,T计数=1us,M=216)得TC=15536则定期器初值为TH0=

32、3C,TL0=B0。超限预警则是通过把A/D转换值与上下限值比较得出液位与否有超限,若超限则输出高电平驱动蜂鸣器报警。3.4 A/D转换子程序A/D转换子程序重要完毕A/D值读取以及数据解决。由于AD574A进行A/D转换过程中第28脚STS=0,转换完毕后STS=1,故启动A/D转换后要先检测STS,若STS为高电平才进行A/D值读取操作,A/D值读取要先写读高8位控制字,然后读取高8位,再写入读低4位控制字然后读取低4位,将读获得到12位数据用于计算得到液位值,然后再对液位值逐渐分离,分别得到数码管显示饿百位,十位,个位和一位小数位,并将它们放到字符数组A/D中,用于LED显示,A/D转换

33、子程序流程图如图3-3所示。3.5 LED显示子程序LED显示子程序重要完毕液位值显示,本系统采用数码管专用驱动芯品ICM7218驱动4位七段数码管用于液位值显示,只需要把要显示数据写入ICM7218RAM中即可,由于该芯品默认驱动八位数码管,必要写入8字节显示数据,而此系统只用低4位,只需把高4位置为随机数即可,故先通过ICM7218控制位WR=0和MODE=1使芯片工作于方式1,写入控制字,然后使MODE=0使芯片工作于方式0,写入8字节数据即可完毕液位值LED显示。LED显示子程序流程图如图3-4所示。第四章 结 论本次毕业设计重要是由LM1042内部转换电路网络转换为与液位成线性关系电

34、压信号,再由12位逐次逼近型A/D转换芯片AD574A将模仿信号转换为数字信号,实现液位信息输入,AT89C51从AD574A读取液位信息后进行数据解决和超限判断,随后将解决过数据输出到数码管驱动芯片ICM7218RAM中,由ICM7218实现数码管静态显示,若液位超限则由单片机驱动蜂鸣器报警。通过这次设计,更加进一步理解和掌握了这方面知识,对本专业结识也更加进一步,使自己对本专业更加热爱,对专科四年学习做了进一步总结,更加明确了自己学习目的和方向,由诸多感悟和体验心得。并且,对工程设计流程和环节有了清晰结识,为自己日后学习和研究打下了坚实基本。在这次系统设计过程中,我深刻结识到要做好一种项目

35、,不但需要学好自身有关知识,还要广泛涉猎其她学科知识。不但需要有坚实知识,还要有坚强意志和精益求精精神,追求,只有这样才干做好工程项目。才干成为一名合格人才。参照文献1 刘守义、钟苏.数字电子技术.西安电子科技大学出版社,.2 孙亮、杨鹏.自动控制原理.北京工业大学出版社,修订版.3 王新.微型计算机控制技术.中华人民共和国电力出版社,.4 张毅刚、彭喜元.单片机原理及接口技术.人民邮电出版社,.5 梁森,欧阳三泰,王侃夫.自动检测技术及应用.北京:机械工业出版社,.6 莫正康.电力电子应用技术.机械工业出版社,.7李华.MCS-51系列单片机实用接口技术.M.北京:北京航空航天大学出版社,1

36、993.8王毅.单片机器件应用手册M.人民邮电出版社,1995.9王昌明.传感与测试技术M.北京:北京航空航天大学出版社,.10李谋主.位置检测与数显技术M. 北京:机械工业出版社,1993.11张毅刚.MSC_51单片机实用子程序设计.哈尔滨工业大学出版社,.12占跃华.C语言程序设计.北京邮电大学出版社,.13涂时亮.单片机软件设计技术M.重庆:科学文献出版社重庆分社,1987.14刘存.当代检测技术M.北京:机械工业出版社,.158-bit Microcontroller With 4K Bytes Flash AT89C51.ATMEL,. 致 谢在此论文最后完毕之际,向所关于怀和协助

37、过我教师、同窗和朋友表达深深感谢! 一方面感谢信息工程系领导和教师对我关怀和协助,感谢她们为我提供便利条件,使我毕业设计能顺利完毕。 同步,我要衷心感谢郭泉江教师,从毕业设计开始到毕业论文最后定稿,在此期间戴教师给了我细心指引和协助,郭教师渊博知识、诚恳为人、严谨治学态度深深感染了我,让我终身受用。在此,我向我指引教师致以诚挚谢意和深深敬意。 此外,在我撰写论文期间,还得到了同班同窗支持和勉励,我要特别感谢赖志颖和涂东方等同窗,每当我遇到困难进行不下去时候,她们都能耐心细致地给我解说,协助我度过了一种又一种难关,我毕业设计和论文才得以顺利地进行,在此我衷心地对她们说声:”谢谢!”。 附 录附录

38、一 主程序代码#include#define A_DIN P1#define ICMOUT P2sbit Buzzer=P03;sbit ICMMODE=P06;sbit ICMWR=P07;sbit STS=P30;sbit RC0=P31;sbit A0=P32;sbit CS0=P33;sbit CE=P34;unsigned char A_DV0,A_DV1; /A_D转换得到值unsigned Hmax,Hmin; /上下限值unsigned char A_DV4; /当前液位值float U1,U2,H;void T0Run(void); /T0启动子程序void Icmdis(u

39、nsigned char A_DV); /LED显示子程序void A_DRun(void); /启动A_D转换子程序unsigned char A_DReA_D(void); /A_D转换子程序int AAA;bit Bjj(int AAA,unsigned Hmax,Hmin); /数值比较函数char T0c=0; /T0计时次数 main() P0=0x07; /设立输入位 P1=0xff; P3=0x01; Hmax=3000; /上限值,依照实际状况设定 Hmin=10; /下限值 ,依照实际状况设定 T0Run();void T0Run(void) /T0启动子程序 IE=0x8

40、2; /启动中断T0 TMOD=0x01; /设立T0工作于模式1 TH0=0x3C; TL0=0xB0; /送入计数初值 TR0=1; /启动定期器T0void time0(void) interrupt 1TH0=0x3C;TL0=0xB0; /重装计数初值T0c+;if(T0c19) /如果计时20次即1s T0c=0;A_DRun(); /启动A_D转换 A_DReA_D();Icmdis(A_DV); Bjj(AAA,Hmax,Hmin); void A_DRun(void) /启动A_D程序 RC0=1; /启动12位转换CS0=0;CE=1;A0=0;unsigned char A_DReA_D(void) int A_DV2;float A_DV3;A0=0;RC0=0;A_DV1=A_DIN; /读取高8位A0=1;A_DV0=A_DIN; /读取低4位A_DV0=A_DV0/8;A_DV2=A_DV1*16+A_DV0; /计算A_D转换值A_DV3=(A_DV2-U1)*H/(U2-U1); /计算液位值AAA=A_DV3*10;A_DV0=AAA%10;

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服