第11章 mcs-51单片机与ad、da接口_第1页
第11章 mcs-51单片机与ad、da接口_第2页
第11章 mcs-51单片机与ad、da接口_第3页
第11章 mcs-51单片机与ad、da接口_第4页
第11章 mcs-51单片机与ad、da接口_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,第11章 单片机与A/D、D/A接口,11.1 MCS-51与DAC的接口 11.2 MCS-51与ADC的接口 11.3 MCS-51与V/F的接口,2,第11章单片机与A/D、D/A转换器的接口,主要内容:A/D、D/A转换器及其接口技术。通过本章的学习,了解模拟输入/输出通道设计的基本原理和方法,掌握常用A/D、D/A芯片及其与MCS-51单片机的接口电路与程序设计。 重点和难点:不同方式的A/D、D/A芯片与MCS-51的接口及其程序设计。,3,11.1 MCS-51与D/A转换器的接口,数/模转换就是将数字量转换成与它成正比的模拟量。,例如:对于05V的直流电压,计算机用8位数字量描述,最小值(00000000)B = 0对应0V,最大值(11111111)B = 255 对应 5V,中间值(01111111)B = 127 对应2. 5V 等等。,D/A的任务是接收到一个数字量后,给出一个相应的电压。,比如收到(00111111)B ,应给出幅度为1.25V 的电压。,4,D/A转换原理,权电阻网络D/A转换器:,电路由解码网络、模拟开关、求和放大器和基准电源组成。,权电阻解码网络,求和集成运算放大器,基准参考电压,双向模拟开关 D1时接运放 D0时接地,5,D/A转换原理,6,D/A转换原理,设RF=R/2,7,对于n位的权电阻网络D/A转换器,当反馈电阻取为R/2时,输出电压的计算公式可写成:,输出的模拟电压正比于输入的数字量D,从而实现了从数字量到模拟量的转换。,8,D/A转换器性能指标,(1)分辨率:指D/A转换器能分辨的最小输出模拟增量,即相邻两个二进制码对应的输出电压之差称为D/A转换器的分辨率。,(2)精度:指D/A转换器的实际输出与理论值之间的误差,它以满量程的百分数或最低有效位的分数形式表示。 (3)转换时间:从D/A转换器输入的数字量发生变化开始,到其输出模拟量达到相应的稳定值所需要的时间。,9,并行输入D/A芯片及接口技术,并行输入D/A转换芯片DAC0832,DAC0832是NS公司生产的DAC0830系列产品中的一种8位CMOS数模转换芯片,其特点如下: 8位并行D/A转换; 片内二级数据锁存,提供数据输入双缓冲、单缓冲、直通三种工作方式; 电流输出型芯片(需外接运放) ,电流稳定时间为1s,只需在满量程下调整其线性度; 单电源(+5 V+15 V,典型值+5 V)供电; 具有双缓冲控制输出; 参考电压为-10+10V,10,DAC0832结构,11,DAC0832的输出电路,DAC0832的输出量是电流,而实际应用中常常需要的是模拟电压。在这种情况下,芯片的输出还需要有将电流转换为电压的电路。,Vout(D/2n)VREF,12,DAC0832的输出电路,13,DAC0832的输出电路,I1I20,14,DAC0832的输出电路,取 R2R32R1 得 Vout2(2Vout1VREF) 因 Vout1(D/28)VREF 故 Vout2(D27)/27VREF,设 VREF5V DFFH255时,最大输出电压: Vmax(255128)/1285V4.96V D00H时,最小输出电压: Vmin(0128)/1285V5V D80H128时,一个最低有效位电压: VLSB(128128/1285V0.00V,15,DAC0832与89C51接口,DAC0832可以有三种工作形式:直通、单缓冲、双缓冲。,16,1)单缓冲工作方式应用,DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受控的锁存方式。,17, 产生锯齿波的程序,MOV R0,#0FEHMOV A,#00H LOOP: MOVX R0,AINC ANOPNOPSJMP LOOP;,18, 产生方波的程序,MOV R0,#0FEH LOOP:MOV A,#DATA1MOVX R0,AACALL DELAY1MOV A, #DATA2MOVX R0,AACALL DELAY2 AJMP LOOP,19,2) 双缓冲工作方式应用,在多路D/A转换的情况下,若要求同步转换输出,必须采用双缓冲方式。DAC0832采用双缓冲方式时,数字量的输入锁存和D/A转换输出是分两步进行的。第一, CPU分时向各路D/A转换器输入要转换的数字量并锁存在各自的输入寄存器中。第二,CPU对所有的D/A转换器发出控制信号,使各路输入寄存器中的数据进入DAC寄存器,实现同步转换输出。,20,2)双缓冲工作方式应用,21,2)双缓冲工作方式应用,MOV DPTR,#0DFFFHMOV A,#data1MOVX DPTR,A MOV DPTR,#7FFFHMOV A,#data2MOVX DPTR,A MOV DPTR,#0BFFFHMOVX DPTR,A,22,11.2 A/D转换器及接口技术,计算机只能储存和处理二进制形式的数字量,凡遇到有模拟量的地方,就要进行模拟量向数字量转换,这就是模/数转换问题。将模拟量转换成数字量的过程称为A/D转换,与之有关的接口技术称为前向通道接口技术。因为在单片机应用系统中,常需要将检测到的连续变化的模拟量如温度、压力、流量、速度等转换成数字信号,才能输入到单片机中进行处理,然后再将处理结果的数字量转换成模拟量输出,实现对被控对象的控制。,23,24,A/D转换原理,逐次逼近型A/D转换器,在精度、速度和价格上都适中,是最常用的转换器件。,25,A/D转换原理,双积分A/D转换器,具有精度高、抗干扰性好、价格低廉等优点,但转换速度低。,26,27,A/D转换器的性能指标,转换时间和转换速率,A/D完成一次转换所需要的时间。转换时间的倒数为转换速率。,并行式转换时间最短约为110ns,速率为1001000M次/s(1M=106);逐次比较式转换时间约为0.4s,速率为2.5M次/s。,28,A/D转换器的性能指标,(2) 分辨率,习惯用输出二进制位数或BCD码位数表示。例如AD574 A/D转换器,输出二进制12位,即用212个数进行量化,其分辨率为1LSB,用百分数表示1/212=0.24。,又如双积分式输出BCD 码的A/D转换器MC14433,其分辨率为三位半。若满字位为1999,用百分数表示其分辨率为1/1999100%=0.05%。,29,A/D转换器的性能指标,(3)转换精度,定义为一个实际ADC与一个理想ADC在量化值上的差值。可用绝对误差或相对误差表示。,30,A/D转换器的选择,(1)A/D转换器位数的确定,系统总精度涉及的环节较多:传感器变换精度、 信号预处理电路精度和A/D转换器及输出电路、控制机构精度,还包括软件控制算法。,A/D转换器的位数至少要比系统总精度要求的最低分辨率高1位,位数应与其他环节所能达到的精度相适应。只要不低于它们就行,太高无意义,且价高。,31,A/D转换器的选择,(2)A/D转换器转换速率的确定,从启动转换到转换结束,输出稳定的数字量,需要一定的时间,这就是A/D转换器的转换时间。,低速:转换时间从几ms到几十ms 。,中速:逐次比较型的A/D转换器的转换时间可从几s100s左右。,高速:转换时间仅110ns。适用于雷达、数字通讯、实时光谱分析、实时瞬态纪录、视频数字转换系统等。,32,A/D转换器的选择,(2)A/D转换器转换速率的确定,如用转换时间为100s的集成A/D转换器,其转换速率为10千次/秒。根据采样定理和实际需要,一个周期的波形需采10个点,最高也只能处理1kHz的信号。把转换时间减小到10s,信号频率可提高到10kHz。,(3)是否加采样保持器,直流和变化非常缓慢的信号可不用采样保持器。其他情况都要加采样保持器。,33,A/D转换器的选择,(4)工作电压和基准电压,选择使用单一+5V工作电压的芯片,与单片机系统共用一个电源就比较方便。,34,逐次逼近式A/D转换器ADC0809,ADC0809是美国国家半导体公司生产的CMOS工艺8通道、8位逐次逼近式A/D转换器。,35,ADC0809 A/D转换器芯片,36,ADC0809与MCS-51单片机接口,ADC0809与MCS-51连接可采用查询方式,也可采用中断方式。,首先用指令选择0809的一个模拟输入通道,当执行MOVX DPTR,A时,单片机的WR*信号有效,产生一个启动信号给0809的 START脚,对选中通道转换。,转换结束后,0809发出转换结束EOC信号,该信号 可供查询,也可作为向单片机发出的中断请求信号;当 执行指令:MOVX A,DPTR,单片机发出RD*信号,加到 OE端高电平,把转换完毕的数字量读到A中。,37,ADC0809与MCS-51单片机接口,38,MAIN: MOV R1,#data ;置数据区首地址MOV DPTR,#7FF8H ; 指向通道IN0MOV R7,#08H ;置转换的通道个数 LOOP: MOVX DPTR,A ;启动A/D转换MOV R6,#0AH ;软件延时,等待转换结束 DELAY: NOPNOPNOPDJNZ R6,DELAYMOVX A,DPTR ;读取转换结果MOV R1,A ;存储转换结果INC DPTR ;指向下一个通道INC R1 ;修改数据区指针DJNZ R7,LOOP ;8个通道全采样完否?未完则继续,39,8路巡回检测系统,【例】某粮库或某冷冻厂需对8点(8个冷冻室或8个粮仓)进行温度巡回检测。要求设计一个单片机巡回检测系统,使其能对各冷冻室或各粮仓的温度巡回检测并加以处理。设被测温度范围为-30+50,温度检测精度要求误差不大于1。,将读数依次存放在片外数据存储器30H37H单元。其采集程序和中断服务程序如下:,40,8路巡回检测系统,ORG 0000HLJMP MAINORG 0003HLJMP INT0FORG 0100H MAIN:MOV R0,#30H ;数据暂存区首址SETB IT0 ;脉冲触发方式SETB EA ;开中断SETB EX0MOV DPTR,#7FF8H;指向0809首地址MOVX DPTR,A ;启动A/D转换 HERE:SJMP HERE ;等待中断,41,8路巡回检测系统,中断服务程序: INT0F:MOVX A,DPTR ;读数MOVX R0,A ;存数INC DPTR ;更新通道INC R0 ;更新暂存单元CJNE R0,#38H,NEXTMOV R0,#30H ;数据暂存区首址MOV DPTR,#7FF8H;指向0809首地址RETI NEXT:MOVX DPTR,ARETIEND,42,串行输出A/D转换器,串行输出的A/D芯片由于节省单片机的I/O口线,越来越多地被采用。如具有SPI三线接口的TLC1549、TLC1543、TLC2543、MAX187等,具有I2C接口PCF8591(4路8位A/D,还含1路8位D/A)等。,43,串行A/D MAX187/189,MAX187/189是MAXIM公司生产的具有SPI(Serial Peripheral Interface)总线接口的12位逐次逼近式(SAR)A/D转换芯片。特点如下: 12位逐次逼近式(SAR)串行A/D转换芯片; 转换速度为75 kHz,转换时间为8.5s; 输入模拟电压:05V; 单一+5 V供电; DIP8引脚封装,外接元件简单,使用方便。MAX187与MAX189的区别在于:MAX187具有内部基准,无需外部提供基准电压,MAX189则需外接电压基准。,44,串行A/D MAX187/189,45,MAX187/189与单片机接口,当CS输入低电平时,启动A/D转换,此时DOUT引脚输出低电平,当DOUT输出变高电平时,说明转换结束(在转换期间,SCLK不允许送入脉冲)。从SCLK引脚输入读出脉冲,SCLK每输入一个脉冲,DOUT引脚上输出一位数据,数据输出的顺序为先高位后低位,在SCLK信号的下降沿,数据改变,在SCLK的上升沿,数据稳定。SCLK信号为高电平期间从DOUT引脚上读数据。,46,MAX187/189与单片机接口,工作流程:清P1.7,启动MAX187开始A/D转换;读P1.5,等待转换结束;当P1.5变高,转换结束;从P1.6引脚发串行脉冲,从P1.5引脚逐位读取数据。注意:由于MCS-51单片机外接晶振最大不超过12 MHz,即便是执行一条单周期指令也需1 s,所以发送SCLK时无需延时。,47,MAX187/189与单片机接口,HIGH EQU 31H LOW EQU 30H ORG 1000H START: MOV HIGH, #00 MOV LOW, #00 ; 将转换结果单元清除CLR P1.6CLR P1.7 ; 启动A/D转换JNB P1.5, $ ; 等待转换结束,例题 如图上页图所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论