Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
USB-Programmierung unter Linux

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Hank



Anmeldungsdatum: 25.06.2007
Beiträge: 18

BeitragVerfasst am: 15. Okt 2007 22:24   Titel: USB-Programmierung unter Linux

Hallo,

kennt sich jemand mit der USB-Programmierung unter Linux aus? Versuche grad rauszufinden, wie aufwendig es wohl ist ein USB-Gerät anzusprechen, wenn ein Treiber verfügbar ist und wie aufwändig ein USB-Treiber zu schreiben wäre. Habe eine Online-Version des Buches "Linux Treiber entwickeln" gefunden, darin hab ich unten stehenden Absatz gefunden.

Ich versteh aber noch nicht, was genau ich mir dabei unter einem Interface und einem Endpunkt vorstellen kann. Kann mir das jemand kurz und knapp erkären?

Bin für jeden Hinweis dankbar!

Freundliche Grüße
Hank

"Auch wenn die Geräte physikalisch in einer Baum-Struktur angeordnet sind, liegt logisch ein Bus vor, bei dem der Host die einzelnen Geräte direkt ansprechen kann. Jedes Gerät bekommt – wenn es an den USB angeklemmt wird – eine eindeutige Adresse. Das Gerät selbst definiert innerhalb des Gerätes Interfaces und diese wiederum Endpunkte. Die Software auf dem Host kommuniziert nun mit dem Gerät, indem es Daten aus einem Speicherblock an den Endpunkt eines Interfaces schickt oder Daten von dem Endpunkt des Interfaces in den Speicherblock übergeben bekommt."
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 15. Okt 2007 23:08   Titel:

Ein Interface ist in den USB-Termini eine Konfigurationsoption für ein Gerät. Wenn also ein Gerät entweder als Videokamera oder als Massenspeicher benutzt werden kann (zum Beispiel kann meine Photoknipse das), muss es zwei Interfaces haben.

Endpunkte sind hingegen *logische* Kommunikationsendpunkte analog zu Sockets. Jedem Endpunkt ist im Gerät ein Datenpuffer zugeordnet, in den der Host Datenpakete hineinschreiben oder herauslesen kann.

Treiber für USB-Geräte (also nicht für die Hostadapter) entwickelt man am besten als Userspace-Treiber mithilfe der libusb. Guck mal folgende Beispiele durch:

http://www.linuxforums.org/forum/linux-tutorials-howtos-reference-material/10865-developing-usb-device-drivers-userspace-using-libusb.html
http://ssl.bulix.org/projects/lcd4linux/wiki/USBLCD

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

Hank



Anmeldungsdatum: 25.06.2007
Beiträge: 18

BeitragVerfasst am: 16. Okt 2007 7:39   Titel:

Perfekt!

Vielen Dank Janka!
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy