본문으로 바로가기

C# USB 통신, LibUsbDotNet

category 프로그래밍/C# 2020. 8. 27. 21:19
반응형

LibUsbDotNet은 C#에서 USB 통신을 쉽게 구현할 수 있게 해주는 라이브러리입니다.


쉽게 구현을 할 수 있지만 단점이 있습니다. HID(Human Interface Device), Comunication Device Class, Mass Storage Class 등 표준이 있는 USB 클래스 통신은 가능한데, 커스텀 USB는 통신이 안 되는 것으로 보입니다.


MFC에서는 디바이스 정보를 받아서 CreateFile을 하면 Device I/O 제어를 할 수 있는 핸들을 받을 수 있었는데, 해당 LibUsbDotNet에서는 PID와 VID를 지정을 하였는데도 불구하고 통신을 할 수 없었습니다. 


C#으로 커스텀 USB 드라이버를 잡고 싶으시면 다른 방법을 알아보셔야 합니다.

DllImport를 사용하여서 MFC와 동일한 방법으로 핸들을 받아 올 수 있을 것 같긴 한데, 내공이 쌓이면 한번 만들어 보도록 하겠습니다.





  LibUsbDotNet 다운로드 URL




해당 사이트에 LibUsbDotNet을 받아 설치하면 예제를 볼 수 있습니다.



설치를 하면 위에 와 같은 파일을 볼 수 있는데, Test_Bulk 같은 실행파일이 여러 개 있습니다. 이 실행 파일들의 구현 소스는 Src폴더에 있습니다. USB 장치 검색은 Test_DeviceNotify 파일의 예제를 보시면 됩니다.






  LibUsbDotNet 예제 URL






2019/04/15 - [프로그래밍/C#] - C#을 이용한 시리얼 통신(포트 검색/연결/해제)

2019/04/08 - [프로그래밍/C#] - [Zedgraph] C# 그래프 라이브러리를 이용한 실시간 그래프

2019/08/25 - [프로그래밍/C#] - C# 마우스 제어(클릭, 좌표 이동)

2020/06/22 - [프로그래밍/C#] - C# 유튜브 동영상 다운로더 만들기(MP3, MP4)

2020/08/17 - [프로그래밍/C#] - C# 시리얼 통신 아스키 외 값 읽기

반응형