阅读:1318回复:7
求助:关于8259的问题
一块ISA卡,8259的17脚(int)有信号,用IRQ 3,但是用SICE28(DOS版)的BPINT B拦截不到,WINDOWS的SICE用BPINT 53也拦截不到,可能是什么原因。
|
|
沙发#
发布于:2003-07-28 09:22
1. 系统中IRQ3是否已做它用?
2. 量到ISA总线,看IRQ3是否有脉冲跳变? 注意ISA总线的IRQ是电平的,你拉低后一定要记得放开,否则第二个中断就进不来了。 |
|
|
板凳#
发布于:2003-07-28 10:12
记得ISA的中断脉冲宽度有要求的。
手边没带相关资料... 你查一下吧。 |
|
|
地板#
发布于:2003-07-30 14:23
问题解决了,需要对8259以及外围电路初始化。
|
|
地下室#
发布于:2003-07-31 12:59
呵呵,这个没做...我没想到。
就是中断屏敝字什么的吧。 |
|
|
5楼#
发布于:2003-07-31 14:47
isa的中断是边沿触发,不是电平触发的 ,只持续一定脉宽,在这个中断的持续过程中,驱动的中断处理程序响应,我觉得驱动不用管8259的,怎么操作8259,那是系统的事,不知道大虾们是怎么看待的。
|
|
|
6楼#
发布于:2003-07-31 17:56
不是这样的。
8259芯片有一个IMR寄存器,每一位对应一个中断。 如果不把相应的屏蔽位打开的话,中断是上不来的。 |
|
|
7楼#
发布于:2003-07-31 20:46
不是这样的。 你的意思是说驱动程序里要控制8259了! 但我的驱动里中断处理程序没操作8259, 我用SOFTICE模拟中断,我的中断处理程序能正确执行,并且能进入中断延迟处理程序。 这是怎么回事? |
|
|