第12章 模拟接口习题答案 (1)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第12章模拟接口

〔习题12.1〕

说明在模拟输入输出系统中,传感器、放大器、滤波器、多路开关、采样保持器的作用。DAC和ADC芯片是什么功能的器件?

〔解答〕

〔习题12.2〕

如果将DAC0832接成直通工作方式,画图说明其数字接口引脚如何连接。

〔解答〕

〔习题12.3〕

对应第13.2.4节的图13-9a电路,编写输出一个12位数字量的程序段。假定这12位数据在BX的低12位中。

〔解答〕

mov dx,port1l

mov al,bl

out dx,al

mov dx,port1h

mov al,bh

out dx,al

mov dx,port2

out dx,al

〔习题12.4〕

假定某8位ADC输入电压范围是-5V~+5V,求出如下输入电压V in的数字量编码(偏移码):①1.5V ②2V ③ 3.75V ④-2.5V ⑤-4.75V。

〔解答〕

〔习题12.5〕

ADC的转换结束信号起什么作用,可以如何使用该信号,以便读取转换结果?

〔解答〕

〔习题12.6〕

某控制接口电路如图12-16。需要控制时,8255A的PC7输出一个正脉冲信号START 启动A/D转换;ADC转换结束在提供一个低脉冲结束信号EOC的同时送出数字量。CPU 采集该数据,进行处理,产生控制信号。现已存在一个处理子程序ADPRCS,其入口参数是在AL寄存器存入待处理的数字量,出口参数为AL寄存器给出处理后的数字量。假定8255A端口A、B、C及控制端口的地址依次为FFF8H~FFFBH,要求8255A的端口A为方式1输入、端口B为方式0输出。编写采用查询方式读取数据,实现上述功能的程序段。〔解答〕

;8255A初始化

mov al,1011000×b

mov dx,0fffbh

out dx,al

;使PC7=0(START为低)

mov al,00001110b

mov dx,0fffbh

out dx,al

;启动A/D转换

mov al,00001111b

mov dx,0fffbh

out dx,al ;使PC7=1(START为高)

nop

mov al,00001110b

out dx,al ;使PC7=0(START为低)

;查询是否转换结束

mov dx,0fffah

again: in dx,al

test al,20h

;PC5=0(转换未结束,继续检测)

jz again

;PC5=1(转换结束)

mov dx,0fff8h ;输入数据

in al,dx

call adprcs ;处理数据

mov dx,0fff9h

out dx,al ;输出数据

〔习题12.7〕

假设系统扩展有一片8255A供用户使用,请设计一个用8255A与ADC0809接口的电路连接图,并给出启动转换、读取结果的程序段。为简化设计,可只使用ADC0809的一个模拟输入端,例如IN0。

〔解答〕

采用8255A的方式0,端口A输入

PC0接ADC0809的START,用于启动转换

PC7接ADC0809的EOC,用于输入、判断A/D转换是否结束;采用查询方式ADC0809的OE接+5V,这样可以随时读取A/D转换的结果

假设8255A的A、B、C和控制口地址依次为portA~portD

;8255A初始化

mov al,100110×0b

mov dx,portd

out dx,al

;使PC0=0(START为低)

mov al,0000000b

mov dx,portd

out dx,al

;启动A/D转换

mov al,00000001b

mov dx,portd

out dx,al ;使PC0=1(START为高)

nop

mov al,00000000b

out dx,al ;使PC0=0(START为低)

;查询是否转换结束

mov dx,portc

again: in dx,al

test al,80h

;PC7=0(转换未结束,继续检测)

jz again

;PC7=1(转换结束)

;输入数据

mov dx,porta

in al,dx

也可以采用方式1输入实现,其中关键需要处理好STB*信号,以便将数字量送入8255A。

相关文档
最新文档