8259A의 PIC를 설정할때
처음에 master PIC를 설정할때는 out 0x20,al이런식으로 하고
다음에 ICW들을 설정할때는 out 0x21,al로
0x21번으로 합니다.
같은 maste PIC를 설정하는데 왜 다른 포트로 설정을 하는지 궁금합니다.
아시는분 답변부탁드립니다.
8259 프로그래머블 인터럽트 컨트롤러에 어떤 명령을 줄 때, 필요한 컨맨드와 데이터를 PC 하드웨어적으로 IO 포트에 0x20, 0x21 로 매핑한 것입니다.. 첫번째 PIC IO 주소고 두번째는 아마 0xA0 인가로 기억합니다.
8259 데이터쉬트를 한번 찾아보시면 아마 그 칩의 어드레스 라인이 A0 로 하나 있을 겁니다. 이 A0 가 0이고 (0x20) 데이터 비트중에 어떤 비트가 1이면 초기화를 시작하고 나머지 8259에 주는 명령은 A0 가 1일 때 (0x21) 몇바이트를 줘서 초기하하는 것입니다.
이건... 다른 이유가 있는 것이 아니라 8259 칩 자체를 만든 사람이 그렇게 한 것이라 뭐라 딱히 이유를 들기가 좀 어려운 것 같습니다. 데이터 쉬트를 찾으셔서 그냥 그렇구나 하고 이해하시는 것이... (무책임...)
8259 프로그래머블 인터럽트 컨트롤러에 어떤 명령을 줄 때, 필요한 컨
8259 프로그래머블 인터럽트 컨트롤러에 어떤 명령을 줄 때, 필요한 컨맨드와 데이터를 PC 하드웨어적으로 IO 포트에 0x20, 0x21 로 매핑한 것입니다.. 첫번째 PIC IO 주소고 두번째는 아마 0xA0 인가로 기억합니다.
8259 데이터쉬트를 한번 찾아보시면 아마 그 칩의 어드레스 라인이 A0 로 하나 있을 겁니다. 이 A0 가 0이고 (0x20) 데이터 비트중에 어떤 비트가 1이면 초기화를 시작하고 나머지 8259에 주는 명령은 A0 가 1일 때 (0x21) 몇바이트를 줘서 초기하하는 것입니다.
이건... 다른 이유가 있는 것이 아니라 8259 칩 자체를 만든 사람이 그렇게 한 것이라 뭐라 딱히 이유를 들기가 좀 어려운 것 같습니다. 데이터 쉬트를 찾으셔서 그냥 그렇구나 하고 이해하시는 것이... (무책임...)
댓글 달기