다음을 통해 공유


GpioClx DDI

GPIO(범용 I/O) 컨트롤러 드라이버는 GpioClx DDI(디바이스 드라이버 인터페이스)를 통해 GPIO 프레임워크 확장(GpioClx)과 통신합니다. 이 DDI는 Gpioclx.h 헤더 파일에 정의되며 GPIO(범용 I/O) 드라이버 참조에 설명되어 있습니다. 이 DDI의 일부로 GpioClx는 GPIO 컨트롤러 드라이버에서 호출하는 여러 드라이버 지원 메서드를 구현합니다. 이 드라이버는 GpioClx에서 호출되는 이벤트 콜백 함수 집합을 구현합니다. GpioClx는 이러한 콜백을 사용하여 인터럽트 입력으로 구성된 GPIO 핀의 인터럽트 요청을 관리하고 데이터 입력 및 출력으로 구성된 GPIO 핀으로 데이터를 전송합니다.

섹션 내용

항목 Description

GpioClx DDI의 드라이버 지원 메서드

GPIO 프레임워크 확장(GpioClx)은 Windows 8 시작하여 사용할 수 있습니다. GpioClx DDI의 시스템 제공 메서드는 gpioClx 커널 모드 드라이버 Msgpioclx.sys 구현됩니다. 이 드라이버는 GpioClx 드라이버 지원 메서드에 대한 진입점을 내보냅니다. Windows 8 Msgpioclx.sys 운영 체제의 표준 구성 요소입니다.

선택적 및 필수 GPIO 콜백 함수

GPIO(범용 I/O) 컨트롤러 드라이버는 GPIO_CLX_RegisterClient 메서드를 호출하여 GPIO 프레임워크 확장(GpioClx)의 클라이언트로 등록합니다. 이 호출 중에 드라이버는 드라이버에서 구현하는 이벤트 콜백 함수 목록을 지정하는 등록 패킷을 GpioClx에 전달합니다. GpioClx는 이러한 콜백 함수를 호출하여 GPIO 컨트롤러 하드웨어를 구성하고, I/O 작업을 수행하고, 인터럽트를 관리합니다. GpioClx는 특정 콜백 함수를 구현하기 위해 GPIO 컨트롤러 드라이버가 필요하지만 다른 콜백 함수에 대한 지원은 선택 사항입니다.

GPIO 디바이스 컨텍스트

GPIO(범용 I/O) 컨트롤러 디바이스는 프레임워크 디바이스 개체로 표시됩니다. GPIO 컨트롤러 드라이버는 디바이스 컨텍스트를 이 디바이스 개체와 연결할 수 있습니다. 드라이버는 이 디바이스 컨텍스트를 사용하여 GPIO 컨트롤러 디바이스의 상태에 대한 정보를 영구적으로 저장합니다.

GPIO 컨트롤러를 핀 뱅크로 분할

드라이버 개발자는 옵션으로 GPIO(범용 I/O) 컨트롤러 디바이스를 둘 이상의 GPIO 핀 뱅크로 분할할 수 있습니다. 예를 들어 64개의 GPIO 핀이 있는 GPIO 컨트롤러 디바이스는 GPIO 컨트롤러 드라이버에서 각각 32개의 GPIO 핀이 있는 두 개의 뱅크로 설명할 수 있습니다.

GPIO 컨트롤러 드라이버에 대한 구현 문제

GPIO 프레임워크 확장(GpioClx)은 유연한 DDI(디바이스 드라이버 인터페이스)를 제공합니다. 이 DDI를 사용하면 개발자가 대체 콜백 인터페이스 중에서 선택할 수 있습니다. 드라이버 개발자는 대상 GPIO 컨트롤러 디바이스의 하드웨어 아키텍처에 가장 적합한 이벤트 콜백 함수 집합을 구현해야 합니다.