




已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
D A和A D转换器接口 1 A D及D A转换器的性能指标 分辨率 Resolution 分辨率是指A D转换器能分辨的最小输出模拟增量 取决于输入数字量的二进制位数 转换精度 ConversionAccuracy 转换精度指满量程时ADC的实际模拟输出值和理论值的接近程度 量程 满刻度范围 FULLScaleRange 量程是指输入模拟电压的变化范围 例如某转换器具有10V的单极性范围或 5 5V的双极性范围 则它们的量程都为10V 满刻度只是个名义值 实际的A D D A转换器的最大输出值总是比满刻度值小1 2n n为转换器的位数 例如12位的A D转换器 其满刻度值为10V 而实际的最大输出值为 A D转换器的主要技术指标 2 线性度 Linearity 线性度是指ADC的实际转换特性曲线和理想直线之间的最大偏移差 转换时间 ConversionTime 从发出启动转换开始直至获得稳定的二进代码所需的时间称为转换时间 转换时间与转换器工作原理及其位数有关 同种工作原理的转换器 通常位数越多 其转换时间越长 3 D A转换器的主要技术指标 D A转换器的主要技术指标与A D转换器基本相同 只是转换时间的概念略有不同 D A转换器的转换时间又叫建立时间 它是指当输入的二进制代码从最小值突然跳变至最大值时 其模拟输出电压相应的满度跳跃并达到稳定所需的时间 一般而言 D A的转换时间比A D要短得多 4 DAC芯片类型及接口方法 各种类型的DAC芯片都具有数字量输入端和模拟量输出端及基准电压端 数字输入端有以下几种类型 无数据锁存器 带单数据锁存器 带双数据锁存器 可接收串行数字输入 第1种在与单片机接口时 要外加锁存器 第2种和第3种可直接与单片机接口 第4种与单片机接口十分简单 接收数据较慢 适用于远距离现场控制的场合 模拟量输出有两种方式 电压输出及电流输出 电压输出的DAC芯片相当于一个电压源 其内阻很小 选用这种芯片时 与它匹配的负载电阻应较大 电流输出的芯片相当于电流源 其内阻较大 选用这种芯片时 负载电阻不可太大 5 在实际应用中 常选用电流输出的DAC芯片实现电压输出 如图所示 6 无内部数据锁存器的DAC芯片 尤其是分辩率高于8位的DAC芯片 在设计与8位单片机接口时 要外加数据锁存器作为缓冲器 下图是一种单缓冲器接口 7 在10位DAC芯片与8位单片机之间接入两个锁存器 锁存器A锁存10位数据中的低8位 锁存器B锁存高2位 单片机分两次输出数据 先输出低8位数据到锁存器A 后输出高2位数据到锁存器B 设锁存器A和锁存器B的地址分别为002CH和002DH 则执行下列指令后完成一次D A转换 MOVDPTR 002CHMOVA DATA8MOVX DPTR A 输出低8位INCDPTRMOVA DATA2MOVX DPTR A 输出高2位这种接口存在一个问题 就是在输出低8位数据和高2位数据之间 会产生 毛剌 现象 如图3 3 b 所示 假设两个锁存器原来的数据为0001111000 现在要求转换的数据为0100001011 新数据分两次输出 第一次输出低8位 这时DAC将把新的8位数据的与原来数据的高2位一起组成0000001011转换成输出电压 而该电压是不需要的 即所谓 毛刺 8 避免产生毛刺的方法之一是采用双组缓冲器结构 如下图所示 9 单片机先把低8位数据选通输入锁存器1中 然后将高2位数据选通输入锁存器3中 并同时选通锁存器2 使锁存器2与锁存器3组成10位锁存器向DAC同时送入10位数据由DAC转换成输出电压 当地址如图中所示时 执行以下程序完成一次D A转换 MOVDPTR 6000HMOVA DATA8MOVX DPTR A 输出低8位数据INCDPTRMOVA DATA2MOVX DPTR A 输出高2位 并同时输出10位数据 10 典型D A转换器芯片DAC0832及接口DAC0832是一个8位D A转换器芯片 单电源供电 从 5V 15V均可正常工作 基准电压的范围为 10V 电流建立时间为1 s CMOS工艺 低功耗20mm 其内部结构由1个8位输入寄存器 1个8位DAC寄存器和1个8位D A转换器组成 11 DAC0832的内部结构 DAC0832是典型的带内部双数据缓冲器的8位D A芯片 图中LE是寄存命令 当LE 1时 寄存器输出随输入变化 当LE 0时 数据锁存在寄存器中 当ILE端为高电平 CS与WR1同时为低电平时 使得LE1 1 当WR1变为高电平时 输入寄存器便将输入数据锁存 当XFER与WR2同时为低电平时 使得LE2 1 DAC寄存器的输出随寄存器的输入变化 WR2上升沿将输入寄存器的信息锁存在该寄存器中 12 DAC0832的工作方式DAC0832利用WR1 WR2 ILE XFER控制信号可以构成三种不同的工作方式 直通方式 WR1 WR2 0时 数据可以从输入端经两个寄存器直接进入D A转换器 2 单缓冲方式 两个寄存器之一始终处于直通 即WR1 0或WR2 0 另一个寄存器处于受控状态 3 双缓冲方式 两个寄存器均处于受控状态 这种工作方式适合于多模拟信号同时输出的应用场合 13 单缓冲方式的接口与应用1 单缓冲方式连接所谓单缓冲方式就是使DAC0832的两个输入寄存器中有一个处于直通方式 而另一个处于受控锁存方式 为使DAC寄存器处于直通方式 应使WR2 0和XFER 0 为此可把这两个信号固定接地 或如电路中把WR2与WR1相连 把XFER与CS相连 为使输入寄存器处于受控锁存方式 应把WR1接8051的WR ILE接高电平 此外还应把CS接高位地址线或地址译码输出 以便于对输入寄存器进行选择 14 DAC0832单缓冲方式接口 15 2 单缓冲方式应用举例 波形发生器在一些控制应用中 需要有一个线性增长的电压 锯齿波 来控制检测过程 移动记录笔或移动电子束等 对此可通过在DAC0832的输出端接运算放大器 由运算放大器产生锯齿波来实现 其电路连接如图所示 16 图中的DAC0832工作于单缓冲方式 其中输入寄存器受控 而DAC寄存器直通 假定输入寄存器地址为7FFFH 产生锯齿波的程序清单如下 MOVA 00H 取下限值MOVDPTR 7FFFH 指向0832口地址MM MOVX DPTR A 输出INCA 延时NOPNOPNOPSJMPMM 反复执行上述程序就可得到如下图所示的锯齿波 17 几点说明 1 程序每循环一次 A加1 因此实际上锯齿波的上升边是由256个小阶梯构成的 但由于阶梯很小 所以宏观上看就如图中所画的先行增长锯齿波 18 2 可通过循环程序段的机器周期数 计算出锯齿波的周期 并可根据需要 通过延时的方法来改变波形周期 若要改变锯齿波的频率 可在AJMPMM指令前加入延迟程序即可 延时较短时可用NOP指令实现 本程序就是如此 需要延时较长时 可以使用一个延长子程序 延迟时间不同 波形周期不同 锯齿波的斜率就不同 3 通过A加1 可得到正向的锯齿波 反之A减1可得到负向的锯齿波 4 程序中A的变化范围是0 255 因此得到的锯齿波是满幅度的 如要求得到非满幅锯齿波 可通过计算求的数字量的处置和终值 然后在程序中通过置初值和终值的方法实现 19 产生矩形波电压的参考程序 ORG1100HSTART MOVDPTR 7FFFH 送DAC0832口地址LOOP MOVA dataH 送高电平数据MOVX DPTR ALCALLDELAYH 调用延时子程序MOVA dataL 送低电平数据MOVX DPTR ALCALLDELAYL 调用延时子程序SJMPLCALL 20 执行上述程序就可得到如下图所示的矩形波 21 几点说明 1 以上程序产生的是矩形波 其低点平的宽度由延时子程序DELAYL所延时的时间来决定 高电平的宽度则由DELAYH所延时的时间决定 2 改变延时子程序DELAYL和的DELAYH延时时间 就可改变矩形波上下沿的宽度 若DELAYL DELAYH 两者延时一样 则输出的是方波 3 改变上限值或下限值便可改变矩形波的幅值 单极性输出时为0 5V或0 5V 双极性输出时为 5V 5V 22 双缓冲方式的接口与应用在多路D A转换的情况下 若要求同步转换输出 必须采用双缓冲方式 DAC0832采用双缓冲方式时 数字量的输入锁存和D A转换输出是分两步进行的 第一 CPU分时向各路D A转换器输入要转换的数字量并锁存在各自的输入寄存器中 第二 CPU对所有的D A转换器发出控制信号 使各路输入寄存器中的数据进入DAC寄存器 实现同步转换输出 下图为两片DAC0832与8031接实现的双缓冲方式连接电路 能实现两路同步输出 23 8051与DAC0832的双缓冲方式接口 24 实现两路同步输出的程序如下 MOVDPTR 0DFFFH 送0832 1 输入锁存器地址MOVA data1 data1送0832 1 输入锁存器MOVX DPTR A MOVDPTR 0BFFFH 送0832 2 输入锁存器地址MOVA data2 data2送0832 2 输入锁存器MOVX DPTR A MOVDPTR 7FFFH 送两路DAC寄存器地址MOVX DPTR A 两路数据同步转换输出 25 8051与12位DAC的接口DAC1208的内部结构和原理与DAC0832相似 DAC1208也是双缓冲器结构 输入控制线与DAC0832也很相似 和用来控制输入寄存器 和用来控制DAC寄存器 但增加了一条控制线BYTE1 BYTE2 用来区分输入8位寄存器和4位寄存器 当BYTE1 BYTE2 1时 两个寄存器都被选中 BYTE1 BYTE2 0时 只选中4位输入寄存器 26 DAC1208内部结构框图 27 8051和DAC1208的连接 28 MOVR0 21H 8位输入寄存器地址MOVR1 DIG 高8位数据地址MOVA R1 取高8位数据MOVX R0 A 送DAC1208DECR0 4位输入寄存器地址INCR1 低4位数据地址MOVA R1 取低4位数据SWAPA 与高4位数交换MOVX R0 A 送DAC1208MOVR0 22H DAC1208的DAC寄存器地址MOVX R0 A 完成12位D A转换 设4位输入寄存器地址为20H 8位输入寄存器地址为21H 采用2根译码器输出线作为DAC208的 对应l地址20H和21H 及 对应地址22H 设12位数据存放在内部RAM区的DIG和DIG 1单元中 高8位存于DIG 低4位存于DIG 1 转换程序如下 29 ADC接口技术 阶梯波比较式ADC工作原理 转换开始时 计数器复0 DAC的输出为Vd 0 若输入电压Vi为正 则比较器输出Vc为正 与门打开 计数器对时钟脉冲进行计数 DAC输出即随计数脉冲的增加而增加 如图所示 当Vd Vi时 比较器输出变负 与门关闭 停止计数 计数器的计数值正比于输入电压 完成了从输入模拟量 电压到计数器的计数值 数字量的转换 30 工作原理是单片机通过P1口发送一个8位数据到DAC 比较器对DAC的输出Vs和需要转换的模拟输入量Vx进行比较 比较的结果 为0 表示VsVx 送到单片机的T0引脚 单片机通过测试引脚T0来确定与模拟输入量Vx合适的数值 用单片机IO口实现比较式ADC 31 编程思想是先从P1口输出数据10000000B然后测T0 如果T0为0则保持数据最高位D7为1 如果T0为1则清 0 D7位 再从P1口输出数据 1000000B 判T0 若T0为0则保持D6位为1 若T0为1则清 0 D6位 如此进行 最后从P1口输出 1B 判T0 若T0为0则保持D0位为1 若T0为1则清 0 D0位 至此便得到与Vx对应的8位数值 32 AD MOVR7 08H R7存放比较次数MOVA 0MOVR6 0 R6保存中间结果MOVR5 0 R5存放新的测试数据SETBC 置1进位位CL1 MOVA R5RRCA R5 带C右环移一位MOVR5 AORLA R6 与R6值相加MOVP1 A 从P1口输出测试数据JBT0 L2 若T0为1则不保留此位MOVR6 A 若T0为0则保留此位为1L2 DJNZR7 L1 判8次比较完否 RET 33 ADC0809内部逻辑结构ADC0809引脚图 典型A D转换器芯片ADC0809 34 ADC0809内部多路开关可选通8个模拟通道 允许8路模拟量分时输入 共用一个A D转换器进行转换 这是一种经济的多路数据采集方法 地址锁存与译码电路完成对A B C3个地址位进行锁存和译码 其译码输出用于通道选择 其转换结果通过三态输出锁存器存放 输出 因此可以直接与系统数据总线相连 通道选择表 35 ADC0809的工作时序图 36 ADC0809芯片为28引脚为双列直插式封装 其引脚排列如图所示 主要信号引脚的功能如下 IN7 IN0 模拟量输入通道A B C 地址线 通道端口选择线 A为低地址 C为高地址 引脚图中为ADDA ADDB和ADDC 其地址状态与通道对应关系见表9 1 ALE 地址锁存允许信号 对应ALE上跳沿 A B C地址状态送入地址锁存器中 37 START 转换启动信号 START上升沿时 复位ADC0809 START下降沿时启动芯片 开始进行A D转换 在A D转换期间 START应保持低电平 本信号有时简写为ST D7 D0 数据输出线 为三态缓冲输出形式 可以和单片机的数据线直接相连 D0为最低位 D7为最高OE 输出允许信号 用于控制三态输出锁存器向单片机输出转换得到的数据 OE 0 输出数据线呈高阻 OE 1 输出转换得到的数据 38 CLK 时钟信号 ADC0809的内部没有时钟电路 所需时钟信号由外界提供 因此有时钟信号引脚 通常使用频率为500KHz的时钟信号 EOC 转换结束信号 EOC 0 正在进行转换 EOC 1 转换结束 使用中该状态信号即可作为查询的状态标志 又可作为中断请求信号使用 Vcc 5V电源 Vref 参考电源参考电压用来与输入的模拟信号进行比较 作为逐次逼近的基准 其典型值为 5V Vref 5V Vref 5V 39 8051单片机与ADC0809的接口 40 采用线选法规定其端口地址用单片机的P2 7引脚作为片选信号 因此端口地址为7FFFH 片选信号和信号一起经或非门产生ADC0809的启动信号START和地址锁存信号ALE 片选信号和信号一起经或非门产生ADC0809输出允许信号OE OE 1时选通三态门使输出锁存器中的转换结果送入数据总线 ADC0809的EOC信号经反相后接到8051的引脚用于产生转换完成的中断请求信号 ADC0809芯片的3位模拟量输入通道地址码输入端A B C分别接到8031的P0 0 P0 1和P0 2 故只要向端口地址7FFFH分别写入数据00H 07H 即可启动模拟量输入通道0 7进行A D转换 41 转换数据的传送A D转换后得到的数据应及时传送给单片机进行处理 数据传送的关键问题是如何确认A D转换的完成 因为只有确认完成后 才能进行传送 为此可采用下述三种方式 1 定时传送方式对于一种A D转换其来说 转换时间作为一项技术指标是已知的和固定的 例如ADC0809转换时间为128 s 相当于6MHz的MCS 51单片机共64个机器周期 可据此设计一个延时子程序 A D转换启动后即调用此子程序 延迟时间一到 转换肯定已经完成了 接着就可进行数据传送 2 查询方式A D转换芯片由表明转换完成的状态信号 例如ADC0809的EOC端 因此可以用查询方式 测试EOC的状态 即可却只转换是否完成 并接着进行数据传送 3 中断方式把表明转换完成的状态信号 EOC 作为中断请求信号 以中断方式进行数据传送 42 不管使用上述那种方式 只要一旦确定转换完成 即可通过指令进行数据传送 首先送出口地址并以RD信号有效时 OE信号即有效 把转换数据送上数据总线 供单片机接受 不管使用上述那种方式 只要一旦确认转换结束 便可通过指令进行数据传送 所用的指令为 MOVDPTR 7FFFHMOVXA DPTR该指令在送出有效口地址的同时 发出有效信号RD 使0809的输出允许信号OE有效 从而打开三态门输出 使转换后的数据通过数据总线送入A累加器中 43 需要说明的是 ADC0809的三个地址端A B C既可如前所述与数据线相连 也可与地址线相连 例如与A0 A2相连 这时启动A D转换的指令与上述类似 只不过A的内容为任意数 例如当A B C分别与A0 A1 A2相连时 启动A D转换只需要一条MOVX指令 在此之前 要将P2 7清零并将最低三位与所选择的通道对应的口地址送入数据指针DPTR中 例如要选择IN7通道时 可采用如下两条指令启动A D转换 MOVDPTR 7FFFH 送入0809的口地址MOVX DPTR A 启动A D转换 IN7 注意 此处A中内容与A D转换无关 可为任意值 44 A D转换应用举例采用中断工作方式对8路模拟输入信号依次进行A D转换并把转换结果存入内部数据存储器的程序 设数据存储器的首地址为30H 采用前面的接口电路 初始化程序 MOVR0 30H 数据区首地址MOVR4 08H 八路模拟信号MOVR2 00H 模拟通道0SETBEA 开中断SETBEX1 允许外中断1SETBIT1 边沿触发MOVDPTR 7FFFH ADC0809端口地址MOVA R2MOVX DPTR A 启动ADC0809SJMP 等待 45 中断服务程序 MOVXA DPTR 输入转换结果MOV R0 A 存入内存INCR0 数据区地址加1INCR2 修改输入通道MOVA R2MOVX DPTR A 启动下一路通道DJNZR4 LOOP 八路未完 循环CLREX1 八路完毕 关中断LOOP RETI 中断返回 46 AD574A与8051单片机接口 47 AD574A逻辑控制真值表 48 a 启动与转换 b 转换结果输出 AD574A工作时序图 49 积分型A D转换器工作原理 双积分型A D转换器工作原理双积分型A D转换是一种间接A D转换技术 首先将模拟电压转换成积分时间 然后用数字脉冲计时方法转换成计数脉冲数 最后将此代表模拟输入电压大小的脉冲数转换成二进制或BCD码输出 50 双积分A D转换电路原理及工作波型图 51 1 准备期 开关S1 S2 S3断开 S4接通 积分电容C被短路 输出为0 2 采样期 开关S2 S3 S4断开 S1闭合 积分器对输入模拟电压 Vi进行积分 积分时间固定为T1 在采样期结束的t2时刻 积分器输出电压为 式中为被测模拟电压在T1时间内的平均值 3 比较期 从t2时刻开始 开关S1 S2 S4断开 S3闭合 将与被测模拟电压极性相反的标准电压 Er接到积分器的输入端 若被测模拟电压为 Vi 则S1 S3 S4断开 S2闭合 将 Er接到积分器的输入端 使积分器进行反向积分 当积分器的输出回到0时 比较器的输出发生跳变 设在t3时刻积分器回0 此时有 式中T2 t3 t2为比较周期 52 在T2周期内对一个周期为 的时钟脉冲进行计数 得 由于T1 Er 都是恒定值 从而计数值N就正比于被测模拟电压值 实现了A D转换 53 典型双积分A D转换器芯片ICL7135 ICL7135是一种常用的4位半BCD码双积分型单片集成ADC芯片 其分辩率相当于14位二进制数 它的转换精度高 转换误差为 1LSB 并且能在单极性参考电压下对双极性输入模拟电压进行A D转换 模拟输入电压范围为0 1 9999V 芯片采用了自动校零技术 可保证零点在常温下的长期稳定性 模拟输入可以是差动信号 输入阻抗极高 54 ICL7135的输出时序图 B8 B4 B2 B1 BCD码数据输出 B8为最高位 B1为最低位 D5 D4 D3 D2 D1 BCD码数据的位驱动信号输出端 分别选通万 千 百 十 个位 55 ICL7135与单片机8031的接口电路 56 ICL7135转换结果输出是动态的 因此必须通过并行接口才能与单片机连接 上图所示为ICL7135通过并行接口芯片8155与单片机8031的接口电路 图中74LS157为4位2选1的数据多路开关 74LS157的SEL输入为低电平时 1A 2A 3A输入信息在1Y 2Y 3Y输出 SEL为高电平时 1B 2B 3B输入信息在1Y 2Y 3Y输出 因此 当7135的高位选通信号D5输出为高电平时 万位数据B1和极性 过量程 欠量程标志输入到8155的PA0 PA3 当D5为低电平时 7135的B8 B4 B2 B1输出低位转换结果的BCD码 此时BCD码数据线B8 B4 B2 B1输入到8155的PA3 PA0 57 8155的定时器作为方波发生器 8031的晶振频取12MHz 8031的ALE端输出2MHz的频率信号给8155定时器输入端TIMERIN 定时器经16分频后 输出频率为125kHz的方波 作为7135的时钟脉冲 8155的PA口工作于选通输入方式 ICL7135的数据输出选通脉冲线接到8155的PA口数据选通信号线ASTB PC2 8155PA口中断请求线AINTR PC0 反相后接到8031的 当ICL7135完成一次A D转换以后 产生5个数据选通脉冲 分别将各位的BCD码结果和标志D1 D4打入8155的PA口 PA口接收到一个数据以后 中断标志线AINTR PC0 变高 通过反相器使单片机8031外部中断1输入端变为低电平 向CPU请求中断 CPU响应中断后 读取8155PA口的数据 58 7135A D转换流程 59 三积分式ADC的工作原理 为了提高双分积式ADC的分辨率 出现了多积分式ADC 下面简单介绍三重积分式ADC的工作原理 它的特点是比较期由两段斜坡组成 当积分器输出电压接近0点时 突然换接数值较小的基准电压 从而降低了积分器输出电压的斜率 延长积分器回0的时间 使比较周期延长以获得更多的计数值 从而提高了分辨率 而积分器在输出电压较高时 接入数值较大的基准电压 积分速度快 因而转换速度也快 60 系统中有两个比较器 比较器1的比较电平为0电平 比较器2的比较电平为V 同时有两个基准电压Er和Er 2m 工作过程如下 采样期 Sx接通 Spb Sps断开 积分器对被测电压Vi积分 积分周期恒定为T1 比较期I Spb接通 Sx Sps断开 积分器对极性与Vi相反的基准电压Er进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编教材二年级上册道德与法治教学进度计划
- 九年级上册道德与法治教育评价计划
- 工业炉及电炉装配工作业指导书
- 陶瓷模型制作工作业指导书
- 干洗店设备租赁合同协议
- 建筑材料确认与验证计划
- 如何自己签亲签协议合同
- 富裕土地流转协议书模板
- 学校学生入学纪律协议书
- 工程项目终止合同协议书
- 2025年海南省通信网络技术保障中心招聘考试笔试试题(含答案)
- 2025年国家卫生健康委医药卫生科技发展研究中心招聘考试笔试试题(含答案)
- 2025至2030中国PE微粉蜡市场需求量预测及前景动态研究报告
- 2025年理赔专业技术职务任职资格考试(理赔员·保险基础知识)历年参考题库含答案详解(5套)
- 2025年北京标准租房合同范本下载
- TSGD7002-2023-压力管道元件型式试验规则
- 面试礼仪与求职技巧讲义
- 严重创伤的急诊管理课件
- 江西省普通高中学生综合素质评价手册
- 急性阑尾炎【普外科】-课件
- 文化人类学课件完整版
评论
0/150
提交评论