《单片机原理及应用》课件第6章.ppt

《单片机原理及应用》课件第6章.ppt

  1. 1、本文档共290页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

(3)双缓冲方式:两个锁存器都处于受控状态,此时单片机要对DAC芯片进行两步写操作——将数据写入输入锁存器(LE1=1),将输入锁存器的内容写入DAC锁存器(LE2=1)。这种方式的优点是数据接收和启动转换可异步进行,可在D/A转换的同时,进行下一数据的接收,以提高转换速度,还可以实现多个模拟输出通道同时进行转换,同步输出。下面以单缓冲和双缓冲工作方式为例,介绍DAC0830/DAC0831/DAC0832与51单片机的接口电路及转换程序。DAC0830/DAC0831/DAC0832采用单缓冲工作方式的接口电路如图6.31所示。图6.31单路DAC0830/DAC0831/DAC0832与单片机接口逻辑图图中ILE接+5V,片选信号CS和数据传送控制信号XFER相连后由8051的P2.7控制,WR1和WR2相连后由8051的WR控制。这种连接方法是把DAC0830/DAC0831/DAC0832的两个数据锁存器接成具有一个数据锁存功能的端口,只要8051单片机对DAC0830/DAC0831/DAC0832执行一次写操作,就把一个8位数据写入到DAC锁存器中,同时启动转换。由于把DAC0830/DAC0831/DAC0832接成单缓冲方式,它具有数字量的输入锁存功能,因此数字量可以直接从8051的数据线P0口送入。设分配给DAC0830/DAC0831/DAC0832的地址为7FFFH(P2.7=0),则执行下列三条指令就可以将一个数字量转换为模拟量:MOVDPTR,#7FFFH;端口地址送DPTRMOVA,#DATA;8位数字量送累加器MOVX@DPTR,A;向锁存器写入数字量,同时启动转换DAC0830/DAC0831/DAC0832转换时控制信号的时序如图6.32所示。图6.32单路DAC0830/0831/0832控制时序下面的程序可使DAC0830/DAC0831/DAC0832输出呈渐升骤降的电压锯齿波:START:MOVDPTR,#7FFFHMOVA,#00LOOP:MOVX@DPTR,AINCAMOVR0,#DATA;DATA为延时常数DJNZR0,$;延时,改变DATA可改变锯齿波周期T值SJMPLOOP上述程序执行时,可用示波器观察到模拟输出端的输出波形,如图6.33所示。图6.33由软件产生的锯齿波D/A转换芯片除用于输出模拟量控制电压外,也常用于产生一定的波形。若需要的是渐降骤升的三角波、倒三角波,以至梯形波、不同占空比的矩形波,甚至组合波形,都可仿照上例稍加变化,一一编程生成。在应用系统中,如果需要同时输出几路模拟信号,则D/A转换器必须采用双缓冲工作方式。图6.34是一个两路模拟信号同步输出的D/A转换电路。图中两片D/A转换器的输入锁存器可被编址为0DFFFH和0BFFFH,而这两片DAC锁存器作为一个数据端口,被编址为7FFFH。采用这种双缓冲接法,数字量的输入锁存和D/A转换器的输出是分两步完成的,即单片机的数据总线分时向各路D/A转换器输入要转换的数字量并锁存在各自的输入锁存器中,然后单片机对所有的D/A转换器发出控制信号,使各个D/A转换器输入寄存器中的数据打入DAC锁存器,从而实现同步输出。更多路接法可照此类推。图6.34两路DAC0830/DAC0831/DAC0832与单片机接口逻辑图如果图6.34中的模拟输出分别用于示波器的X、Y偏转,则51单片机执行下面的程序后,可使示波器上的光点根据参数X、Y的值同步移动。MOVDPTR,#0DFFFHMOVA,#XMOVX@DPTR,A;将参数X写入DAC(1)的数据 输入锁存器MOVDPTR,#0BFFFHMOVA,#YMOVX@DPTR,A;将参数Y写

文档评论(0)

酱酱 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档