- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
“8位输入寄存器”锁存
第八章 MCS51与DA、AD接口 8.1 MCS-51单片机与DAC的接口 * * 8.1.1 DA转换器概述 一、D/A(Digit to Analog)转换器 单片机处理的是数字量。 D/A转换器是将数字量转换成相应的模拟量(电流、电压等)的电子器件,是应用广泛的集成电路芯片。 二、D/A转换器的原理 按权展开,然后相加; 即D/A转换器能把输入数字量中的每位都按其权值分别转换成模拟量,并通过运算放大器求和相加。 D/A转换器内部必须有一个解码网络,以实现按权值分别进行D/A转换。 解码网络有两种:二进制加权电阻网络和T型电阻网络。 D1 Vo Vo = = = = 二进制加权电阻网络 T型电阻网络 D3 D2 D1 D0 n位数字量与模拟量的关系式: VO = -VREF×(数字码 / 2n) (VREF —— 参考电压) 注:因使用反相比例放大器来实现电流到电压的转换,所以输出模拟信号(VO)的极性与参考电压(VREF)极性相反。 三、D/A转换器的性能指标 分辨率 指能分辨的的最小输出模拟增量,是对输入变化敏感程度的描述,取决于输入数字量的二进制位数。 若数字量的位数是n,则D/A转换器的分辨率为2-n。 数字量位数越多,分辨率也越高,即转换器对输入量变化的敏感度也就越高。 实际应用时,应根据分辨率的要求来选定转换器的位数。 转换精度 指满量程时DAC的实际转换值和理论值的接近程度。 转换精度和分辨率是两个不同的概念。 例如满量程时的理论输出值为10V,实际输出值是在9.99~10.01之间,其转换精度为±10mV。 分辨率很高的D/A转换器并不一定具有很高的精度。 偏移量误差 指输入数字量为零时,输出模拟量对零的偏移值。 可通过DAC外接UREF和电位器加以调整。 建立时间 指从输入数字量变化到输出达到终值的1/2LSB(最低有效位)时所需的时间。 通常以建立时间表明转换速度。 D/A转换速度远高于A/D转换。 8.1.2 典型的D/A转换芯片DAC0832 一、DAC0832芯片内部结构 数字量输入 允许数字量输入 片选信号 输入寄存器写选通信号 DAC寄存器写入信号 DAC寄存器输入控制线 基准电压输入 电流输出线 反馈电阻端 DAC0832内部由三部分电路组成 “8位输入寄存器”。用于存放CPU送来的数字量,使输入数字量得到缓冲和锁存,由LE1控制。 “8位DAC寄存器”。用于存放待转换的数字量,由LE2控制。 “8位D/A转换电路”。由8位T型电阻网络和电子开关组成,电子开关受DAC寄存器的控制。T型网络能输出和数字量成正比的模拟电流。因此,DAC0832需外接运放才能得到模拟电压。 二、DAC0832芯片引脚 DAC0832有20引脚,双列直插式封装。 DI0~DI7(DI0为最低位):8位数字量输入端。 ILE:数据允许控制输入线,高电平有效。 /CS:片选信号。 /WR1:写信号线1。 /WR2:写信号线2。 /XFER:数据传送控制信号输入线,低电平有效。 IOUT1:模拟电流输出线1。它是数字量输入为“1”的模拟电流输出端。 IOUT2:模拟电流输出线2,它是数字量输入为“0”的模拟电流输出端,采用单极性输出时,IOUT2常常接地。 Rfb:片内反馈电阻引出线,反馈电阻制作在芯片内部,用作外接的运算放大器的反馈电阻。 VREF:基准电压输入线。电压范围为-10V~+10V。 VCC:工作电源输入端,可接+5V~+15V电源。 AGND:模拟地。 DGND:数字地。 三、DAC0832与单片机接口 1、直通方式 MOV P1,A 当引脚/WR1、/WR2、/CS、/XFER直接接地,ILE接电源,DAC0832工作于直通方式,此时,8位输入寄存器和8位DAC寄存器都直接处于导通状态,8位数字量到达DI0~DI7,就立即进行D/A转换,从输出端得到转换的模拟量。 Rfb ILE IOUT1 IOUT2 VCC 直通方式仿真图 ORG 0000H LOOP: MOV A,#0 MOV P1,A ACALL DELAY MOV A,#0FFH MOV P1,A ACALL DELAY SJMP LOOP DELAY: MOV R4,#20 D2: MOV R5,#20 DJNZ R5,$ DJNZ R4, D2 RET END 方波
文档评论(0)