基于单片机的多功能参数检测系统设计与实现.doc

上传人:文库蛋蛋多 文档编号:2986652 上传时间:2023-03-07 格式:DOC 页数:51 大小:503.50KB
返回 下载 相关 举报
基于单片机的多功能参数检测系统设计与实现.doc_第1页
第1页 / 共51页
基于单片机的多功能参数检测系统设计与实现.doc_第2页
第2页 / 共51页
基于单片机的多功能参数检测系统设计与实现.doc_第3页
第3页 / 共51页
基于单片机的多功能参数检测系统设计与实现.doc_第4页
第4页 / 共51页
基于单片机的多功能参数检测系统设计与实现.doc_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《基于单片机的多功能参数检测系统设计与实现.doc》由会员分享,可在线阅读,更多相关《基于单片机的多功能参数检测系统设计与实现.doc(51页珍藏版)》请在三一办公上搜索。

1、摘 要本文论述了一种基于单片机的多功能参数检测系统的设计与实现过程。系统采用了单片机STC89C52为主控芯片,设计了电流电压转换电路,能够将现场的温度、压力、流量、液位等物理量所对应的4-20mA电流信号转换成1-5V的直流电压信号,并提供给A/D转换电路。根据系统测量的模拟量较多的特点,使用ADC0809作为A/D转换芯片。使用LCD1602作为显示器件,能够实时显示采集的温度、压力、流量、液位等物理量。同时,系统还设计了参数设置与报警提示等功能电路。论文共分三部分介绍了基于单片机的多功能参数检测系统设计过程。第一部分,主要介绍了系统的方案设计,明确了系统的功能要求,给出了系统方案框图,并

2、对部分元器件的选择、软硬件开发环境进行了介绍;第二部分,主要介绍了硬件电路的设计过程,包括主要器件的介绍、与单片机接口电路设计思路叙述;第三部分,对软件部分的设计思路做了介绍,并分别数据采集、显示、按键处理等各功能部分设计过程进行了叙述。关键词:单片机;电流电压转换;A/D转换;LCD1602;声光报警AbstractThis paper discusses a kind of multi-functional parameter detection system based on single chip microcomputer.This design use the single chi

3、p microcomputer as the controller STC89C52 chip,using current voltage conversion circuit can change the scene of the physical quantities,such as temperature,pressure,flow,level of 4-20 mA current signal into 1-5 V voltage signal,and provide for A/D conversion circuit.According to the characteristics

4、 of the measurement system that there are much more analog quantities,ADC0809 is used as A/D conversion chip,using LCD1602 as a display device,can collect real-time display of temperature,pressure,flow and liquid level.At the same time,the system also designed the circuit for parameter setting and s

5、ound and light alarming function.This paper is divided into three part introduces multi-functional parameter detection system based on single chip microcomputer.The first part,mainly introduced the system design,the functional requirements of system,the system block diagram is given,and the selectio

6、n of some components,hardware and software development environments are introduced;The second part,mainly introduces the design process of hardware circuit,including the main device,single chip microcomputer interface circuit design ideas of narrative;The third part,the design idea of the software p

7、art is presented,and various functions such as data acquisition,display and buttons processing are discusses.Key words: Single chip microcomputer; Current voltage conversion; A/D conversion; LCD1602;Sound and light alarm目 录绪 论11 方案设计21.1 总体框架的设计21.2 单片机开发环境的选择31.2.1 电路图绘制软件31.2.2 Keil_C软件42 硬件电路设计62

8、.1 传感器的选型62.2 单片机最小系统设计62.2.1 单片机的选型62.2.2 时钟电路与复位电路82.2.3 单片机使用注意事项102.3 电流电压转换电路设计112.4 模拟量采集电路设计132.4.1 ADC0809概述132.4.2 ADC0809与单片机接口电路152.5 显示电路设计162.5.1 LCD1602引脚结构162.5.2 LCD1602主要技术参数及特性162.5.3 LCD1602与单片机的接口电路172.6 按键接口电路设计172.7 报警电路设计182.8 串行口功能设计192.8.1 RS-232串行接口192.8.2 MAX232简介203 软件部分设

