2012-10-11 4 views
0

핀 상태의 변경에 관한 정보를 얻기 위해 변경 알림 인터럽트를 사용하고 있습니다.PIC24에서 상태를 읽은 후 입력 핀을 재설정하는 방법은 무엇입니까?

PIN 값을 읽은 후 어떻게 재설정합니까?

x = PORTB; 
+0

많은 PIC에는 자동으로 활성화되는 INTF 플래그의 변형이 있으며 portb에서 모든 인터럽트 후에 소프트웨어에서 비활성화해야합니다. 인터럽트가 여러 번 발생하는 것을 방지합니다. 사용중인 PIC 및 컴파일러의 정확한 모델을 알려 주시면 더 구체적인 코드로 대답 할 수 있습니까? – Ryan

+0

감사합니다! 프로젝트에 XC16을 사용하여 PIC24FJ64GA004를 사용하고 있습니다. – user1524625

답변

1

나는 핀이 입력으로 구성되어있는 경우 ... "다시 PIN 값"하지만로 무슨 뜻인지 정확히 모른다 (경우처럼 PORTB의 핀 값을 읽기위한

코드), 외부에서 제어 할 때 핀 값을 재설정 할 수 없게됩니다.

어쨌든 간단한 PORTB = 0; 출력으로 구성된 경우 모든 핀을 꺼야합니다 (재설정?).

0

귀하의 질문은 변경 알림 메커니즘을 재설정하는 방법이라고 가정합니다. 그림에는 포트 핀과 동일한 값으로 설정된 내부 버퍼가 있습니다. 인터럽트 변경 알림은이 버퍼를 포트 핀과 배타적 OR 연산하여 생성됩니다. 포트를 읽으면 내부 버퍼의 값이 포트 핀의 현재 상태와 동일하게 설정됩니다. 이제 포트는 변경 알림 인터럽트를 다시 발생시킬 준비가되었습니다.

요약하면 포트를 읽으면 변경 알림 메커니즘을 다시 설정하기에 충분합니다. 그러나 변경 알림 인터럽트 플래그도 지워야합니다.