Czy można bezpośrednio odczytać port USB? [Zamknięte]

2

Czy w systemie Windows można napisać prosty program do odczytu wartości binarnej portu USB bez przechodzenia przez sterownik USB?

Jim Lewis
źródło
1
Krótka odpowiedź brzmi: tak. Ale sugeruj, aby dodać więcej szczegółów do pytania. Zakładam, że to pytanie dotyczy sposobu przejścia z baterii na USB w mikrokontrolerze? . W jakim języku programowania, asemblacji, C / C ++, VB itp. Wygląda na to, że Twoim prostym celem jest zebranie danych za pomocą mikrokontrolera PIC i załadowanie danych do komputera z systemem Windows.
Mahendra Gunawardena
3
Głosuję za zamknięciem tego pytania jako nie na temat, ponieważ jest to pytanie dotyczące oprogramowania, prawdopodobnie najlepiej dostosowane do StackOverflow (po przeredagowaniu)
Carl Witthoft

Odpowiedzi:

5

Nie, przynajmniej nie w żadnej zdalnie nowoczesnej wersji systemu Windows.

Bezpośredni dostęp do sprzętu wymaga poziomu uprawnień jądra, którego nie mają zwykłe aplikacje. Pomyśl o tym. Tak musi być, w przeciwnym razie jeden nieuczciwy proces może spowodować wszelkiego rodzaju szkody.

Sterowniki nie tylko zajmują się szczegółami sprzętowymi, ale pełnią również funkcję bramek do tego, jakie operacje mogą wykonywać aplikacje na sprzęcie. W rzeczywistości aplikacje nie wykonują operacji sprzętowych. Wysyłają do sterowników zapytania o wykonanie operacji sprzętowych.

Więc nie, potrzebujesz sterownika, aby uzyskać dostęp do dowolnego sprzętu, w tym USB.

Olin Lathrop
źródło
4

Założono, że to pytanie jest kontynuacją z Jak przejść z baterii na USB w mikrokontrolerze? . Zakłada się również, że Twoim celem jest zbieranie danych za pomocą mikrokontrolera PIC i przesyłanie danych do komputera podstawowego z systemem Windows.

Alternatywą jest użycie konfiguracji portu UART mikrokontrolera PIC w celu szeregowego przesyłania danych. Następnie użyj kabla szeregowego USB opartego na FTDI, takiego jak ten na obrazie, aby przesłać dane.

wprowadź opis zdjęcia tutaj

Dostęp do danych można uzyskać za pomocą szeregowego portu COM na komputerze. Port USB zostanie wymieniony jako standardowy port COM RS232. Pomoże to również stworzyć prosty program w języku C.

To alternatywne rozwiązanie rozwiąże Twoje problemy 3 V i 5 V z drugiego pytania.

Bibliografia:

Mahendra Gunawardena
źródło