答:方案2是可行的,因为任何一个8259在级联的时候要么是主片要么是从片,但在方案1中,B片显然即时主片,又是从片,这是无法办到的,因为ICW2无法初始化。
13. 现代微机如何处理PCI中断,PCI中断如何被共享?
答:ICH8的中断控制器除了集成了两个8259A提供ISA兼容的中断外,还可以利用将PCI中断映射到ISA兼容的中断线中来支持PCI中断。
ICH8能够被编程设置成允许PCI中断线PIRQA#~PIRQD#(即PCI总线中的INTA# ~ INTD#)从内部连接到中断IRQ3~7, IRQ9~12, IRQ14或IRQ15上。PCI总线执行的是单周期响应。
PCI中断请求信号是漏极开路的,连到同一PCI中断信号线的多个设备可以同时驱动该信号有效,但必须使用电平触发中断方式。当多个中断源发出中断后,根据共享中断设备链,先处理第一个中断,处理后退出中断处理程序,由于是还有设备中断,会再次进入中断处理,依然从共享中断设备链的第一个设备开始判断,如不是,转到下一个设备,该过程多次重复,直到所有设备的中断都处理完。
26
第8章
3. 如果8254-2某计数器的计数初值为400H,信号频率为10MHz,求时间片(微秒)。 答:所谓时间片是指输出脉冲的周期,由题可知,fOUT=fCLK÷计数初值=10M/1K=10K。时间片(周期)=1/fOUT=100微秒。如果是BCD码计数,则fOUT=fCLK÷计数初值=10M/400=25000,时间片(周期)=1/fOUT=40微秒。
4. 用8254作为某数据采集系统的定时器,每隔10ms用中断方式采集一次数据,已知输入时钟频率为10kHz,8259端口地址为20~21H,中断类型号为13H,8254端口地址为40~43H,请为8259和8254编制初始化程序。
分析: 8254的中断请求的中断类型号为13H,则显然初始化8259的ICW2的值为10H(中断类型号的高5位),而中断引脚显然用的是IR3。8254的输入时钟频率为10kHz,需要输出10ms周期(频率100)的方波,作为中断请求信号,可以考虑用方式2或3,初始值为10K/100=100。
答:;对8259初始化: MOV AL, 00010011B ; 边沿触发,单片使用,要ICW4 OUT 20H, AL ; ICW1 JMP SHORT $+2 MOV AL, 10H ;中断类型号高位 OUT 21H, AL ; ICW2 JMP SHORT $+2 MOV AL, 00000001B ; 非总线缓冲方式,全嵌套,正常的中断结束 OUT 21H, AL ; ICW4 JMP SHORT $+2 ;对8254的初始化 MOV AL, 00010100B ; 计数器0方式3,低8位二进制计数 OUT 43H, AL JMP SHORT $+2 MOV AL, 100 ;计数初始值 OUT 40H, AL JMP SHORT $+2
6. 某系统中8254芯片的通道0~通道2和控制字端口号分别为FFF0H~FFF3H,定义通道0工作在方式2,CLK0=5MHz,要求输出OUT0=1kHz方波;定义通道l工作在方式4,用OUT0作计数脉冲,计数值为1000,计数器计到0向CPU发中断请求,CPU响应这一中断后继续写入计数值1000,重新开始计数,保持每1秒钟向CPU发出一次中断请求。请画出硬件连接图,并编写初始化程序。
8254初始化程序如下: MOV AL, 00110100B MOV DX, FFF3H OUT DX, AL MOV AX, 5000 MOV DX, FFF0H OUT DX, AL
27
MOV AL, AH OUT DX, AL MOV DX, FFF3H MOV AL, 01111000B OUT DX, AL DEC DX DEC DX MOV AX, 1000 OUT DX, AL MOV AL, AH OUT DX, AL 电路图如下:
U?AD0AD1AD2AD3AD4AD5AD6AD7IOR#IOW#A0A1876543212122231920D0D1D2D3D4D5D6D7CSRDWRA0A18253OUT2GATE2CLK2OUT0GATE0CLK0101195MHzVCCOUT1GATE1CLK113IRQ01415AD0AD1AD2AD3AD4AD5AD6AD7A0171618IOR#IOW#111098765427132161726U?D0D1D2D3D4D5D6D7A0CSRDWRSP/ENINTINTA8259AU?3A72ANDA8A912ANDU?312ANDNOTU?3AD5456E1E2E374ALS138U?A2A3A4123ABCY0Y1Y2Y3Y4Y5Y6Y715141312111097IR0IR1IR2IR3IR4IR5IR6IR718IRQ019202122232425CAS0CAS1CAS2121315A61U?
8. 试编写一程序,使PC/AT系统板上的发声电路发出200Hz至900Hz频率连续变化的报警声。
分析: PC/AT机是使用8254的计数器2输入工作时钟频率1.1931816MHz,工作在方式3,产生一定频率的方波来驱动喇叭发声的(当然,8255PB口D1位要置1,这个我们假设都是打开的),题目要求的发声频率从200Hz到900Hz,按照书上P185上的公式:初始值=输入时钟频率/输出频率,初始值范围为5966~1326,可以编程,初始值给5966,然后每隔一定延迟(如20ms)将初始值减1,直到1326为止。
答:
MOV AL, 10110110B OUT 43H, AL MOV AX, 5966 P1: PUSH AX OUT 42H, AL MOV AL, AH
28
OUT 42H, AL CALL WAIT20ms ; 延迟20秒 POP AX DEC AX CMP AX, 1325 JNZ P1
9. 在8086系统中,用8254构成一个定时、计数与脉冲发生器系统。利用通道0完成对外部事件计数功能,计满100次向CPU发中断请求;利用通道1产生频率为1kHz的方波;利用通道2产生1秒标准时钟。8254的计数频率为2.5MHz,8254的端口地址为41H~47H,试完成硬件连接和初始化编程。
分析:8254从CLK0输入时钟频率为2.5MHz,通道0计数100次后输出的中断频率是25KHz,因为是做中断源,所以通道0可以工作在方式3或2,另外OUT0输出的这个脉冲还要作为通道1的输入时钟,从CLK1中输入,利用通道1计数25次(方式3)获得从OUT1输出的1KHz的方波,该输出同时作为通道2的时钟输入,通道2工作在方式3下,对CLK2中输入的1KHz时钟计数1000次(既进行1000分频),输出1秒的标准时钟(频率1Hz)。
再来看8254的译码问题,题目中端口地址为41H~47H,显然通道0、1、2和控制字的地址分别为41H、43H、45H和47H,也就是说A0这根地址线始终为1,根据这些分析,我们得到如下电路。
U?AD0AD1AD2AD3AD4AD5AD6AD7IOR#IOW#A1A2876543212122231920D0D1D2D3D4D5D6D7CSRDWRA0A18254
OUT0GATE0CLK010119IRQ02.5MHzU?A5A6A7A8A9A0123456ABCE1E2E374LS138
Y0Y1Y2Y3Y4Y5Y6Y715141312111097OUT1GATE1CLK1131415VCCOUT2GATE2CLK21716181sTimer初始化8254程序: MOV AL, 00010110B OUT 47H, AL MOV AL, 01010110B MOV 47H, AL MOV AL, 10110110B MOV 47H, AL MOV AL, 100 OUT 41H, AL MOV AL, 25 OUT 43H, AL MOV AX, 1000 OUT 45H, AL MOV AL, AH OUT 45H, AL
29
第9章
3. 在方式1下输入和输出时,其专用握手信号是如何定义的?握手信号线之间的工作时序关系如何?
答:对于方式1的输入,当外设准备好数据,即数据已输至8255的端口数据线上时,就发出STB#选通信号,将数据通过A口或B口锁存到8255的数据输入寄存器。选通信号变低后,8255输出IBF表示输入缓冲器的满,阻止外设输入新的数据,并提供CPU查询;在选通信号结束后,8255向CPU发出INTR中断请求信号(如果中断允许的话)。CPU响应中断,发出RD#信号,把数据读入CPU。RD#有效信号清除中断请求;然后RD#信号结束,使IBF变低,表示输入缓冲器已空,通知外设可以输入新的数据。
对于方式1输出,CPU输出数据,发出WR#信号。WR#信号的下降沿将微处理器数据送到输出数据锁存器。WR#的上升沿起着三个作用:一是将数据输出到8255的端口线上;二是使OBF#信号有效,表明输出缓冲区已满,通知外设来取数据;三是清除中断请求信号。外设接受数据后发出ACK#信号,它一方面使OBF#无效,另一方面ACK#上升沿使INTR有效,发出新的中断请求信号,让CPU输出新的数据。
6. 试使用8255实现对74LS138的检测。
分析:本题是要用8255芯片来检测一个74LS138芯片的输入输出是否满足真值表。可以采用8255的PA口的PA0PA1PA2作为74LS138的ABC三个输入,将74LS138的Y0~Y78个输出接到8255的PB口,PB口作为输入口来获取这些信息,C口作为按位输出口输出到74LS138的控制信号(使能信号)。然后按下图的真值表来进行验证。
答:假设8255A的端口地址为60H~63H。
30
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《现代微机原理与接口技术》第2版部分习题答案(6)在线全文阅读。
相关推荐: