资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第4章 MCS-51单片机系统功能的扩展,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第8章 51单片机数据采集,在数据采集的过程中,经过各种传感器来获取数据,传感器将各种温度、湿度、光照、压力和酸碱度等物理信号或化学信号转换为电信号。,有些采集的信息还需要对电信号进展放大、去噪,再经A/D转换后变成离散的数字信号送给单片机。,采集来的信号给单片机进展处理分析,数字滤波、工程量变换等处理,以反映实际测量的数值,这也是单片机系统检测局部的核心。,第8章 51单片机数据采集,第8章 51单片机数据采集,8.1 传感器技术概述,传感器是一种将光、声音、温度等各种物理量转换为电子电路能处理的电压或电流信号的器件。目前对传感器的定义仍局限于电量的转换,即是将被测的非电量如压力、重量、力矩、位移、速度、振动、冲击、温度、声响、光、角度、转速、物位等转换为与之对应变化的、易于电路处理的电参量电流、电压、电阻、电感、电荷、频率、阻抗等。,传感器技术的主要开展动向有新材料开发,集成化、数字化、新工艺化、智能化、高精度化及高稳定、高可靠化等都是传感器开展的技术动向。,第8章 51单片机数据采集,传感器一般由敏感元件、转换元件和测量电路三局部组成,有时还需要加辅助电源。其组成可用方块图表示,如以下图所示。,敏感元件:将被测非电量预先变换为另一种易于变换成电量的非电量的器件。,转换元件:将感受到的非电量直接转换为电量的器件。,测量电路:将转换的电量变成有用电信号的电路。,敏感元件,转换元件,测量电路,辅助电源,第8章 51单片机数据采集,一、反映传感器静态特性的性能指标,静态特性是指检测系统的输入为不随时间变化的恒定信号或变化很慢时,系统的输出与输入之间的关系。,主要包括:线性度、灵敏度、迟滞、重复性、漂移、测量范围、量程、精度、分辨率和阈值、稳定性。,第8章 51单片机数据采集,二、反映传感器动态特性的性能指标,检测系统的输入为随时间变化的信号时,动态特性就是指传感器对于随时间变化的输入信号的响应特性。,主要动态特性的性能指标有时域单位阶跃响应性能指标和频域频率特性性能指标。,第8章 51单片机数据采集,8.2.1 A/D转换元件的构造和工作原理,一、A/D转换器类型,根据转换的原理可将A/D转换器分成两大类:,一类是直接型A/D转换器,输入的模拟电压被直接转换成数字代码,不经任何中间变量;,另一类是间接型A/D转换器,首先把输入的模拟电压转换成某种中间变量,然后再把这个中间变量转换为数字代码输出。,目前应用较广泛的主要有:逐次逼近式A/D转换器、双积分式A/D转换器和V/F变换式A/D转换器。,第8章 51单片机数据采集,A/D转换器分类图,第8章 51单片机数据采集,二、逐次逼近式A/D转换器构造原理,第8章 51单片机数据采集,三、A/D转换器主要性能指标,1.分辨率:通常用转换器输出数字量的位数来表示。,2.精度:是指与数字输出量所对应的模拟输入量的实际值与理论值之间的差值。,3.转换时间:完成一次A/D转换所需要的时间。,4.温度系数和增益系数:A/D转换器受环境温度影响的程度。,5.对电源电压变化的抑制比:改变电源电压使数据发生1LSB变化范围。,第8章 51单片机数据采集,四、ADC0809介绍,1.内部构造,第8章 51单片机数据采集,2.外部特性引脚功能,IN0IN7:8路输入通道的模拟量输入端口。,D0D7:8位数字量输出端。,A、B、C:用于选通8路模拟输入中的一路。,ALE:地址锁存允许信号,输入,高电平有效。,START:A/D转换启动信号。,EOC:AD转换完毕信号。,OE:数据输出允许信号,高电平有效。,CLK:时钟脉冲输入端。,REF+、REF:参考电压端输入。,Vcc:电源,典型值+5V。,GND:模拟和数字地。,第8章 51单片机数据采集,第8章 51单片机数据采集,8.2.2 A/D转换元件的接口电路,第8章 51单片机数据采集,中断方式程序流程图,第8章 51单片机数据采集,汇编语言编程如下:,ORG0000H,SJMP MAIN,ORG 0003H,LJMPINT0A,ORG 0030H,;-中断设置-,SETBIT0 ;允许INT0中断,SETBEA ;中断总允许,SETBEX0 ;外部中断0允许,;-各通道循环启动-,MAIN:MOV R2,#08H ;设置循环次数,MOV R3,#80H,MOV R4,#80H ;设置延时时间,A1:MOV A,R3,MOV P2,A ;先启动IN0通道,.。;延时或其它功能程序执行,第8章 51单片机数据采集,;-循环至其他通道-,DJNZ R3,A2,SJMP A4,A2:MOV A,R3,ADD A,#08H,MOV R3,A,SJMP A1,;-处理其他子程序-,A4:。,RET,;-保护现场,存储数据-,INT0A:PUSH ACC,MOV P2,#40H ;转换数据,MOV A,P1 ;数据送到累加器,MOV R1,A,INC R1,POP ACC,RETI,END,第8章 51单片机数据采集,工作原理,通过温度数据采集元件与单片机接口进展分类,将温度数据采集元件分为两类:传统分立式温度采集元件和智能数字温度采集元件。,第8章 51单片机数据采集,一、分立式温度采集元件,分立式温度采集元件主要有:,它们都是将温度值经过一定的接口电路转换后输出模拟电压或电流信号,利用A/D将其转换为数字信号,然后由单片机进展后续处理。,第8章 51单片机数据采集,二、智能数字温度采集元件,智能数字温度采集元件是将作为温度器件的感温局部及外围电路集成在同一单片上的集成化温度传感器。与分立元式温度采集元件相比,集成温度传感器的最大优点在于小型化,使用方便和本钱低廉。,美国Dallas半导体公司的数字化温度传感器DS18B20是世界上第一片支持 一线总线接口的温度传感器。全部传感元件及转换电路集成在形如一只三极管的集成电路内。,第8章 51单片机数据采集,1.DS18B20引脚定义,数字温度传感器DS18B20有三个引脚如下图。,1GND为电源地。,2DQ为数字信号输入/输出端。,3VDD为外接供电电源输入端,在寄生电源接线方式时,接地。,DALLAS,DS18B20,1 2 3,第8章 51单片机数据采集,适应宽电压范围:3.05.5V,在寄生电源方式下可由数据线供电。,独特的单线接口方式,DS18B20与微处理器连接时仅需要一条口线即可实现双向通讯。,支持多点组网功能,多个DS18B20可以并联,实现组网多点测温。,温度范围:55125。,可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。,第8章 51单片机数据采集,第8章 51单片机数据采集,第8章 51单片机数据采集,DS18B20的ROM指令表,指 令,约定代码,功 能,读ROM,33H,读DS1820温度传感器ROM中的编码(即64位地址),符合 ROM,55H,发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。,搜索 ROM,0FOH,用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。,跳过 ROM,0CCH,忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。,告警搜索命令,0ECH,执行后只有温度超过设定值上限或下限的片子才做出响应。,第8章 51单片机数据采集,DS18B20的RAM指令表,指 令,约定代码,功 能,温度变换,44H,启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节RAM中。,读暂存器,0BEH,读内部RAM中9字节的内容,写暂存器,4EH,发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。,复制暂存器,48H,将RAM中第3、4字节的内容复制到EEPROM中。,重调 EEPROM,0B8H,将EEPROM中内容恢复到RAM中的第3、4字节。,读供电方式,0B4H,读DS1820的供电模式。寄生供电时DS1820发送“0”,外接电源供电 DS1820发送“1”。,第8章 51单片机数据采集,一、DS18B20寄生电源供电方式电路,在寄生电源供电方式下,,DS18B20从单线信号线上汲,取能量:在信号线DQ处于,高电平期间把能量储存在,内部电容里,在信号线处,于低电平期间消耗电容上,的电能工作,直到高电平,到来再给寄生电源电容充电。,第8章 51单片机数据采集,二、DS18B20的外部电源供电方式,在外部电源供电方式下,,DS18B20工作电源由VDD引脚接,入,此时I/O线不需要强上拉,,不存在电源电流缺乏的问题,,可以保证转换精度,同时在总,线上理论可以挂接任意多个,DS18B20传感器,组成多点测温,系统。,第8章 51单片机数据采集,单片机与DS18B20相连多采用图8-13的电路,在实际应用中具体软件编程过程如下:,1.复位:先对DS18B20芯片进展复位,复位就是由单片机给DS18B20单总线至少480S的低电平信号。,2.单片机发送ROM指令:其主要目的是为了分辨一条总线上挂接的多个器件并作处理,一般只挂接单个DS18B20芯片时可以跳过ROM指令。,3.单片机发送存储器操作指令:存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。,4.执行或数据读写:一个存储器操作指令完毕后那么将进展指令执行或数据的读写。,第8章 51单片机数据采集,测温程序流程图,第8章 51单片机数据采集,DS18B20汇编程序:,ORG0000H,SJMPL0,ORG0030H,L0:MOV SP,#0FH,XHEQUP1.6 ;1820控制线,;#温度测控89C51芯片 DS1820#,;#温度局部操作程序#,;#1 RD18WD-读取温度值#,;#2 REST-温度探头复位#,;#3 WR-发送一字节命令或数据#,;#4 RD-读取一字节命令或数据#,;#5 RD18BH-读取1820编号#,RD18WD:MOVR0,#08H ;读取1820温度值,LCALLRSET ;复位,MOVA,#0CCH ;跳过RAM,LCALLWR,MOV A,#44H ;起动转换,LCALLWR,LCALLYS ;延时1秒,第8章 51单片机数据采集,RDWD0:LCALLRSET ;,MOVA,#55H;校对1820编号8字节64位,LCALLWR,MOVR2,#8,RDWD1:MOV A,R0,LCALLWR,INCR0,DJNZR2,RDWD1,MOV A,#0BEH ;读取温度值,LCALLWR,LCALLRD,MOV26H,A ;保存温度值,LCALLRD ;读符号,CLR7FH,JZRDWD2 ;原码不处理返回,SETB7FH,MOV A,26H ;补码处理温度值送26H中,CPLA,ADDA,#01H,MOV 26H,A,第8章 51单片机数据采集,RDWD2:CLRC,MOV A,#0B3H ;90的数值(180),SUBB A,26H,JNCRDWD3,CLR58H ;90!,JB 54H,RDWD4,MOV A,2AH,ANL A,#0E0H,ORL A,#10H,MOV 2AH,A,LCALLOUTJ ;置报警位并输出,SJMP RDWD4,RDWD3:SETB 58H ;90!,JNB 54H,RDWD4,JB 75H,RDWD4,CLR 54H,LCALL OUTJ ;清报警位并输出,第8章 51单片机数据采集,RDWD4:MOVA,26H,MOV R0,#45H,LCALLSDWD,RET,RS
展开阅读全文