9、计223.1 主程序工作流程223.2 A/D转换子程序233.3 数字滤波及标度变换程序设计243.4 显示程序设计253.5 按键处理程序设计273.6 报警程序设计28结 论29致 谢30参考文献31附录A 硬件原理图32附录B 程序代码33附录C 实物图46绪 论随着计算机技术的发展,数据采集系统的应用也日益广泛1。数据采集是工业控制系统中至关重要的一个环节,在生产过程中,往往需要随时检测各个环节的温度、液位、流量及压力等参数。同时,还要对某个检测点的任意参数进行随机查询,将所得到的检测结果提取出来以便进行比较做出决策,调整控制方案。此外,在科研过程中,运用数据采集系统可获得大量的动态

10、信息,也是获取科学数据的重要手段之一。数据采集系统直接影响控制系统的决策。数据采集系统,从某种意义上来说,是用计算机控制的多路数据自动检测或循环检测的、能够对数据实行存储、处理、分析计算以及从检测的数据中提取有用的信息,并能够供显示、记录、打印功能的系统2。在过去的几十年里,随着信息领域技术的发展,数据采集方面的技术也取得了很大的进步,采集数据的信息化是目前社会的发展主流方向。许多领域都用到了数据采集,在地质勘探、科学实验、工业生产过程、日常生活等领域已得到应用。 单片机系统在开发过程中,程序设计语言的选择尤为重要。C51提供高效的代码,结构化的编程和丰富的操作符,多被采用。它是一种编译型程序

11、设计语言,兼顾了多种高级语言的特点,并具备汇编语言的功能。C51有功能丰富的函数库、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对硬件的控制。C51是一种结构化程序设计语言,它支持当前程序设计中广泛采用的自顶向下结构化程序设计技术。此外,C51程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用C51进行程序设计已成为软件开发的一个主流3。用C51来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。尽管现在以微机为核心的可编程数据采集与处理采集技术的发展方向得到了迅速的发

12、展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响。相较于数据采集板卡成本和功能的限制,单片机具有高性能、低电压、低功耗、低价格等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。这就使得以单片机为核心的数据采集系统在许多领域得到了广泛的应用。1 方案设计该部分主要是针对课题的要求及最终要实现的功能进行总体的方案设计,设计出最佳框架和各个模块,以便于硬件选型、电路设计和软件编程。1.1 总体框

13、架的设计该系统以单片机作为主控芯片,现场要测量的温度、压力、流量、液位等物理量均为模拟的非电量信号,因此,需要选用对应的传感变送装置,将上述非电量信号变换为标准电流信号,电流信号抗干扰能力强。单片机只能接收数字信号,又因为要测量的模拟量较多,所以必须有A/D转换器,测量结果需要显示。设置按键对参数的检测方式及报警值进行设置;同时,设置声光报警功能,当采集参数的值超过预设上限值或低于预设下限值时蜂鸣器和报警指示灯发生相应的变化,用于提示。基于单片机的多功能参数检测系统,其主要实现的功能如下: 温度检测:对水温进行检测并转化为标准电流信号,通过电流电压转换电路、A/D转换电路、单片机最终将温度值显

14、示;压力检测:对管道压力进行检测并转化为标准电流信号,通过电流电压转换电路、A/D转换电路、经过单片机处理并显示在显示器上;流量检测:对管道流量进行检测并转化为电流信号,通过电流电压转换电路、A/D转换电路、单片机将管道流量值显示出来;液位检测:可以对水槽内液位进行检测并转化为电流信号,通过电流电压转换电路、A/D转换电路、单片机最终将水槽内液位值显示;按键功能:可以通过按键选择对温度、压力、流量、液位四个参数进行单独检测还是循环检测,可以对报警上下限进行设置;显示功能:单独或轮流显示与刷新温度、压力、流量、液位四个参数的测量值;报警功能:当实际测量值高于预设上限值或低于预设下限值时,声光报警

