微机题!请高手解答,急,明天(1月7)早10点半前要!!

来源:百度知道 编辑:UC知道 时间:2024/06/05 02:41:11
1 数据采集系统设计
利用8253,8255A,ADC0809设计一个基于8088最小系统的数据采集系统(不包含A/D转换器输入通道中的放大器和采样保持电路)。要求每隔200μs采集一个数据,每次启动采集数据时采集时间为20ms。假定时钟频率为5MHz,由一只开关手动启动数据采集,数据的I/O传送采用中断控制。8259A地址为20H,21H,仅对8255A,8253地址进行译码,8255A、8253的端口地址为每位同学学号最后4位乘以8,如:学号后4位是1820,则地址范围为1820*8--1820*8+8。允许附加必要的门电路、地址译码器和单稳电路等。完成:
(1) 硬件设计,画出连接图(不包括8259A,用正规“米”字方格纸绘制)
(2) 软件设计,包括8255A,8253的初始化及中断服务程序(只采集ADC0809的IN0通道)。
补充下,我的学号后四位是0328,谢谢!

另外,下午两点半前回答也可以!

图的话麻烦发到邮箱yang-qiu-qiu@hotmail.com

stack segment para stack 'stack'
dw 256 dup(?)
stack ends
data segment
intseg dw ? ;段基址
intoff dw ? ;偏移量
imr db ? ;IMR中的内容
count db ? ;采集计数器
data ends
code segment
start: assume cs:code,ds:data
cli ;关中断
mov ax,data
mov ds,ax
mov ax,0000h
mov ds,ax
mov si,0020h
lodsw
mov bx,ax
lodsw
push ax;seg
push bx;offset
in al,21h ;读出IMR
mov intimr,al ;保存原IMR的内容
and al,0fdh ;11111101,允许IRQ2,其他不变
out 21h,al ;设置新的IMR
mov dx,2631 ;0328*8=2624
mov al,00110110B ;计数器0工作方式3,2进制
out dx,al
mov ax,10000
mov dx,2628
out dx,al
mov al,ah
out dx,al ;8253
mov dx,2631
mov al,01110110B ;计数器1工作方式3,2进制
mov ax,100
ou