单片机技术应用教程 配套课件.ppt

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

7.4.2 DAC0832内部逻辑结构 在8位D/A转换器中,常用的型号有DAC0830/31/32,图7-20是DAC0832的内部结构。从该图中可见DAC0832内部有两个8位寄存器和一个8位D/A转换器,设置两个寄存器的好处是可以进行两次缓冲,在双路需要同步输出时硬件电路设计会非常简单。 图7-21是DAC0832的外部管脚,各引脚的功能分别如下。 图7-20 DAC0832内部结构 图7-21 DAC0832 外部管脚 (1)DI7~DI0:转换数据输入。 (2):片选信号(输入),低电平有效。 (3)ILE:数据锁存允许信号(输入),高电平有效。 (4):第1写信号(输入),低电平有效。 (5):第2写信号(输入),低电平有效。 (6):数据传送控制信号(输入),低电平有效。 (7)Iout1:电流输出1。 (8)Iout2:电流输出2。Iout1+Iout2=常数。 (9)Rfb:反馈电阻端,为了简化,有时可以省却。 (10)Vref:基准电压,其电压可正可负,范围是-10 V~+10 V。 (11)DGND:数字地。 (12)AGND:模拟地。 7.4.3 DAC0832的工作方式 鉴于DAC0832内部双缓冲这种特殊结构,在使用时可以有三种工作方式供选择。 1.直通方式 让DAC0832的5个控制脚始终有效(除了ILE接高电平之外,其余都接低电平),这时输入的数字量就直接被转换成模拟量,这种方式一般应用在不带微机控制的数字系统中。 2.单缓冲方式 将5个控制脚在指令的控制下一次选通,与直通方式的区别是控制脚受指令控制。为简化控制电路,5个控制脚往往将其中几个先直接接成有效,相当于减少了控制脚,简化外部电路。这种方式应用在微机控制的单路D/A输出的场合,图7-22是DAC0832单缓冲方式的应用实例。 图7-22 DAC0832 单缓冲方式应用实例 DAC0832是电流输出,为了取得电压输出,须在电压输出端接运算放大器,而且经过运算放大器后的电压极性是倒相的,图7-22中第一个运算放大器输出的模拟电压是0 V~-5 V(与基准有关),第二个运算放大器的放大倍数为–1,所以最后的输出OUT为0 V~5 V。下面结合图7-22编写一个锯齿波发生器的程序: ORG 00000H SJMP START ORG 0050H START: MOV DPTR,#7FFFH ;设置D/A地址,图7-22中P2.7 = 0 MOV A,#00H ;锯齿波起始电压 GO_ON: MOVX @DPTR,A ;数字量送D/A INC A ;锯齿波电压递增 1 SJMP GO_ON ;继续送D/A END 7.1.4 动态扫描程序设计 在动态方式的结构中,我们将提供笔画码的端口称为“段(码)口”,与各数码管公共端所接的口称为“位(置)口”。另外,为使扫描程序具有较好的移植性,我们在内存中指定一块数据缓冲区(称显示缓冲区),显示程序的功能就是将显示缓冲区内的数据分别显示在各个数码管的位置上。考虑到程序的总体结构,显示程序设计成子程序,动态扫描流程如图7-6所示。 图7-6 动态扫描流程图 第5章 中断系统及定时/计数器 结合图7-5,设显示缓冲区的地址为40H、41H、42H、43H共4个单元,段(码)口地址为PORT_D,位(置)口地址为PORT_W,根据图7-6所示流程,写出动态扫描的程序如下: DISP: MOV R0,#40H ;设置缓冲区首地址 MOV R7,#4 ;设置数码管个数(也即循环次数) MOV R2,B ;设置首位数码管工作的位状态, 0 选中 DIS: MOV A,R2 ;取位状态 MOV DPTR,#PORT_W ;指向位(置)口 MOVX @DPTR,A ;选中位(将LED位置状态数据送位口) MOV A,@R0 ;取缓冲区数据 MOV DPTR,#TAB ;定义表格首地址 MOVC A,@A+DPTR ;查表转换成LED笔画码 MOV DPTR,#PORT_D ;指向段(码)口 MOVX @DPTR,A ;LED笔画码送段码口 LCALL DELAY ;等待1ms INC R0 ;显示缓冲区地址 MOV A,R2 ;LED位置调整 RL A MOV R2,A DJNZ R7,DIS ;6次扫描是否完成 RET 根据时钟频率调整 R5的初始数据或改变循环体内的语句,可以改

文档评论(0)

教育课件资源 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档