阅读:1576回复:0
关中断disable()怎么不管用???各位帮忙
我用的是一块串口卡,和中断相关的程序段如下:
IRQ:7 void OpenPort() { asyncoldvect = getvect(0x0F); disable(); …… outportb(BaseAddCOM4+IER,0x01); …… old_mask=inportb(0x21); outportb(0x21,old_mask & 0x7f); setvect(0x0f,asyncint); enable(); } void ClosePort() { disable(); outportb(BaseAddCOM4+IER,0x00); …… outportb(0x21,old_mask); enable(); setvect(0x0f,asyncoldvect); } 在主函数中,我想关闭接收中断时,用disable()后照样接收数据,而非得用outp(IER,0x00)才能不接收数据,请问这是什么原因??? |
|