练习题答案.doc

上传人:h**** 文档编号:1373431 上传时间:2019-02-23 格式:DOC 页数:10 大小:427KB
下载 相关 举报
练习题答案.doc_第1页
第1页 / 共10页
练习题答案.doc_第2页
第2页 / 共10页
练习题答案.doc_第3页
第3页 / 共10页
练习题答案.doc_第4页
第4页 / 共10页
练习题答案.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、1 8 位 D/A 转换器 DAC0832 工作于单缓冲方式,设其端口地址为 PORT1,参考电压 VREF=10V,下列程序用以产生规则波形,该波形的幅值为_(V),波形是_。XOR AL, ALLOP: OUT PORT1,ALINC ALCMP AL, 30HJNE LOPXOR AL, ALJMP LOP第 1 题答案:分析:程序是重复输出有规则的线性增长的电压,首先输出 0V,然后每次递增 1LSB 对应的电压,当输出达到 2FH对应的电压输出时,重新从 0 开始输出线性增长的电压。由于参考电压为正,所以 1LSB 对应的电压是负的1LSB=-10/256=-0.039V所以输出的幅

2、值是: -0.039V*2FH= -0.039V*47=-1.84V波形是负锯齿波。2. 用 DAC0832。输出如下图所示的连续梯形波,周期 T自定,振幅 A=FFH。设计硬件连线图和软件程序。第 2 题答案:连线图如下:程序如下:MOV DX, PORT;译码器所给地址XOR AL, ALLOP: OUT DX, AL ;输出线性递增电压INC ALCMP AL, 0FFHJNE LOPCALL DELAY1 ;确定高电平时间LOP1: DEC ALOUT DX, AL ;输出线性递减电压CMP AL, 00H JNE LOP1CALL DELAY2 ; 确定底电平时间JMP LOP3.

3、从 ADC0809 的 IN3 通道输入一路 05V 的模拟电压信号,进行 A/D 转换,每 10ms 采样一次,8 次采样值进行一次平均值滤波处理,将结果值存入 ADBUF 单元中。ADC0809 的硬件连线图如图,编写出可以实现该功能的程序。连线图:第 3 题答案:如图可知各个端口的地址为:A15 A14A13 A12 A11 A10A9 A8 A 7 A6 A5 A4 A3 A2 A1 A01 0 * * * * * * * 0 C B A * * * EOC 状态查询口 :8000H Y0 C B A=000AD 转换启动口 :800BH Y1 C B A=001数据读入口 : 801

4、0H Y2 C B A=010采集程序如下:MOV CX, 8 ;置采样次数MOV BX, 0START: MOV DX , 800BH;采样启动OUT DX, ALWAIT: MOV DX, 8000H;查询是否转换完毕IN AL, DXTEST AL, 01H ;查询 D0=1?JZ WAITMOV DX, 8010H ;读入数据IN AL, DXSHR AL, 3 ;在这里将读入的数据除8ADD BL, AL;保存到 BL 中ADC BH, 0;将进位保存在 BH 中CALL DELAY;延时 10ms,采样一次LOOP STARTMOV ADBUF, BXHLTCALL DELAY1S

5、_MOV BX, AL4. 如图所示的是一个由 8255A 和 ADC0809 为主组成的 PC 系统总线 8 路数据采集卡原理图。 8255A 的 A 口和 B 口均工作与方式 0.1) 写出 8255A 中各寄存器的端口地址2) 确定 8255A 的方式控制字3) 写出以查询方式巡回采集 8 路数据至内存 BUFF 开始的缓冲区的程序。 (含 8255A 初始化程序) 。4) 若其中一路采集的是温度,测温范围为 0600(线性刻度) ,当某采样周期获得的温度数据是 0AAH 时,则对应的温度是多少?第 4 题答案:1) A 口:2C0H,B 口: 2C1H,C 口:2C2H,控制口:2C3

6、H2) 91H ;A 口方式 0 输入 ,B 口方式 0 输出C 口高四位方式 0 输出C 口低四位方式 0 输入3) 程序如下:START8255: MOV DX, 2C3H;8255 方式字MOV AL, 91HOUT DX, ALXOR AL, ALMOV DX, 2C2HOUT DX, AL;PC4,PC5 置 0ADSTART: MOV CX, 8;转换次数MOV BX, 0;保存通道号START : MOV DX, 2C1H;B 口地址MOV AL, BL;取当前通道号OUT DX, AL;发出启动转换的脉冲MOV DX, 2C3HMOV AL, 09H ;PC4=1OUT DX,

7、 ALMOV AL, 08H ;PC4=0OUT DX, ALMOV DX, 2C2HWAIT: IN AL, DX ;PC0=1?TEST AL, 01HJZ WAIT;发出 OE 信号MOV DX, 2C3HMOV AL, 0BH;PC5=1OUT DX, ALMOV AL, 0AH;PC5=0OUT DX, AL;从 A 口读数据MOV DX, 2C0HIN AL, DXMOV bufBX, ALINC BX;改变通道LOOP STARTHLT4) T=AAH/FFH*600 =400 5. 利用 ADC0809 设计的一个 A/D 转换接口电路如图所示。首先找出 0809 端口地址,然后编程使用查询法进行一次A/D 转换。若将 A2A1A0 改为 D2D1D0 如何编程?第 5 题答案:端口地址:yo:300h307h y1:308h30fh程序如下:mov dx,300h ;从 IN0 开始转换start1:out dx,al;启动 A/D 转换mov dx,308h ;查询是否转换结束start2: in al,dx ;读入状态信息test al,80h ;D71,转换结束否?jz start2 ;没有结束,继续查询mov dx,300h ;转换结束in al,dx ;读取数据若将 A2A1A0 改为 D2D1D0,上述程序中第一句前加一句:Mov al,00

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 教育教学资料库 > 试题真题

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。