mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT91SAM7S USB Schnittstelle ohne extra Treiber


Autor: Sebastian Bäumler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

gibt es eine Möglichkeit die USB Schnittstelle vom AT91SAM7S
anzusprechen ohne unter Windows/Linux einen extra treiber zu
installieren? Gibt es da nicht irgendwelche Standard Schnittstellen
unter Windows/Linux die mann nutzten kann? Mein Ziel ist: Einstecken
und geht.

MFG Sebastian

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das geht, wenn Du auf dem Controller eine der Standardgeräteklassen
implementierst, für die bei den üblichen Betriebssystemen von
vornherein Treiber mitgeliefert werden.
Dazu gehören zum Beispiel HID ("human input device" wie Tastaturen,
Mäuse, Graphiktabletts etc.) und MSD ("mass storage device" wie
USB-Sticks, Kartenleser, USB-IDE-Bridges für Festplatten etc.).

Wenn Du dennoch eine Software zum Gebrauch Deines Gerätes mitliefern
willst, kannst Du diese auch unter Verwendung der libusb bzw.
libusb-win32 schreiben, das ist eine Library zum Ansprechen von
USB-Geräten aus Usermodeprogrammen.

Autor: Sebastian Bäumler (baeumles)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen dank für die super schnelle Antwort.

Aber ich bin mal so dreist zu Fragen, gibt es irgenwo ein gutes
Beispiel wie ich eine HID Geräteklasse imlementiere?

Und unterstützt die HID Geräteklasse auch die 12MBit übertragungsrate.

Ich bin noch Neuling was USB in Verbindung mit µC's angeht!

MFg Sebastian

Autor: morpheuz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>>
Und unterstützt die HID Geräteklasse auch die 12MBit übertragungsrate.
<<<

Nein tut es nicht! HID ist extremst langsam! (100kByte/sec)
Außerdem ist HID auch nicht für zuverlässige Übertragung geeignet - da
ist tatsächlich spezifiziert, dass bei HID auch mal ein Paket verloren
gehen darf!

Autor: Erwin Reuss (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine recht einfache Methode ist die Implementierung der CDC-Klasse. Hier
wird das USB-Gerät einfach über eine virtuelle COM-Schnittstelle
angesprochen. Aber auch hier gilt, die extrem langsame Übertragungsrate
(maximal ca. 12 kB / Sekunde getestet). Wer nur geringe Datenmengen
übertragen will, für den ist diese Variante ideal, weil der Aufwand auf
PC-Seite extrem niedrig ist.

Autor: jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Atmel bietet ein Beispiel mit Treiber und C++-Code für PC und µC.
(http://www.atmel.com/dyn/products/app_notes.asp?fa... und da
Basic USB-Application)
Mit wirklich geringem Aufwand und mit freeware-tools bekommt man das
mit vernünftigen Datenraten zum Laufen und kann es dann entsprechend
anpssen.

Gruß, Jörn

Autor: Sebastian Bäumler (baeumles)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ALL

Danke für Eure Posts.

Aber mein Ziel war ja den µC über USB anzusprechen ohne einen extra
Treiber zu installieren.

Und da war der Tip von Rufus (Danke) mit dem HID nicht schlecht.
Im moment suche ich auch schon nach irgendwelchen Beispielen wie ich
eine HID Schnittstelle in einen AVRUSBxxx oder in einen AT91SAM7S
implementiere.

Falls jemand dafür ein gutes Beispiel hat, oder jemand weis wonach ich
am besten suchen muss, währe ich echt dankbar!

Gruss Sebastian

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu FreeRTOS gibts ein kleines beispiel einer (nicht vollständigen) USB
HID Joystick Implementierung:
http://www.freertos.org/portsam7iar.html

Wie gut das Beispiel ist kann ich dir aber nicht sagen, habs noch nicht
genauer angesehen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.