8086 인터럽트 질문 좀 드릴께요.

topofgenius의 이미지

8086을 이용해서 공부좀 하려고 하는 학생입니다.

다름이 아니라, 인터럽트 제어를 하던도중...

타이머 인터럽트가.. 제가 알기로는 0x20인데요..

0x20으로 하면 타이머가 딱 한번만 발생을 하고.. 전혀 발생하지가 않습니다.

그래서 혹시나 해서.. 이것저것 하던중..

0x0D로 하니 타이머가 발생하고, 타이머 루틴을 타네요..

PIC초기화도 했고..

뭐가 문제일까요?

답변 부탁드립니다 (__)

익명 사용자의 이미지

PC의 경우 하드웨어 타이머 인터럽트는 INT 08h(0x08)입니다.
BIOS에서는 INT 08h가 발생하면 소프트웨어 인터럽트로 사용할 수 있게 INT 1Ch를 발생시킵니다.
만약 PIC를 직접 제어해서 타이머 주기를 분주할 경우에는 INT 08h 핸들러를 재작성해야 합니다.
그렇지 않다면 INT 1Ch에 타이머 관련 작업을 넣으면 됩니다.