15、。根据课题要求及其所需要实现的功能最终设计出总体框架,系统框图如图1.1所示。按键输入声光报警单片机显示AD转换电流电压转换温度检测检测压力检测流量检测液位检测图1.1 系统框图1.2 单片机开发环境的选择1.2.1 电路图绘制软件本设计中电路图的设计使用常用的电路图绘制软件Protel99 SE,该软件功能强大,开发系统具有中文版本,便于使用,其特点介绍如下:Protel99 SE共分5个模块,分别是对于电路原理图的设计、对于PCB开发板的设计(针对信号完整性能分析包含在内)、对于原理图混合信号部分的仿真、自动布线器以及PLD设计。以下针对Protel99SE的一些最新功能进行介绍4可以生成

16、多余30种电气连接网络表;拥有较为强大的编辑全局功能;某一级器件从原理图中被选择,该器件在PCB图中也将被选择;可以一起运行PCB和原理图,并允许在打开的PCB图和原理图之间相互搜索元器件、网络、引脚;原理图至PCB图和PCB图到原理图都可对元器件标号进行注释,以实现PCB图和电气原理图设计上的一致性;符合国际标准标题栏输出和GB4728国际标准库即国际化设计要求;简单方便使用的数模混合仿真(兼容SPICE 3f5);对于原理图设计PLD和CUPL语言都支持使用,标准JED下载文件可以被生成;PCB可设计16个电源-地层、32个信号层和16个机加工层; 拥有超强的“规则驱动”设计环境,支持批处

17、理的和在线的设计规则检查; 拥有智能覆铜功能,根据具体情况覆铜可实现自动重铺;提供多种工业中常用的标准电路板作为模版; 拥有放置汉字的功能; 可输入和输出DXF格式文件和DWG格式文件,可以和AUTECAD等软件进行数据之间的交换; 智能封装导航对PGA和BGA封装十分方便; 打印预览功能简便实用,打印结果的控制无需修改PCB文件; 十分独特的3D显示,安装事物后的效果可在压板前看到; 可以轻松实现输出测试点报告、贴片机文件、钻孔文件、材料清单、光绘文件等的CAM处理; 便利的测量工具与反射和串扰仿真的波形显示结果相互结合;拥有解决信号完整性问题的专家导航5。1.2.2 Keil_C软件单片机

18、的设计不仅需要硬件,同样也需要软件,有两种方法可使汇编语言源程序变成CPU可执行的机器码:一种方法是机器汇编,另一种方法是手工汇编,手工汇编的方法现今已经很少使用。采用汇编软件将源程序变成机器码的方法为机器汇编方法,A51汇编软件为早期使用于MCS-51的编程软件,随着不断发展的单片机开发技术,编程软件已由汇编软件发展为高级语言,目前普遍应用在开发MCS-51系列单片机的汇编软件为Keil编程软件。Keil软件近年来已纷纷得到了各仿真机厂商的全面支持。Keil编程软件不仅拥有连接器、库管理、C语言编译器、宏汇编的开发环境还拥有强大功能的仿真调试器开发环境,集成的开发环境uVision将以上部分

19、组合一起6。Keil编程软件的运行需要Pentium或以上的CPU、16MB或更多RAM、20MB以上硬盘空间的WIN98、NT、WIN2000、WINXP等操作系统。熟练掌握Keil软件的操作对于52系列单片机的使用者来说是十分必要的,如果使用C语言编程,那么Keil软件是我们最应该熟悉的,即使使用汇编语言编程而不使用C语言,其强大的软件仿真调试工具和方便易用的集成环境也将起到事半功倍的效果。Keil集成开发环境是基于MCS-51系列单片机,能够完成从工程建立、编译、链接、目标代码生成、软件模拟和硬件仿真等完整的开发过程,Keil软件的C语言编译工具产生代码的准确性高、效率高且灵活方便,目前

