资源预览内容
第1页 / 共45页
第2页 / 共45页
第3页 / 共45页
第4页 / 共45页
第5页 / 共45页
第6页 / 共45页
第7页 / 共45页
第8页 / 共45页
第9页 / 共45页
第10页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第11章 单片机系统扩展与接口技术,11.1 A/D转换器接口 11.2 D/A转换器接口,1. A/D转换器简介 A/D转换器把模拟量转换成数字量,以便于单片机进行数据处理。 随着超大规模集成电路技术的飞速发展,A/D转换器的新设计思想和制造技术层出不穷。为满足各种不同的检测及控制任务的需要,大量结构不同、性能各异的A/D转换芯片应运而生。,11.1 A/D转换器接口,1A/D转换器概述 目前单片的ADC芯片较多,对设计者来说,只需合理的选择芯片即可。现在部分的单片机片内集成了A/D转换器,在片内A/D转换器不能满足需要,还是需外扩。另外作为扩展A/D转换器的基本方法,读者还是应当掌握。 尽管A/D转换器的种类很多,但目前广泛应用在单片机应用系统中的主要有逐次比较型转换器和双积分型转换器,此外-式转换器逐渐得到重视和较为广泛的应用。 逐次比较型A/D转换器,在精度、速度和价格上都适中,是最常用的A/D转换器。,双积分型A/D转换器,具有精度高、抗干扰性好、价格低廉等优点,与逐次比较型A/D转换器相比,转换速度较慢,近年来在单片机应用领域中也得到广泛应用。 -式ADC具有积分式与逐次比较型ADC的双重优点。它对工业现场的串模干扰具有较强的抑制能力,不亚于双积分ADC,它比双积分ADC有较高的转换速度,与逐次比较型ADC相比,有较高的信噪比,分辨率高,线性度好,不需要采样保持电路。由于上述优点,式ADC得到了重视,已有多种式A/D芯片可供用户选用。,A/D转换器按照输出数字量的有效位数分为4位、8位、10位、12位、14位、16位并行输出以及BCD码输出的 3位半、4位半、5位半等多种。,逐次逼近式A/D转换器是一种速度较快, 精度较高的转换器, 其转换时间大约在几微秒到几百微秒之间。常用的这种芯片有: (1) ADC0801ADC0805型 8 位MOS型A/D转换器; (2) ADC0808/0809 型 8 位MOS型A/D转换器; (3) ADC0816/0817 型 8 位MOS型A/D转换器;,目前,除并行输出A/D转换器外,随着单片机串行扩展方式的日益增多,带有同步SPI串行接口的A/D转换器的使用也逐渐增多。串行输出的A/D转换器具有占用端口线少、使用方便、接口简单等优点,因此,读者要给予足够重视。 较为典型的串行A/D转换器为美国TI公司的TLC549(8位)、TLC1549(10位)以及TLC1543(10位)和TLC2543(12位)。,本章仅介绍单片机与各种并行输出A/D转换器的接口设计。 A/D转换器按照转换速度可大致分为超高速(转换时间1ns)、高速(转换时间1s)、中速(转换时间1ms)、低速(转换时间1s)等几种不同转换速度的芯片。 为适应系统集成的需要,有些转换器还将多路转换开关、时钟电路、基准电压源、二十进制译码器和转换电路集成在一个芯片内,为用户提供很多方便。,2A/D转换器的主要技术指标 (1)转换时间和转换速率 A/D完成一次转换所需要的时间。转换时间的倒数为转换速率。,(2)分辨率 在A/D转换器中,分辨率是衡量A/D转换器能够分辨出输入模拟量最小变化程度的技术指标。分辨率取决于A/D转换器的位数,所以习惯上用输出的二进制位数或BCD码位数表示。 例如,A/D转换器AD1674的满量程输入电压为5V,可输出12位二进制数,即用212个数进行量化,其分辨率为1LSB,也即5V/212=1.22mV,其分辨率为12位,或A/D转换器能分辨出输入电压1.22mV的变化。,(3)转换精度 A/D转换器的转换精度定义为一个实际A/D转换器与一个理想A/D转换器在量化值上的差值,可用绝对误差或相对误差表示。,量化间隔和量化误差是A/D转换器的主要技术指标之一。 量化间隔由下式计算:,其中n为A/D转换器的位数。 量化误差有两种表示方法: 一种是绝对量化误差; 另一种是相对量化误差。 绝对量化误差,2. 典型A/D转换器芯片ADC0809 简介,ADC0809的主要特性 (1)分辨率为8位。 (2)最大不可调误差小于1/2LSB 。 (3)单一+5V电源供电,模拟输入范围为05V。 (4)具有锁存控制的8路模拟开关。 (5)功耗为15mW。 (6)可锁存三态输出,输出与TTL兼容。 (7)不必进行零点和满度调整。 (8)转换速度取决于芯片的时钟频率,时钟频率范围:101280kHz。,图 11.1 ADC0809的内部结构,图 11.2 ADC0809引脚图,(1)IN0IN7:8路模拟通道的输入端。 (2)D0D7:8位数字量输出端。 (3)VREF(+)、VREF(-):正、负参考电压输入端。一般情况下VREF(+)与VCC相连接,VREF(-)与GND相连接 (4)CLOCK:时钟输入信号。 (5)START:转换启动信号,高电平有效。 (6)ADDA、ADDB、ADDC:模拟通道选择输入端。 (7)ALE:地址锁存信号。 (8)EOC:A/D转换结束信号,此信号常被用来作为中断请求信号。 (9)OE:允许输出信号。,表 11.9 地址码与输入通道的对应关系,图 11.3 ADC0809时序图,3. ADC0809与8031 的接口电路,1) 等待方式,图 11.5 ADC0809查询方式硬件接口,下面的程序是采用等待方法, 分别对 8 路模拟信号轮流采样一次, 并依次把结果转存到数据存储区的采样转换程序。,MOV R1, data ; 置数据区首址 MOV DPTR, 7FF8H ; P2.7=0, 指向通道 0 MOV R7, 08H ; 置通道数 LP1: MOVX DPTR, A ; 启动A/D转换 MOV R6, 0AH ; 软件延时 DALY: NOP NOP NOP,NOP NOP DJNZ R6, DALY MOVX A, DPTR ; 读取转换结果 MOV R1, A ; 存储数据 INC DPTR ; 指向下一个通道 INC R1 ; 修改数据区指针 DJNZ R7, LP1 ; 8 个通道全采样完了吗?,(2) 查询方式,START: MOV R1,#DATA MOV DPTR, 0FEFFH ; 端口地址送DPTR MOV A, 00H ; 选择 0 通道输入 MOVX DPTR, A ; 启动输入 WAIT:JNB P1.0 , WAIT MOVX A,DPTR MOV R1,A RET,(3) 中断方式,图 11.6 ADC0809 中断方式硬件接口,这里将ADC0809 作为一个外部扩展的并行I/O口, 直接由8031的P2.0和WR脉冲进行启动。因而其端口地址为 0FEFFH。用中断方式读取转换结果的数字量, 模拟量输入通道选择端ADD A、ADD B、ADD C分别与8031的P0.0、 P0.1、P0.2 直接相连, CLK由 8031 的ALE提供。其读取通道 0 转换后的数字量程序段如下:,ORG 1000H INADC: SETB IT1 ; INT1设为边沿触发 SETB EA ; 开中断INT1 SETB EX1,MOV DPTR, 0FEFFH ; 端口地址送DPTR MOV A, 00H ; 选择 0 通道输入 MOVX DPTR, A ; 启动输入 ORG 0013H AJMP PINT1 PINT1: MOV DPTR, 0FEFFH ; 端口地址送DPTR MOVX A, DPTR ; 读取IN0 的转换结果 MOV 50H, A ; 存入 50H单元 MOV A, 00H MOVX DPTR, A ; 启动A/D, IN0 通道输入并转换 RETI ; 返回,11.2 D/A转换器接口,1. D/A转换器的性能指标 (1) 分辨率。分辨率是D/A转换器对输入量变化敏感程度的描述, 与输入数字量的位数有关。如果数字量的位数为n, 则D/A转换器的分辨率为 2-n。 (2) 建立时间。建立时间是描述 D/A转换速度的一个参数, 具体是指从输入数字量变化到输出达到终值误差1/2LSB(最低有效位)时所需的时间。通常以建立时间来表明转换速度。 (3) 接口形式。 D/A转换器有两类: 一类不带锁存器, 另一类则带锁存器。对于不带锁存器的D/A转换器, 为保存单片机的转换数据, 在接口处要加锁存器。,2. 典型D/A转换器DAC0832简介,图 11.3 DAC0832内部结构框图,图 11.38,图 11.3 DAC0832的引脚图,3. DAC0832与MCS - 51 的接口,1) 单缓冲方式,图 11.40 DAC0832单缓冲方式接口电路,执行下面的几条指令就能完成一次D/A转换: MOV DPTR, 7FFFH ; 指向DAC0832 MOV A, DATA ; 数字量装入A MOVX DPTR, A ; 完成一次D/A输入与转换,2) 双缓冲方式,图 11.4 DAC0832双缓冲方式接口电路,MOV DPTR, 0DFFFH ; 指向DAC0832(1) MOV A, data1 ; data1送入DAC0832(1)中锁存 MOVX DPTR, A ; MOV DPTR, 0BFFFH ; 指向DAC0832(2) MOV A, data2 ; data2送入DAC0832(2)中锁存 MOVX DPTR, A MOV DPTR, 7FFFH ; 给0832(1)和(2)提供WR信号 MOVX DPTR, A ; 同时完成D/A转换输出,4. DAC0832与MCS - 51 应用实例,图 11.42 阶梯波形图,4. DAC0832与MCS - 51 应用实例,(1)阶梯波的产生,START: MOV A, 00H ; MOV DPTR, 7FFFH ; 0832 的地址送DPTR MOV R1, 0AH ; 台阶数为 10 LOOP: MOVX DPTR, A ; 送数据至 0832 CALL DELAY ; 1 ms延时 DJNZ R1, NEXT ; 不到 10 台阶转移 SJMP START ; 产生下一个周期 NEXT: ADD A, 10 ; 台阶增幅 SJMP LOOP ; 产生下一台阶 DELAY: MOV 20H, 249 ; 1 ms延时程序 AGAIN: NOP NOP DJNZ 20H, AGAIN,图 11.42反向锯齿波形图,(2)锯齿波的产生 反向锯齿波,START: MOV DPTR, 7FFFH ; 0832 的地址送DPTR DOWN1:MOV R0, 80H ; 波形的起点 DOWN2: MOV A,R0 ; 送数据至 0832 MOVX DPTR,A DJNZ R0,DOWN2 ; 形成锯齿斜面 SJMP DOWN1 ; 多波输出,图 11.42反向锯齿波形图,正向锯齿波,START: MOV DPTR, 7FFFH ; 0832 的地址送DPTR MOV R0, 80H ; 波形的起点 UP: MOV A,R0 ; 送数据至 0832 MOVX DPTR,A ;D/A输出 INC R0 ;正向增加 CJNE R0,#0FFH,UP ; 形成锯齿斜面 SJMP START ; 多波输出,图 11.4 双极性锯齿波形图,双极性锯齿波,START: MOV DPTR, 7FFFH ; 0832 的地址送DPTR MOV R0, 00H ; 波形的起点 UP: MOV A,R0 ; 送数据至 0832 MOVX DPTR,A ;D/A输出 INC R0 ;正向增加 SJMP UP ; 多波输出,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号