阅读:867回复:4
关于8259的问题
在我的ISA板上,带了一个8259,偶地址0xc,奇地址0xd
我这样初始化它: outp(BASE, 0xc, 0x13); //ICW1 outp(BASE, 0xd, 0x60); //ICW2 outp(BASE, 0xd, 0x01); //ICW4,no bufer,8086 mode outp(BASE, 0xc, 0x00); //OCW2, write IMR 可是我从来没有接收到它的中断。 还要什么操作呀? 在ISR: outp(BASE, 0xc, 0x0b); //OCW3, requst to read ISR btReg = intp(BASE, 0xc); ... outp(BASE, 0xc, 0x20); //OCW2, send EOI |
|
沙发#
发布于:2002-05-29 13:48
是问的太弱智了,还是怎么地? :P
|
|
板凳#
发布于:2002-05-29 23:29
不是,是太难了,我是无能为力
|
|
地板#
发布于:2002-05-30 01:53
希望对你有帮助:
1.书上说是8259里的中断控制寄存器地址是20h,你用的是0xc. 2.outp(BASE, 0xc, 0x00); //OCW2, write IMR,如果用0xc是对的,你是不是应该这样:outp(BASE, 0xc, 0x20); //OCW2, write IMR? |
|
地下室#
发布于:2002-05-30 17:36
你的卡上的8259接到PC的中断线上了吗?
|
|
|