Jestem (zamierzam) pisać aplikację w Qt, która będzie działać na 3 głównych systemach operacyjnych (Windows, Linux i Mac). Jedną z funkcji tej aplikacji jest to, że potrzebuje ona USB, aby porozmawiać z niestandardowym sprzętem zewnętrznym. Czy istnieje wieloplatformowa biblioteka USB?Czy istnieje biblioteka USB z wieloma platformami C++?
Odpowiedz
Wypróbuj libusb.
Obsługiwane systemy operacyjne: Linux, FreeBSD , NetBSD, OpenBSD, Darwin, MacOS X (i Windows, w ramach projektu libusb-win32).
Ale należy pamiętać, że używa
Przepraszamy, wersja 1.2.0.0 z libusb0.sys
sterownik trybu jądra Windows, która nie jest Certyfikat WHQL i może to być problem w 64-bitowej wersji systemu Windows 7 i Windows Server 2008 R2.
libusb0.sys
is digitally signed.
Dziękujemy! Tylko informacje, których potrzebowałem. – Bojangles
Problem z używaniem libusb-win32 polega na tym, że jest to port libusb-0.1, który nie jest zgodny z libusb-1.0. Jednak libusb-1.0 wydaje się teraz obsługiwać system Windows natywnie. – trojanfoe
Libusb stał się lepszy w ostatnich latach: teraz możesz używać go w systemie Windows do komunikowania się z urządzeniami, które mają WinusB jako swój sterownik, więc nie musisz uruchamiać żadnego kodu trybu jądra od stron trzecich, takich jak 'libusb0.sys'. –
Chciałbym tylko, aby zaktualizować ten post dla każdego, kto wraca do niego w dzisiejszych czasach ...
Libusb (wersja 0.1) został już przestarzała. Współczesnym standardem jest użycie libusb-1.0 lub libusbx.
Osobiście uważam, że istnieje wiele powodów, aby używać libusbx. Zostało napisane przez sfrustrowanych programistów libusb-0.1, którzy chcieli częstszego cyklu aktualizacji i lepszego systemu obsługi błędów.
Moje powody sugerując libusbx są następujące:
- nie wymaga dostępu sudo
- pracował o wiele lepiej dla mnie po wyjęciu z pudełka z czytania wiadomości przychodzących
- lepsze wsparcie i częstsze odpowiedzi do błędy/problemy
- asynchroniczny i synchroniczny wsparcie dla wysyłania/odbierania wiadomości
Zgoda, libusb-1.0 obsługuje raportowanie asynchroniczne/synchronizacyjne ... ale filozofia stojąca za libusbx jest znacznie bardziej atrakcyjna, a dokumentacja jest lepsza.
Wszystko zależy od Ciebie, jeśli Ty lub ktokolwiek chciałbyś dowiedzieć się czegoś więcej o bibliotekach, historia jest bardzo łatwa do znalezienia w Internecie. Możesz również zapoznać się z pytaniem o stos na this, aby uzyskać więcej informacji na bezpośredni temat.
Od lutego 2014 r. Pozostało tylko [libusb] (http://libusb.info).Strona domowa linusbx ma następujący komentarz: libusbx był widelcem [libusb] (http://libusb.info), biblioteki zapewniającej ogólny dostęp do urządzeń USB. Od 2014.01.26 projekt ten został w całości włączony do [libusb] (http://libusb.info) i jest przerywany. Ponieważ nie będzie dalszych wydań libusbx, zachęcamy do przejścia na [libusb] (http://libusb.info). – user23573
- 1. Biblioteka USB w C++
- 2. Biblioteka USB Java
- 3. Czy istnieje wieloplatformowa biblioteka wątków w C++?
- 4. Czy istnieje lekka biblioteka systemów plików C++?
- 5. Jak utrzymać synchronizację Eclipse między wieloma platformami za pomocą Dropbox?
- 6. Uzyskiwanie ścieżki między platformami dla pliku konfiguracyjnego (C/C++)
- 7. Czy istnieje biblioteka JavaScript iCalendar?
- 8. Czy istnieje biblioteka JavaScript dla powiadomień na pulpicie nawigacyjnym z wieloma przeglądarkami?
- 9. Czy istnieje prosta biblioteka dla C++ do narysowania na ekranie?
- 10. Czy istnieje standardowa biblioteka puli połączeń Mysql dla języka C?
- 11. Czy istnieje biblioteka hashmap dla JavaScript?
- 12. Czy istnieje sposób komunikacji z urządzeniami USB w systemie Android?
- 13. Czy istnieje biblioteka Java funkcji Unix?
- 14. Czy istnieje biblioteka do rozpakowania plików .Z przy użyciu VB.NET?
- 15. Czy istnieje biblioteka matematyki open-source związana z pokerem?
- 16. Biblioteka komunikacji bazy danych w C++
- 17. Czy istnieje samodzielna biblioteka routingu PHP?
- 18. Czy istnieje biblioteka testowa podobna do Spocka dla Pythona
- 19. Czy istnieje jakaś biblioteka ActiveResource dla Java?
- 20. Czy istnieje biblioteka do automatycznego wypróbowywania CSS?
- 21. Czy istnieje adnotacja? Jak działa biblioteka? (Java)
- 22. Czy istnieje biblioteka javascript do tworzenia wykresów?
- 23. Czy istnieje rozszerzona biblioteka funkcji dla SQLite?
- 24. Czy istnieje biblioteka unrar dla systemu iOS?
- 25. Czy istnieje biblioteka Pythona do obsługi OWL?
- 26. Czy istnieje biblioteka programowania funkcjonalnego dla .NET?
- 27. Czy istnieje samodzielna biblioteka QUIC dla Google?
- 28. Czy istnieje biblioteka PHP do korekty gramatyki?
- 29. Czy istnieje biblioteka obsługująca autowykrywanie obiektów JavaScript?
- 30. Czy istnieje biblioteka do analizowania adresów US?
Czy niestandardowy sprzęt mówi HID przez USB, czy korzysta bezpośrednio z linii szeregowej? – nmichaels
Prawdopodobnie łącze szeregowe. Jest to układ ATMega USB z biblioteką LUFA USB, która obsługuje oba urządzenia, ale łącze szeregowe jest prawdopodobnie najbardziej prawdopodobną opcją. – Bojangles
Ahh, ale w systemie Windows można znaleźć kilkanaście bibliotek stron trzecich za $$$ ;-) –