WinUSB
WinUSB| 개발자 | 마이크로소프트 |
|---|---|
| 운영 체제 | Microsoft Windows |
| 유형 | 디바이스 드라이버 |
| 웹 사이트 | msdn |
WinUSB는 Windows Vista 이후 운영체제용으로 Microsoft에서 제공하는 범용 USB 드라이버입니다.Windows XP에서도 사용할 수 있습니다.이는 한 번에 하나의 응용 프로그램에서만 액세스할 수 있는 단순한 장치(예: 기상 관측소, 진단 연결만 필요한 장치 또는 펌웨어 업그레이드용 장치)를 대상으로 합니다.이를 통해 응용 프로그램이 간단한 소프트웨어 라이브러리를 통해 장치에 직접 액세스할 수 있습니다.라이브러리는 장치의 파이프에 대한 액세스를 제공합니다.WinUSB는 개발자가 사용자 모드에서 USB 장치로 작업할 수 있도록 하는 클라이언트 API를 제공합니다.Windows 7 이후 USB MTP 디바이스는 커널 모드 필터 드라이버 대신 WinUSB를 사용합니다.
장점과 단점
이점
- 드라이버의 기입에 관한 지식이 필요 없음
- 개발 속도 향상
단점들
- 한 번에 하나의 응용 프로그램만 디바이스에 액세스할 수 있습니다.
- Windows 8.1 이전의 등시 전송은 지원하지 않습니다.
- USB Reset을 지원하지 않습니다(예: DFU 프로토콜 요청).
- 다른 운영 체제에서도 디바이스에는 커스텀 드라이버가 필요합니다.
WCID
WCID가 "Windows Compatible ID"의 약자인 WCID 장치는 자동 드라이버 설치를 용이하게 하고 대부분의 경우 즉시 액세스할 수 있도록 Windows 시스템에 추가 정보를 제공하는 USB 장치입니다.WCID를 사용하면 HID도 대용량 스토리지도 아닌 USB 장치에서 최종 사용자가 수동으로 드라이버를 설치해야 하는 일반적인 시나리오와는 달리 Windows 응용 프로그램에서 장치를 거의 바로 사용할 수 있습니다.따라서 WCID는 HID 및 대용량 저장소의 '플러그 앤 플레이' 기능을 모든 USB 장치(WCID 인식 펌웨어를 사용하는 장치)에 가져올 수 있습니다.WCID는 WinUSB 디바이스 [1]기능의 확장입니다.
기타 솔루션
한 가지 해결책은 미리 정의된 USB 장치 클래스를 사용하는 것입니다.operating system에는, 일부의 드라이버가 짜넣어져 있습니다.임베디드 디바이스에서 가장 널리 사용되는 디바이스 클래스는 USB 통신 디바이스 클래스(CDC)입니다.CDC 디바이스는 가상 시리얼 포트로 표시되므로 오래된 응용 프로그램에서 새 디바이스를 쉽게 사용할 수 있습니다.
또 다른 솔루션은 UbDk입니다.UbDk는 Isocronous를 포함한 모든 디바이스 유형을 지원하며 INF 파일 작성 및 설치를 수반하지 않는 디바이스 액세스 취득을 위한 간단한 방법을 제공합니다.UbDk는 오픈 소스이며 커뮤니티가 지원되며 Windows XP 이후의 모든 Windows 버전에서 작동합니다.
이전 솔루션이 부적절할 경우 커스텀 드라이버를 작성할 수 있습니다.새로운 버전의 Microsoft Windows 의 경우는, Windows 드라이버 재단을 사용해 실행할 수 있습니다.
레퍼런스
- ^ "pbatard/libwdi". GitHub. Retrieved 2020-05-14.
- "How to Use WinUSB to Communicate with a USB Device". Microsoft. 2007-12-05. Archived from the original on August 28, 2008. Retrieved 2008-07-09.
- "WinUSB". Microsoft Developer Network. Retrieved 2010-07-07.
- "USB 2.0 Specification". USB Implementers Forum, Inc. 2007-03-15. Retrieved 2007-03-27. 최신 버전은 USB.org 에서 구할 수 있습니다.