20、很多仿真器的仿真环境都与Keil兼容。Keil集成开发环境的主要功能有以下几点:Keil集成开发环境:它将工程管理、源程序编辑和程序调试和仿真集成在一起,完成项目开发;C51交叉编译器:从C51源代码生成可重定位目标代码;A51编译器:从51系列的汇编源代码生成可重定位的目标代码;BL51连接定位器:组合由A51和C51生成的可重定位的目标代码,形成绝对目标模块;LIB51库管理器:从目标模块生成链接器可以使用的库文件;OH51目标文件到HEX格式的转换器:从绝对目标模块生成HEX文件;RTX-51实时操作系统:简化了实时应用软件的开发与调试过程;设计的软件部分,使用Keil作为编程开发软件,

21、对52单片机进行C语言的编辑与软件仿真;2 硬件电路设计硬件部分采用传感器件完成对温度、压力、流量、液位四个参数的采集,采用单片机STC89C52作为主控芯片,将采集的数据显示在LCD1602上,其中硬件的设计部分包括:传感器选型、单片机最小系统电路设计、电流电压转换电路设计、模拟量采集电路设计、显示电路设计、按键接口电路设计、报警电路及串行口功能设计,下面将对各个设计部分做详细的介绍。2.1 传感器的选型需测量的温度为水的温度,选择温度传感器的测量范围应为0100,且选择传感器要求精度高、转换速度快、简单实用,所以选择Pt100作为温度传感器;需测量的压力测量范围为01.4MPa,所选压力传

22、感器BP801、电源为24VDC、输出为420mA电流信号;需测量的流量测量范围为00.6立方米/小时,所选流量传感器采用涡轮式传感器LWGY-15A、精度为0.5%、输出为420mA电流信号;需测量的液位测量范围为11000毫米,所选液位传感器型号为BPY800、精度为0.5%、供电电源为24VDC、输出为420mA电流信号。2.2 单片机最小系统设计单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统,本设计最小系统包括:单片机、时钟电路、复位电路。2.2.1 单片机的选型选用的单片机型号是STC89C52。STC89C52引脚如图2.1所示,是一种带8K字节闪

23、烁可擦除可编程的只读存储器(FPEROM-Flash Programmable and Erasable Read Only Memory)的低压电、高性能的微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,12时钟/机器周期和6时钟/机器周期可以任意选择。1、主要特性工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V单片机);片上集成512字节RAM;通用I/O口(32个),复位后为:P0/P1/P2/P3是开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻;ISP(在系统可编程)/

24、IAP(在应用可编程),不需要专用编程器,不需要专用仿真器,可通过串口(RXD/P3.0,TXD/3.1)直接下载用户程序,几秒钟即可完成一片,准双向口/弱上拉,P0口是漏极;具有EEPROM功能;具有看门狗功能;共3个16位定时器/计数器,即定时器T0、T1、T2;工作频率范围:040MHZ,实际工作频率可达48MHZ;外部中断4路,下降沿中断或低电平触发电路,掉电模式可由外部中断低电平触发中断方式唤醒。此外,STC89C52设计和配置了振荡频率可为0Hz并可通过软件设置节电模式。此模式下,CPU暂时停工作,此时外部中断系统、RAM定时计数器,串行端口可以继续工作,掉电模式使振荡器冻结从而将

25、RAM的数据保存,停止芯片的其它功能直至硬件复位或外中断激活。与此同时STC89C52芯片还具有PLCC、TQFP及PDIP等三种封装模式,可以满足不同产品的需求。2、单片机管脚说明其中包括4个8位并行I/O接口线、6条控制信号线和2条电源线并行口P0(P0.0P0.7):P0口为一个8位漏极开路双向I/O接口,8TTL门电流可被每个引脚吸收。P0口的管脚第一次写入高电平时,被称为高阻态输入。它可以被定义为地址/数据的低八位,应用外部程序数据存储器进行存取时可使用P0口。应用FIASH编程时,P0口可作为原码输入口,在FIASH进行校验时,P0口可作为输出口输出原码,此时P0口外部必须被拉高。

