这是一个16位精度的数据采集系统。被采集的数据是8 个模拟量,由继电器绕组P0、P1、P7分别控制触点K0、 K1,K7逐个接通。每次采样用一个4位每位为一个十进制 数)数字电压表测量,把被采样的模拟量转换成16位BCD 码即对应4位十进制数的4个BCD码)高8位和低8位通过两 个不同的端口(其地址分别为10H和11H输入。CPU通过 SHI 口20H输出控制信号以控制某个继电器的吸合实现采集 不同通道的模拟量。 翰入输出5中断
这是一个16位精度的数据采集系统。被采集的数据是8 个模拟量,由继电器绕组P0、P1、…P7分别控制触点K0、 K1…K7逐个接通。每次采样用一个4位(每位为一个十进制 数)数字电压表测量,把被采样的模拟量转换成16位BCD 代 码(即对应4位十进制数的4个BCD码),高8位和低8位通过两 个不同的端口(其地址分别为10H和11H)输入。CPU通过 端 口20H 输出控制信号,以控制某个继电器的吸合,实现采集 不同通道的模拟量
采集过程要求: (1)先断开所有的继电线圈及触头不采集数据。 (2)延迟一段时间后使KO闭合采集第1个通道的模拟 量并保持一段时间以使数字电压表能将模拟电压转换为 16位BCD码。 (3)分别将高8位与低8位BCD码存入内存完成第1个模 拟量的输入与存。 (4利用移位与循环实现8个模拟量的依次采集、输入 与转存。 翰入输出5中断
采集过程要求: (1)先断开所有的继电器线圈及触头,不采集数据。 (2)延迟一段时间后,使K0闭合,采集第1个通道的模拟 量,并保持一段时间,以使数字电压表能将模拟电压转换为 16位BCD码。 (3)分别将高8位与低8位BCD码存入内存,完成第1个模 拟量的输入与存。 (4)利用移位与循环实现8个模拟量的依次采集、输入 与转存
数据采集程序如下: START: MOV DX,0100H:01H→DH置吸合第1个继电器代码 00H→DL,置断开所有继电器代码 LEA BX DSTOR;置输入数据缓冲器的地址指针 XOR AL,AL:清AL及进位位CF AGAIN: MOV AL DL oUT20HAL;断开所有继电器线圈 CALL NEAR DELAY1;模拟继电器触点的释放时间 MOV ALDH oUT20HAL;先使P0吸合 CALL NEAR DELAY2;模拟触点闭台及数字电压表的转换时间 INAx,10H:输入 MOV[B]AX入内存 INC BX INC BX RCL DH1 DH左移(大循环1位为下一个触点吸合 作准备 JNC AGAIN8位都输入完了吗?没有,则循环 DONE A :输入已完,则执行别的程序段阶入翰出5中断
数据采集程序如下: START: MOV DX,0100H ;01H→DH,置吸合第1个继电器代码 ;00H→DL,置断开所有继电器代码 LEA BX,DSTOR ;置输入数据缓冲器的地址指针 XOR AL,AL ;清AL及进位位CF AGAIN: MOV AL,DL OUT 20H,AL ;断开所有继电器线圈 CALL NEAR DELAY1 ;模拟继电器触点的释放时间 MOV AL,DH OUT 20H,AL ;先使P0吸合 CALL NEAR DELAY2 ;模拟触点闭合及数字电压表的转换时间 IN AX,10H ;输入 MOV [BX],AX ;存入内存 INC BX INC BX RCL DH,1 ;DH左移(大循环)1位,为下一个触点吸合 作准备 JNC AGAIN ;8位都输入完了吗?没有,则循环 DONE: ;输入已完,则执行别的程序段
(二程序查询传送条件传送—异步传送) 它也是一种程序传送,但与前述无条件的同步传送不同, 是有条件的异步传送。此条件是在执行输入N指令)或输 出(OUT指令)前,要先查询接口中状态寄存器的状态。输入 时由该状态信息指示要输入的数据是否已“准备就绪”;而 输出时又由它指示输出设备是否“空闲”,由此条件来决定 执行输入或输出。 翰入输出5中断
(二)程序查询传送(条件传送——异步传送) 它也是一种程序传送,但与前述无条件的同步传送不同, 是有条件的异步传送。此条件是:在执行输入(IN指令)或输 出(OUT指令)前,要先查询接口中状态寄存器的状态。输入 时,由该状态信息指示要输入的数据是否已“准备就绪”;而 输出时,又由它指示输出设备是否“空闲”,由此条件来决定 执行输入或输出
1.程序查询输入 当输入装置的数据已准备好后发出一个STB选通信号一边 把数据送入锁存器,一边使D触发器为“1″给出“准 备” READY的 状态信号而数据与状态必须有不同的端口分别输入至cPU数据总 线。当CPU要由外设输入数据时,CPU先输入状信息,检查数据是 否已准备好,当数据已准备 输数据读入数据的命令 RD 数据端口 使状态信息 三态 缓冲器 译码输出 地址 产4清0通过先 输入装 丬锁存器 (8) 至CPU DATA 使D触发器 F5V 状态信息 状态端口复位,以便 三态 缓冲器「 READY 译码偷出为下次输入 选通信号 (8) STATUS 个新数据 做准备。 M/IO 图6.5查询式输入的接口电路 防框图 en 如图65所示 翰入输出5
1.程序查询输入 当输入装置的数据已准备好后发出一个STB选通信号,一边 把数据送入锁存器,一边使D触发器为“1” ,给出“准 备”READY的 状态信号.而数据与状态必须有不同的端口分别输入至CPU数据总 线。当CPU要由外设输入数据时,CPU先输入状信息,检查数据是 否已准备好;当数据已准备好后,才输入数据。读入数据的命令, 使状态信息 清0(通过先 使D触发器 复位),以便 为下次输入 一个新数据 做准备。 其方框图 如图6.5所示