如图一所示是一个八路模拟量输入的巡回监测系统,采样数据依次存放在 RAM 30H~37H 单元中,按图所示的接口电路,P0。0~P0。2 通过 74LS373 与 ADC0809 的 ABC 的八路模拟开关的地址线相连,请说明图中各路信号的作用,8 路模拟量通道地址,编写八路数据采集程序一个八路模拟量输入的巡回监测系统IN0~IN7:8 路模拟量输入端。D0~D7:8 位数字量输出端。A、B、C:3 位地址输入线,用于选择 8 路模拟通道中的一路。ALE:地址锁存允许信号,输入,高电平有效.START:A/D 转换启动信号,输入,高电平有效。EOC:A/D 转换结束信号,输出。 0:正在进行转换; 1:一次转换完成。OE:数据输出允许信号,输入,高电平有效。当转换结束后,假如从该引脚输入高电平,则打开输出三态门 ,输出锁存器的数据从 D0~D7 送出。CLK:时钟脉冲输入端。其内部无时钟电路。要求时钟频率不高于 640KHZ.VR+、VR—:基准电压输入端。决定输入模拟量的范围.典型值分别为+5V 和 0V.8 路模拟通道的地址:0000H~0007H。汇编语言编程:中断方法ORG 0000HLJMP MAINORG 0003H LJMP INT0 ORG 0100H ;主程序MAIN: MOV R0,#30H ;设立数据存储区指针 MOV R2,#08H ;设置 8 路采样计数值 SETB IT0 ;设置外部中断 0 为边沿触发方式 A0A7+5VGNDIN0IN7ABCVR(+)VR(-)CLKD0D7EOCSTARTALEOEADC080974LS373ALEP2.01INTWRRDP089S512≥1≥1A0 A1A21 SETB EA ;CPU 开放中断 SETB EX0 ;允许外部中断 0 中断 MOV DPTR,#0000H ;送入口地址并指向 IN0LOOP: MOVX @DPTR,A ;启动 A/D 转换,A 的值无意义HERE: SJMP HERE ;等待中断 ORG 0200H ;中断服务程序INT0: MOVX A,@DPTR ;读取转换后的数字量 MOV @R0,A ;存入片内 RAM 单元 INC DPTR ;指向下一模拟通道 INC R0 ;指向下一个数据存储单元 DJNZ R2,NEXT ;8 路未转换完,则继续 CLR EA ;已转换完,则关中断 CLR EX0 ;禁止外部中断 0 中断 RETI ;中断返回NEXT: MOVX @DPTR,A ;再次启动 A/D 转换 RETI ;中断返回C 语言编程:#include