26、连接外部存储器或扩充外设时,作为低8位地址线和高8位数据线。并行口P1(P1.0P1.7):P1口是一个内部提供上拉电阻的8位双向I/O接口,4TTL门电流可被P1口缓冲器接收、输出。P1口管脚写入高电平后,被内部上拉为高,可作为输入,当P1口被外部下拉为低电平时,P1口将输出电流,这是由于内部为上拉状态的原因。当FLASH校验和编程时,P1口可用作低八位地址接收,P1口还具有第二功能,可以通过对单片机进行设置,将P1口作为A/D转换口使用。在编程和校验试接收低8位地址,每一位可以独立的输入/输出。并行口P2(P2.0P2.7):P2口为一个内部提供上拉电阻的8位双向I/O接口,4TTL门电流

27、可被P2口缓冲器接收、输出。当P2口被写入高电平时,其内部上拉电阻将其管脚拉高,并作为输入。作为输入时,P2口的管脚被外部拉为低电平时,P2口将输出电流,这是由于内部为上拉状态的原因。当应用16位地址外部数据存储器或外部程序存储器时,P2口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收控制信号和高八位地址信号7。并行口P3(P3.0P3.7):P3口为一个8位准双向I/O接口,另外还兼有中断(P3.2(外部中断0)、P3.3(外部中断1)、定时/计数器(P3.4(定时/计数器0)、

28、P3.5(定时/计数器1)、串行通信(P3.0(串行口输入)、P3.1(串行口输出)、读/写(P3.6(外部数据存储器写信号)、P3.7(外部数据存储器读信号)等控制功能。VCC供电电压;GND接地。图2.1 STC89C52单片机引脚图2.2.2 时钟电路与复位电路1、时钟电路单片机芯片内部有一个反向放大器构成的振荡器,XTAL1和XTAL2引脚分别为振荡器的输入端和输出端,时钟可以由内部或外部产生。内部时钟电路是在XTAL1和XTAL2引脚上接一定时元件,内部振荡电路就产生自激振荡,定时元件通常是由石英晶体(晶振)和电容组成谐振电路。晶体振荡频率可在1.2MHz12MHz之间选择,电容C1

29、、C2的取值在5pF30pF之间。外部时钟电路为XTAL1接地,XTAL2接外部振荡器,振荡器频率为不低于12MHz的方波信号。设计采取的是内部时钟电路如图2.2所示。图2.2 晶振电路原理图2、复位电路单片机有两种复位方式,上电复位和开关复位,上电复位在上电瞬间RC电路充电,RST引脚上出现正脉冲,只要正脉冲保持100ms以上,就能使单片机有效复位。由于某种干扰,单片机不能正常复位,就需要加开关复位,当开关按下时,单片机复位。3、复位电路的用途单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出

30、现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。单片机复位电路如图2.3所示。图2.3 复位电路原理图4、复位电路的工作原理在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位,所以可以通过按键的断开和闭合在运行的系统中控制其复位。在电路图中,电阻大小为10k,电容大小为0.1uF。所以根据公式,可计算出电容充电电压为单片机电源电压(5V)的0.7倍,充电到电源电压的0.7倍就是3.5V,所需时间为10K*0.1UF=1S。也就是说在电脑启动的1S内,电容两端的电压值在03.5V增加。这个时候10K电阻两端电压值从51.5V减少(串

31、联电路各处电压之和为总电压)。所以在1S内,单片机的RST引脚接收的电压值在5V1.5V之间。在5V工作正常的51单片机中低电平信号为小于1.5V的电压信号,高电平信号则为大于1.5V的电压信号。所以在开机1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为1S左右)。在单片机启动1S后,电容C两端的电压持续充电为5V,这时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在1S内,从 5V释放到变为了1.5V甚至更

32、小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平,单片机系统自动复位。对于片内有ROM/EPROM/E2PROM的单片机,用一片这种芯片构成的最小系统简单、可靠。构成最小系统时,只要将单片机接上时钟电路和复位电路,将EA非接高电平即可。最小系统时,P0、P1、P2、P3都可用作I/O线,但由于集成度限制,片内存储器容量有限,因此,最小系统主要用于一些简单的控制系统中。2.2.3 单片机使用注意事项对于31脚(EA/VPP),当接高电平时,单片机在复位后从内部ROM的0000H开始执行,当接低电平时,复位后直接从外部ROM的0000H

33、开始执行,这一点是初学者容易忽略的;晶振电路容易在焊接时漏掉电容需要接地,并且使用电容的大小一定要选准,晶振电路部分一定要焊接完全,否则容易使晶振电路出现虚接,影响设计;复位电路部分接口的电阻与电容选择要正确,要保证在电容充满电时,单片机有足够的时间进行复位;单片机的电源部分引脚接对,使用单片机时看单片机的缺口处来找单片机的引脚顺序;单片机在使用中P0口要加上拉电阻,一般为10K,因为P0口的驱动能力较低。2.3 电流电压转换电路设计由于前端设备温度、压力、流量、液位传感器所输出的为标准电流信号,而电流电压转换电路作用是将传感器输出的420mA标准电流信号转换为15V标准电压信号作为A/D转换

34、器的输入。电流电压的转换是通过高精度250欧电阻来实现的,在转换完的电压信号后加一电压跟随器。电压跟随器是用一个三极管构成的共集电路,电压跟随器,顾名思义,就是输入电压与输出电压是相同的8,也就是说,电压跟随器的电压放大倍数恒小于且接近于1,电压跟随器的显著特点是输出阻抗低,而输入阻抗高,这使得它在电路中可以起到阻抗匹配的作用,能够使后一级的放大电路更好地工作。换一种说法,当输入阻抗很高时,就对前级电路相当于开路,当输出阻抗很低时,就相当于对后级电路的一个恒流源,也就是说输出电压不受后级电路阻抗的影响。一个相当于对前级电路开路,后级阻抗不影响输出电压常常被用作中间级,起到“隔离”前后级之间的影

35、响的作用。电压跟随器电路中所选芯片为LCM324,LM324系列器件带有差动输入的四路运算放大器。与单电源应用场合的标准运算放大器相比,它们有一些显著优点。该四路放大器可以工作在低到3.0伏或者高到32伏的电源下,静态电流为MC1741的静态电流的五分之一。共模输入范围包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。LCM324管脚连接如图2.4所示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的相位相反;Vi+(+)为同相输入端,表示运放输

36、出端Vo的信号与该输入端的相位相同。 图2.4 LCM324管脚连接图LCM324特点:短路保护输出;真差动输入级;可单电源工作范围在3V-32V之间;低偏置电流最大达到100mA;每封装含四个运算放大器;具有内部补偿的功能;共模范围扩展到负电源;行业标准的引脚排列;输入端具有静电保护功能。设计中LCM324内四路运算放大器的连接方式相同,图2.5为其中一路的连接方式。图2.5 电流电压转换电路原理图2.4 模拟量采集电路设计A/D转换器的作用是将电流电压转换电路输出的模拟量信号(15V电压信号)作为输入并将其转换为数字信号作为单片机的输入信号,由于系统涉及到的参数较多且考虑到实用价值,设计中

37、A/D转换器件采用ADC0809。2.4.1 ADC0809概述1、ADC0809内部结构及转换原理ADC0809是美国国家半导体公司生产的CMOS工艺8通道模数转换器,它采用逐次逼近式转换原理,内部分为两大部分,一部分为模拟量多路转换开关,另一部分是A/D转换器。它的输出可以直接与CPU总线连接。模拟量多路开关内包含8路输入开关和3位地址锁存器/译码器。8路模拟量输入信号可接入8路输入开关。ADDA、ADDB及ADDC3位地址由ALE信号输入锁存,经过译码后决定转换哪一路输入的模拟量信号。2、ADC0809引脚结构ADC0809芯片有28条引脚,下面说明各引脚功能。 IN0IN7:8路输入模

38、拟量通道。2-12-8:8位输出数字量通道。ADDA、ADDB、ADDC:3位输入地址线,用于选择IN0IN7 8路模拟输入通道中的某一通道。ALE:地址锁存允许信号,高电平有效。 START:启动转换信号,脉冲上升沿使0809内部所有寄存器复位,下降沿开始进行A/D转换,转换过程中START应保持低电平。 EOC:转换结束信号,当为高电平时表示A/D转换结束时,转换期间一直为低电平。OE:输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据,输入高电平时有效。CLK:时钟脉冲输入端,ADC0809内部没有时钟电路,所需时钟信号需由外界提供。所用的四分频芯片是74HC4040,将74

39、HC4040的8和11引脚接地、16引脚接电源、10引脚接单片机的时钟信号、7引脚接ADC0809的时钟脉冲输入端即可完成四分频。3、ADC0809工作过程首先输入3位地址,同时使ALE=1,将输入的3位地址存在地址锁存器内。该地址经过译码选择8路模拟量输入中的一位并将其送给比较器。为START提供上升沿将逐位逼近寄存器SAR复位。START下降沿启动 A/D转换,之后EOC信号变为低电平,表示A/D转换在进行当中。EOC变为高电平时表示A/D转换完成,并将转换结果存入锁存器内,此转换结束信号可用为中断请求信号。当读允许输入端输入高电平时,数据允许输出,A/D转换后的数字量将被输出9。A/D转

40、换后的数字量应立即传送到单片机进行分析。数据传送过程中关键问题在于如何确认转换已完成,只有确认转换已完成ADC0809与单片机之间才能进行数据之间的传送。4、数据传送方式定时传送方式转换时间对于一种A/D转换为一项是已知和固定的技术指标。例如ADC0809的转换时间是128s,相当于6MHz的MCS-51单片机共64个机器周期。依据此已知项可设计一延时子程序,A/D转换开始后便调用这个子程序,延迟程序执行完毕,转换肯定也已经完成,接着便可进行数据之间的传送。查询方式可以用查询方式,测试EOC的状态,即可确认转换是否已完成,并进行数据间的传送。利用查询方式时ADC0809与单片机接口连接比较自由

41、,但控制时序要由程序产生。中断方式中断请求信号为表示转换已完成的信号(EOC),单片机响应中断请求后,执行中断服务程序,读取数据。无论使用上述哪种方式,转换一旦完成,采用指令便可进行数据之间的传送。首先读允许信号有效时即OE信号有效,便把转换后的数据送给单片机。由于采用查询方式时单片机与ADC0809之间的连接方式较为简单,且易于控制所以系统中采用的是查询方式。5、ADC0809的工作时序ADC0809工作时序如图2.6所示,在此时序图中能得出,三位通道的地址在ALE信号为上升沿时锁存,通过多路模拟开关将对应通道内模拟量传送到模数转换器。内部电路在START信号为上升沿时复位,START信号为

42、下降沿时启动转换,这时EOC信号为低电平状态,逐次逼近需要一定的过程,因此,在这期间,模拟量输入应保持不变,比较器需一次次比较,直至转换结束,此时EOC信号为高电平。如果CPU发出读允许信号即OE为高电平,就可以读出数据。此外ADC0809具有较高的精度和转换速度,受温度的影响也较小。图2.6 ADC0809工作时序图2.4.2 ADC0809与单片机接口电路 将四路输入模拟信号转化为数字信号,为数据显示模块提供输入信号。单片机P1.3、P1.4、P1.5输出的三位地址加到通道选择端A、B、C,可作为通道编码。输出数据与P0口连接,START、ALE一起与P3.6相连,CLOCK与74HC40

43、40的时钟输出端口相连,EOC与P3.5相连进行转换结束的判断,OE与P3.7相连作为输出允许控制端,ADC0809接口电路如图2.7所示。图2.7 A/D转换接口电路原理图2.5 显示电路设计测量结果需要显示,显示器件选择LCD1602控制模块。与LED显示器件相比,LCD可显示字符、数据,能够更好的区分显示的参数内容,显示内容丰富、直观,而且该方式省电。LCD1602字符型液晶显示模块,它是一种专门用来显示字母、数字、符号等点阵式液晶模块。1602LCD是指显示的内容为16*2,即可以显示两行,每行16个字符液晶模块。2.5.1 LCD1602引脚结构1、LCD1602引脚结构说明1引脚V

44、SS:电源地。2引脚VCC:5V电源正极。3引脚VL:液晶显示器的对比度调节端,该引脚接地时对比度最高,接正电源时对比度最弱,对比度高时,可使用一个10K的可调电阻调节对比度。4引脚RS:数据/命令选择端,接高电平时为数据寄存器,接低电平时为命令寄存器。5引脚R/W:读/写选择端,低电平时执行写操作,高电平时执行读操作。6引脚E:使能信号端。714引脚D0D7:8位双向数据端。15引脚BLA:背光源的正极。16引脚BLK:背光源的负极。2.5.2 LCD1602主要技术参数及特性1、LCD1602主要的技术参数16*2个字符的显示容量;芯片的工作电压在4.55.5V之间;工作电流为2.0mA(

45、5.0V);最佳的工作电压为5.0V;2.95*4.35(W*H)mm的字符尺寸。2、LCD1602的特性+5V电压,可调的对比度;内部含有复位电路; 控制命令的提供,如:显示移位、光标闪烁、字符闪烁、清屏等多种功能 ;数据存储器DDRAM可显示80个字节;字符发生器CGROM内建有160个5*7点阵字型;用户可自定义的8个5X7的字符发生器CGRAM;微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。2.5.3 LCD1602与单片机的接口电路系统采用LCD1602显示模数转换器采集到的数据,其中D7D0与单片机的P2端口相连作为数据的传送通道,使能端E、RW、RS

46、分别与单片机的P1.0、P1.1、P1.2相连接,此电路图原理简单,电路连接方便,LCD1602接口电路如图2.8所示。图2.8 LCD1602接口电路原理图2.6 按键接口电路设计按键接口电路可选用两种方法分别为行列扫描按键和独立按键1、行列扫描按键行列式按键适用于按键应用数目比较多的设计,行列式按键的优点是节省I/O口资源,使用8个I/O口就可以实现16个按键,分为行扫描口与列扫描口,该方案编程比较复杂,而且必须对I/O口进行实时的扫描。2、使用独立按键由于本设计使用的按键功能较少,需要3个按键,所以本设计使用独立按键,作为按键的输入部分,独立按键硬件电路设计简单、编程方便简单、且速度快,

47、不需要对I/O口做频繁的操作。综上所述,本设计使用按键较少,使用独立式按键作为本设计的按键部分。使用一个独立按键连接单片机的P3.2引脚来选择对四个参数进行单独检测还是循环检测,按键未按下时为循环检测模式,按键按下一下时为温度检测模式,按键按下两下时为压力检测模式,按键按下三下时为流量检测模式,按键按下四次是为液位检测模式。另外采用两个单独按键连接单片机的P3.3、P3.4来控制报警上下限的报警值。按键电路如图2.9所示。图2.9 按键电路原理图2.7 报警电路设计报警电路分为两部分,一部分为声音报警,另一部分为灯光报警,其中声音报警选用蜂鸣器与三极管结合的蜂鸣器电路,由单片机的P1.6口作为控制口,当报警时,由单片机产生一个低电平信号,控制三极管的基极使其导通,驱动蜂鸣器响应。两路灯光报警则是采用LED发光二极管来实现,由单片机的P3.0

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

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号