标题:[求助]关于从设备读数的问题
只看楼主
Powerqy
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-3-30
 问题点数:0 回复次数:3 
[求助]关于从设备读数的问题
现有8个设备,使用软件查询方式与MPU通信,当状态d0=1时,为第1#设备读入字符;当状态d1=1时,为第2#设备读入字符;以此类推,当状态d7=1时,为第8#设备读入字符;设状态端口地址为10H,1#到8#设备数据端口地址为00H-07H,输入字符缓冲区首地址分别为BUFF1-BUFF8。

编程完成从这8个输入设备分别输入10个字符?
搜索更多相关主题的帖子: 读数 设备 
2007-06-01 08:33
菜鸟上路
Rank: 4
等 级:贵宾
威 望:14
帖 子:1120
专家分:0
注 册:2006-3-21
得分:0 
粗略的写了下,可以说明思路

NEXT:
MOV AH,01H
INT AL,10H
AND AH,AL
CMP AH,1
JNZ NEXT1
MOV DI,0
CALL INPUT
NEXT1:
ROR AH,1
CMP AH,02H
JNZ NEXT2
MOV DI,1
CALL INPUT
NEXT3:
ROR AH,1
CMP AH,04H
JNZ NEXT4
MOV DI,2
CALL INPUT
NEXT4:
ROR AH,1
CMP AH,08H
JNZ NEXT5
MOV DI,3
CALL INPUT
...
...
...
NEXT8:
ROR AH,1
CMP AH,80H
JNZ NEXT

INPUT PROC
PUSH AX
MOV SI,0
AGAIN:
XOR AL,AL
MOV AL,BUFF1[SI+DI]
INC SI
OUT 00H,AL
CMP SI,10H
JBE AGAIN
POP AX
INPUT ENDP

2007-06-01 09:46
Powerqy
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-3-30
得分:0 
首先这是从外设读数据的,而且读入的缓冲区不一样!

有一个疑问怎样把每个外设的数据都读了,第一次有可能一些外设没有被读到,第二次要再读这个状态端口,上次已经读过的设备的状态是0还是1?

谢谢!
2007-06-01 13:09
菜鸟上路
Rank: 4
等 级:贵宾
威 望:14
帖 子:1120
专家分:0
注 册:2006-3-21
得分:0 
一个设备读10次啊

2007-06-01 13:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-143977-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.102373 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved