




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章D A数模转换 10 1DAC0832芯片引脚和内部结构10 1 1项目1 DAC0832输出连续的锯齿波10 1 2知识讲解10 212位D A转换芯片DAC1210与DAC0832应用10 2 1项目2 DAC0832输出连续的三角波和锯齿波10 2 1知识讲解10 3项目扩展与工程应用10 3 1项目3 用DAC0832控制直流电机10 3 2项目4 直流电机转速控制 10 1DAC0832芯片引脚和内部结构 10 1 1项目1 DAC0832输出连续的锯齿波1 项目要求与目的 1 项目要求 编写程序 使DAC0832输出连续的锯齿波 用示波器观看 2 项目目的 了解DAC0832芯片的引脚和内部结构 了解DAC0832芯片的性能及编程方法 掌握8086CPU与DAC0832连接硬件电路 2 项目电路连接与说明 1 项目电路连接 DAC0832的片选孔用导线接至译码处208H 20FH插孔 用示波器的输入探头接DAC0832的输出插孔 2 项目说明 本项目是DAC0832输出连续的锯齿波模拟电压 输出结果可用示波器观察 波形如图10 1所示 D A转换是把数字量转化成模拟量的过程 D A转换取值范围为一个周期 采样点越多 精度越高些 本项目采用的采样点为256点 周期 图10 1生成的锯齿波波形图 3 项目电路原理框图 项目电路原理框图如图10 2所示 电路由8086CPU DAC0832芯片 LM358运算放大器等组成 图10 2DAC0832输出锯齿波电路图 4 项目程序设计 1 程序流程图DAC0832输出连续的锯齿波程序流程图如图10 3所示 图10 3DAC0832输出连续的锯齿波程序流程图 2 程序清单DAC0832输出连续锯齿波程序清单如下所示 CODESEGMENTASSUMECS CODESTART PUSHCSPOPDSMOVAL 00H 锯齿波的起始值MOVDX 208H DAC0832地址BG OUTDX AL 输出 进行转换 转换时间1 sNOP 延时NOP 延时NOP 延时INCAL 数字量加1JMPBG 循环CODEENDSENDSTART 10 1 2知识讲解 1 概述D A转换器的作用是将数字信号转换成模拟的电信号 常用的微机控制系统示意图如图10 4所示 各部分的作用如下所示 1 传感器温度 速度 流量 压力等非电信号 称为物理量 要把这些物理量转换成电量 才能进行模拟量对数字量的转换 这种把物理量转换成电量的器件称为传感器 目前有温度 压力 位移 速度 流量等多种传感器 2 A D转换器把连续变化的电信号转换为数字信号的器件称为模数转换器 即A D转换器 3 D A转换器把数字信号转换成模拟信号 去控制执行机构的器件 称为数模转换器 即D A转换器 D A转换即数 模转换 是将数字量转换成与其成比例的模拟量 D A转换器的核心电路是解码网络 解码网络主要形式有两种 一种是权电阻解码网络 另一种是T型电阻网络 图10 4微机控制系统示意图 2 D A转换器的主要技术指标 1 分辨率分辨率是指D A转换器可输出的模拟量的最小变化量 也就是最小输出电压 输入的数字量只有D0 1 与最大输出电压 输入的数字量所有位都等于1 之比 也通常定义刻度值与2n之比 n为二进制位数 二进制位数越多 分辨率越高 例如 若满量程为5V 根据分辨率定义 则分辨率为5v 2n 设8位D A转换 即n 8 分辨率为5v 28 19 53mv 即二进制变化一位可引起模拟电压变化19 53mv 该值占满量程的0 195 常用1LSB表示 同理 10位D A转换1LSB 5000mv 210 4 88mv 0 098 满量程 12位D A转换1LSB 5000mv 212 1 22mv 0 024 满量程 16位D A转换1LSB 5000mv 216 0 076mv 0 0015 满量程 2 转换精度在理想情况下 精度和分辨率基本一致 位数越多 精度越高 但由于电源电压 参考电压 电阻等各种因素存在着误差 严格来讲精度和分辨率并不完全一致 只要位数相同 分辨率相同 但相同位数的不同转换器精度会有所不同 D A转换精度指模拟输出实际值与理想输出值之间的误差 包括非线性误差 比例系数误差 漂移误差等项误差 用于衡量D A转换器将数字量转换成模拟量时 所得模拟量的精确程度 注意 精度与分辨率是两个不同的参数 精度取决于D A转换器各个部件的制作误差 而分辨率取决于D A转换器的位数 3 影响精度的误差失调误差 零位误差 定义为 当数值量输入全为 0 时 输出电压却不为0V 该电压值称为失调电压 该值越大 误差越大 增益误差定义为 实际转换增益与理想增益之误差 线性误差定义 它是描述D A转换线性度的参数 定义为实际输出电压与理想输出电压之误差 一般用百分数表示 4 转换速度D A转换速度是指从二进制数输入到模拟量输出的时间 时间越短速度越快 一般几十到几百微妙 5 输出电平范围输出电平范围是指当D A转换器可输出的最低电压与可输出的最高电压的电压差值 常用的D A转换器的输出范围是0 5V 0 10V 2 5 2 5V 5 5V 10 10V等 3 DAC0832芯片引脚 D A接口芯片种类很多 有通用型 高速型 高精度型等 转换位数有8位 12位 16位等 输出模拟信号有电流输出型 如DAC0832 AD7522等 和电压输出型 如AD558 AD7224等 在应用中可根据实际需要进行选择 DAC0832是采用CMOS工艺制造的8位电流输出型D A转换器 分辨率为8位 建立时间为1 s 功耗为20mW 数字输入电平为TTL电平 DAC0832是8位电流型D A转换器 20引脚双列直插式封装 引脚如图10 5所示 20个引脚中包括与微机连接的信号线 与外设连接的信号线以及其他引线 功能如下所示 图10 5DAC0832引脚 与微机相连的信号线 D7 D0 8位数据输入线 用于数字量输入 ILE 19脚 输入锁存允许信号 高电平有效 1脚 片选信号 低电平有效 与ILE结合决定是否有效 2脚 写命令l 当为低电平 且ILE和有效时 把输入数据锁存入输入寄存器 ILE和三个控制信号构成第一级输入锁存命令 18脚 写命令2 低电平有效 该信号与配合 当有效时 可使输入寄存器中的数据传送到DAC寄存器中 17脚 传送控制信号 低电平有效 与配合 构成第二级寄存器 DAC寄存器 的输入锁存命令 与外设相连的信号线 Iout1 12脚 DAC电流输出1 它是输入数字量中逻辑电平为 1 的所有位输出电流的总和 当所有位逻辑电平全为 1 时 Iout1为最大值 当所有位逻辑电平全为 0 时 Iout1为 0 Iout2 11脚 DAC电流输出2 它是输入数字量中逻辑电平为 0 的所有位输出电流的总和 Rf 9脚 反馈电阻 为外部运算放大器提供一个反馈电压 根据需要也可外接一个反馈电阻Rf 其它引线 Vref 8脚 参考电压输入端 也称基准电压 要求外部提供精密基准电压 Vref一般在 10 10V之间 VCC 20脚 芯片工作电源电压 一般为 5 15V AGND 3脚 模拟地 DGND 10脚 数字地 注意 模拟地要连接模拟电路的公共地 数字地要连接数字电路的公共地 最后把它们汇接为一点接到总电源的地线上 为避免模拟信号与数字信号互相干扰 两种不同的地线不可交叉混接 4 DAC0832芯片内部结构 结构框图如图10 6所示 它是由一个8位的输入寄存器 一个8位的DAC寄存器和一个8位D A转换器以及控制电路组成 输入寄存器和DAC寄存器可以分别控制 从而可以根据需要接成两级输入锁存的双缓冲方式 一级输入锁存的单缓冲方式 或接成完全直通的无缓冲方式 图10 6DAC0832芯片内部结构 5 D A转换器的输出 1 电流输出和电压输出D A转换的结果若是与输入二进制码成比例的电流 称为电流DAC 若是与输入二进制码成比例的电压 称为电压DAC 常用的D A转换芯片大多属于电流DAC 然而在实际应用中 多数情况需要电压输出 这就需要把电流输出转换为电压输出 采取的措施是用电流DAC电路外加运算放大器 输出的电压可以是单极性电压 也可以是双极性电压 单极性电压输出如图10 7所示 输出电压为VOUT IR输出电压的正负值视所加参考电压极性而定 VOUT的极性与Vref 可以有0V 5 或0V 5 也可以有0V 10 或0V 10 等输出范围 若需双极性电压输出 可在单极性电压输出后再加一级运算放大器 如图10 8所示 如果基准电压Vref 为 5V 则第一个运算放大器A0的输出V1为0到 5V 由Vref为第二个运算放大器A提供一个偏移电流 该电流方向与A0输出的电流方向相反 使得由Vref引入的偏移电流正好是A0输出电流的1 2 因而A的运放输出将在A0运放输出的基础上产生位移 此时 双极性输出电压与Vref及A0运放输出V1的关系为 VOUT 2V1 Vref 即VOUT 2V1 Vref 若V1 0 则VOUT 5 若V1 5 则VOUT 5 VOUT输出范围有 5 5 和 10 10 2 输出零点和满刻度的调正在精度要求较高的D A转换器中都有调零和调满刻度调整电位器 调整时 将D A输出接数字电压表 然后用程序送数据启动D A转换 例如8位D A转换器 输出为单极性0V 5 可用程序送00H 调节调零电位器 使输出为0 再用程序送FFH 调节满刻度调整电位器 使D A输出为满量程5V减去最低位所对应的电压值 最低位所对应的电压值等于VFS 1LSB 其中1LSB 1 256 FS为满量程电压 对双极性输出 设为 5 5 可用程序先给D A送00H 调整调零电位器 使输出为 5 然后再送FFH 调整满刻度电位器 使输出为满量程10V减去一个最低位所对应的电压值 图10 7单极性电压输出 图10 8双极性电压输出 6 DAC0832的工作方式DAC0832内部有两级输入缓冲寄存器 当LE1 1 高电平 时 即ILE 1 0 0 输入寄存器的输出端信号随D7 D0的变化而变化 当LE1 0时 即ILE 0 或 1 或 1 输入寄存器锁存D7 D0的当前值 当LE2 1时 即 0 0 DAC寄存器的输出信号跟随输入寄存器的输出端信号变化 当LE2 0时 即 1或 1 DAC寄存器锁存当前输入寄存器输出的值 送D A转换器进行转换 因此DAC0832有3种工作方式 1 双缓冲方式 数据通过二个寄存器锁存后送入D A转换电路 执行两次写操作才能完成一次D A转换 这种方式特别适用于要求同时输出多个模拟量的场合 这种方式通常采用的接线是 ILE固定接 5V CPU的信号复连接到 和 用作为输入寄存器的片选信号 分别接到两个I O口地址译码输出 接线如图10 9所示 图10 9DAC0832双缓冲方式 2 单缓冲方式 两个寄存器中的一个处于直通状态 输入数据只经过一级缓冲送入D A转换器电路 例如 把 接数字信号地 使DAC寄存器处于直通状态 ILE接 5V 接CPU的 接I O口地址译码 在这种方式下 只需执行一次写操作 即可完成D A转换 可以提高DAC的数据吞吐量 这种方式接线如图10 10所示 图10 10DAC0832单缓冲方式 3 直通方式 两个寄存器都处于直通状态 即ILE 1 和都接数字信号地 数据直接送入D A转换器电路进行D A转换 这种方式可用于一些不采用微机的控制系统中 10 212位D A转换芯片DAC1210与DAC0832应用 1 项目要求与目的 1 项目要求 编写程序 使D A转换模块输出连续三角波和锯齿波 2 项目目的 掌握DAC0832芯片的性能 使用方法及对应硬件电路 了解D A转换的编程方法 掌握8086CPU与DAC接口电路 10 2 1项目2 DAC0832输出连续的三角波和锯齿波 2 项目电路连接与说明 1 项目电路连接 DAC0832的片选孔用导线接至译码处208H 20FH插孔 用示波器的输入探头接DAC0832的输出插孔 2 项目说明 D A转换是把数字量转化成模拟量的过程 本项目是DAC0832输出连续的三角波和锯齿波模拟电压 输出结果可用示波器观察 3 项目电路原理图项目电路原理框图如图10 11所示 电路由8086CPU DAC0832芯片 LM358运算放大器等组成 图10 11DAC0832输出连续的三角波和锯齿波电路图 4 项目程序设计 1 程序流程图 图10 12DAC0832输出连续的三角波和锯齿波程序流程图 2 程序清单DAC0832输出连续三角波和锯齿波清单如下所示 CODESEGMENTASSUMECS CODESTART PUSHCS 置指针POPDSBG NOPMOVDX 208H DAC0832地址MOVAL 00H 置转换初值MOVCX 07FFH 置循环值BB OUTDX AL 转换输出锯齿波ADDAL 01 数字量加1CMPAL 00H 比较数字量为00H吗JNZBB 不为00H转BBLOOPBB 判断循环次数为0吗 不为0转BBNOPMOVAL 00H 置转换初值MOVCX 07FFH 置循环值EE OUTDX AL 转换输出三角波ADDAL 01H 数字量加1CMPAL 0FFH 比较是否是FFH JNEEE 不为FFH转EEFF OUTDX AL 为FFH转换SUBAL 01H 数字量减1CMPAL 00H 比较是否是00H JNEFF 不为00H转FFLOOPEE 判断循环次数为0吗 不为0转EEJMPBG 循环CODEENDSENDSTART 10 2 1知识讲解 1 DAC1210的引脚与内部结构 1 DAC1210的引脚DAC12l0的引脚如图10 13所示 引脚功能如下所示 与CPU相连的引脚 D0 D11 12位数据输入端 1脚 片选信号 输入 低电平有效 2脚 写信号1 输入 低电平有效 在有效时 用它将数字锁存于第一级锁存器中 23脚 12位 4位输入选择 输入 高电平时 高8位和低4位输入锁存 低电平时 低4位输入锁存 21脚 传送控制信号 输入 低电平有效 22脚 写信号2 输入 低电平有效 在有效的条件下 第一级锁存器中的数据传送到第二级的12位DAC寄存器中 与外设相连的引脚 Iout1 13脚 DAC电流输出1 它是逻辑电平为l的各位输出电流之和 Iout2 14脚 DAC电流输出2 它是逻辑电平为0的各位输出电流之和 Rf 11脚 反馈电阻 该电阻被制作在芯片内 用作运算放大器的反馈电阻 其它 Vref 10脚 基准电压输入端 VCC 24脚 逻辑电源 AGND 3脚 模拟地 DGND 12脚 数字地 2 DAC12l0的内部结构DAC12l0的内部结构如图10 14所示 DACl210的内部结构与DAC0832非常相似 也具有双缓冲输入寄存器 不同的是DACl210的双缓冲和D A转换均为12位 DACl210的内部由一个8位锁存器 一个4位锁存器 一个12位DAC锁存器及12位D A转换器组成 图10 13DAC1210的引脚 图10 14DAC1210的内部结构 2 DAC0832应用下面是以电路图10 10所示DAC0832单缓冲方式为基础来说明几种典型应用 设DAC0832的片选接至译码处地址为208H 20FH 1 锯齿波在计算机控制系统中 常常需要一个线性增长的电压 这个线性增长的电压就可以用D A转换去实现 并用示波器来观察转换结果 我们只需要将数字量0 255依次递增连续送到DAC0832进行D A转换 在运算放大器的输出端就可得到如图10 15所示的锯齿波波形 控制程序如下所示 START MOVAL 0 数字量初始值MOVDX 208H DAC0832地址OUTDX ALINCAL 数字量加1JMPSTART 循环 图10 15锯齿波波形图 以上是从0到VFS 满量程 经过了256小步完成的 如果要改变锯齿波的斜率 只要延长每小步的时间 程序修改为如下所示 START MOVAL 0 数字量初始值MOVDX 208H DAC0832地址OUTDX ALCALLDELAY 调延时子程序 时间的长短根据需要确定INCAL 数字量加1JMPSTART 循环 2 三角波三角波波形图如图10 16所示 控制程序如下所示 START MOVAL 0 数字量初始值MOVDX 208H DAC0832地址EE OUTDX AL 转换 产生三角波ADDAL 01H 数字量加1CMPAL 0FFH 比较是否是FFH JNEEE 不为FFH转BBFF OUTDX AL 为FFH转换SUBAL 01H 数字量减1CMPAL 00H 比较是否是00H JNEFF 不为00H转FFJMPSTART 循环 图10 16三角波波形图 3 方波方波波形图如图10 17所示 控制程序如下所示 START MOVAL 0 最小数字量MOVDX 208H DAC0832地址OUTDX ALCALLDELAY 调延时子程序 时间的长短根据需要确定MOVAL 0FFH 最大数字量MOVDX 208H DAC0832地址OUTDX ALCALLDELAY 调延时子程序 时间的长短JMPSTART 循环 图10 17方波波形图 只要在输出的延时时间的长短不同 就可得到如图10 18所示的矩形波 图10 18矩形波波形图 4 梯形波梯形波波形图如图10 19所示 控制程序如下所示 START MOVAL 0 最小数字量MOVDX 208H DAC0832地址OUTDX ALL0 CALLDELAY 调延时子程序 时间的长短根据需要确定L1 INCALOUTDX ALCMPAL 0FFHJNZL1CALLDELAYL2 DECALOUTDX ALCMPAL 00HJNZL2JMPL0 图10 19梯形波波形图 10 3项目扩展与工程应用 10 3 1项目3 用DAC0832控制直流电机1 项目要求与目的 1 项目要求 利用实验板上的8255的PB口接3只开关K0 K1和K2 通过开关的闭合来实现直流电机的不同转速 DAC0832做D A转换器 编制程序 将二进制数字量 通过DAC0832把数字量转换模拟量输出去控制直流电机转速 2 项目目的 掌握D A转换与8086CPU的接口方法 了解8255芯片性能及编程 了解D A芯片DAC0832转换性能及编程 掌握8255芯片与8086CPU的接口方法 2 项目电路连接与说明 1 项目电路连接 8255的片选孔用导线接至译码处200H 207H插孔 DAC0832的片选孔用导线接至译码处208H 20FH插孔 DAC0832的输出AOUT用导线接至直流电机的DCIN插孔 2 项目说明 8255的PB口接3只开关K0 K1和K2 PA口接3只发光二极管LED K0闭合LED0灯亮 数字量00H送DAC0832转换 输出控制直流电机转速 通过开关的闭合来实现直流电机的不同转速 3 项目电路原理框图用8255控制直流电机转速电路原理框图如图10 20所示 电路由8086CPU芯片 DAC0832芯片 8255A芯片 开关和直流电机等组成 图10 20用8255控制直流电机转速电路原理框图 4 项目程序设计 1 程序流程图用8255控制直流电机转速程序流程图如图10 21所示 图10 22程序流程图 2 程序清单用8255控制直流电机转速程序清单如下所示 CODESEGMENTASSUMECS CODESTART MOVDX 203H 8255的控制口地址MOVAL 82H PA输出 PB输入OUTDX ALK0 MOVDX 201H PB口地址INAL DX 读开关的状态ANDAL 01H 与PB0相 与 JNZK1 K0没有闭合 K0 0 转K1MOVDX 200H K0闭合 K0 0 LED0亮MOVAL 0FEH LED0亮OUTDX ALMOVDX 208H DAC0832地址MOVAL 00H 数字量00H送去转换输出0VOUTDX ALJMPK0 K1 MOVDX 201H PB口地址INAL DXANDAL 02H 与PB1相 与 JNZK2 K1没有闭合 K1 0 转K2MOVDX 200H K1闭合 K1 0 LED1亮MOVAL 0FDH LED1亮OUTDX ALMOVDX 208H DAC0832地址MOVAL 80H 数字量80H送去转换输出2 5VOUTDX ALJMPK0K2 MOVDX 201H PB口地址INAL DXANDAL 04H 与PB2相 与 JNZK0 K2没有闭合 K2 0 转K0MOVDX 200H K2闭合 K2 0 LED2亮MOVAL 0FBHOUTDX ALMOVDX 208H DAC0832地址MOVAL 0FFH 数字量FFH送去转换输出5VOUTDX ALJMPK0CODEENDSENDSTART 10 3 2项目4 直流电机转速控制 1 项目要求与目的 1 项目要求 利用实验板上的DAC0832做D A转换器 转换的结果控制直流电机的转速 编制程序 将二进制数字量转换成模拟量 控制直流电机的转速 根据转速用8255的PA口输出到发光二极管左循环显示 2 项目目的 掌握D A转换与8086CPU的接口方法 了解D A芯片DAC0832编程 了解8255芯片编程方法 2 项目电路连接与说明 1 项目电路连接 DAC0832的片选孔用导线接至译码处208H 20FH插孔 AOUT接至直流电机的DCIN端 直流电机的CKM端接至8255的PB0 用来读直流电机的转速 8255的片选孔用导线接至译码处200H 207H插孔 发光二极管LED的L0 L7分别用导线接至8255的PA0 PA7 2 项目说明 在电压允许范围内 直流电机的转速随着电压的升高而加快 将电压经过驱动后加在直流电机上 使其运转 在电机转盘上安装一个小磁铁 用霍尔元件感应直流电机转速 用8086CPU控制8255的PB0读回感应脉冲 从而测算出电机转速 并用LED左循环的速度显示出来 3 项目电路原理框图直流电机转速控制电路原理框图如图10 23所示 电路由8086CPU芯片 DAC0832芯片 8255A芯片直流电机 霍尔元件和发光二极管LED等组成 图10 23直流电机转速控制电路原理框图 4 项目程序设计 图10 24直流电机转速控制程序流程图 2 程序清单直流电机转速控制程序清单如下所示 CODESEGMENTASSUMECS CODESTART MOVAL 82H 8255的PA口输出 PB口输入 方式0MOVDX 203H 8255控制口OUTDX AL 写控制字MOVAH 0FEH 置初值接PA0的LED亮AGAIN MOVDX 208H DAC0832地址MOVAL 0FFH 设置电机转速 送FFH去转换 OUTDX AL DAC0832
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 诺如呕吐包培训知识课件
- 请你到我家玩课件
- 说课课件精美句子简短
- 误食异物安全知识培训
- 2025小学聘用校长合同示范文本
- 2025制作购销合同书
- 2025企业合同范本:是否可以要求所有员工签订全勤劳动合同
- 2025石墨销售合同模板
- 2025初中语文生活美文:婚姻如合同爱情似艺术
- 2025车辆买卖合同模板
- 2025年版小学数学新课程标准测试题含答案【附新课标解读】
- 中医健康管师试题及答案
- 2.1人的社会化 教案 2025-2026学年统编版道德与法治八年级上册
- 新粒子生成与生长机制-洞察及研究
- 医疗机构环境表面清洁与消毒管理标准WST512-2025解读
- GB/T 34399-2025医药产品冷链物流温控设施设备验证性能确认技术规范
- 厦门闽南话趣味教学课件
- 2025年秋期新课标人教版六年级上册数学全册教案(核心素养教案)
- 人教版四年级上册数学各单元教材分析(1-4单元)
- 陕西燃气器具管理办法
- 学校均衡编班管理办法
评论
0/150
提交评论