www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wofür braucht man USB am uC?


Autor: Christian J. (elektroniker68)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bei der Auslegung meines Systems mit LPC2478 stiess ich auf das Thema 
USB. Der Chip hat ja alles onboard was man sich nur denken kann. (Leider 
passt das Eagle Bild mit 208 Pins nicht mal auf eine A3 Arbeitsfläche).

Was kann man mit der USB Schnittstelle praktisch anfangen? Steckt man 
ein USB Gerät ein erzeugt dieses für gewöhnlich einen 
Laufwerksbuchstaben. Schöner wäre es, wenn es einen COM Port erzeugen 
würde, so dass ich mit einem Terminalprogramm die Ausgaben des uC 
aufzeichnen kann.

Meine Fragen:

1. Wie komplex ist die Software hinter USB im uC? Muss man sich dazu mit 
jedem Bit befassen oder gibt es da Read-to-Use Interfaces?

2. Wie wird das Gerät im PC dann erkannt? Braucht es Treiber? Ich möchte 
auf keinen Fall Windows Software schreiben müssen, da ich ausser Visual 
Basic keine Entwicklungsoberflächen habe und PC Programmierung ohnhin 
nicht mag.

3. Wie schwierig ist es zB uCLinux aufzusetzen und die Anpassungen zu 
machen an die Portpins usw.? Ist das als stundenweises Hobbyprojekt 
machbar oder braucht man dazu Tage und Wochen?

4. Der 2478 hat ein SD Karteninterface, welches die Karte im Multimedia 
Mode betreibt. Man beschreibt Register, der Physical Layer wird erzeugt. 
Leider ist die reine Beschreibung im Manuál nicht geeignet zu verstehen 
wie man es praktisch bedient. Code habe ich nicht gefunden. Hat 
schonbmal jemand dieses Interface benutzt?

Gruss,
Christian

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

Bewertung
0 lesenswert
nicht lesenswert
Sieh Dir einfach mal dieses Board hier an, das ist zwar ein LPC2468 und 
kein LPC2478, aber dafür ist da auch schon ein ucLinux mit drauf ...

http://shop.embedded-projects.net/product_info.php...

Autor: Walter Tarpan (nicolas)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich kann es im Moment nicht ausprobieren, aber es war entweder "Shift" 
oder "Ctrl" gedrückt halten, während man auf die Leiterbahn klickt, die 
verlängert werden soll.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also dass ein USB-Gerät immer einen Laufwerksbuchstaben verpasst bekommt 
ist nicht richtig, das gilt wohl nur für Speichergeräte wie Festplatten 
und Flashspeicher, die mittels USB an den Rechner angeschlossen werden. 
Es gibt aber auch z.B. Messgeräte und ähnliches, die über USB 
angeschlossen werden und die werden nicht mit einem Laufwerksbuchstaben 
gebrandmarkt. Um Programmierung wird man bei USB aber nicht herum kommen 
sofern man ein Gerät für USB bauen will. Der Vorteil von USB ist ja u.a. 
dass der User weniger zu tun hat um ein Gerät zum Laufen zu bekommen, 
dafür hat der Entwickler des USB-Gerätes mehr zu tun ;)

Autor: ARM-Fan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Steckt man ein USB Gerät ein erzeugt dieses für gewöhnlich einen
>Laufwerksbuchstaben

Aha!
Du hast also für deine Webcam, Maus, Tastatur, etc. Laufwerksbuchstaben?

>Was kann man mit der USB Schnittstelle praktisch anfangen?

Ist die Frage ernst gemeint?
Oder bist du wirklich noch mit keinem anderen USB-Gerät außer einem
USB-Speicherstick in Berührung gekommen?

>1. Wie komplex ist die Software hinter USB im uC? Muss man sich dazu mit
>jedem Bit befassen oder gibt es da Read-to-Use Interfaces?

Ziemlich komplex. In der Regel mußt du dich auch mit jedem Bit befassen,
wenn du nicht gerade ein Betriebssystem laufen hast oder dir einen USB
Stack irgendwoher besorgst (kaufen, evtl. open source).

>2. Wie wird das Gerät im PC dann erkannt? Braucht es Treiber? Ich möchte
>auf keinen Fall Windows Software schreiben müssen, da ich ausser Visual
>Basic keine Entwicklungsoberflächen habe und PC Programmierung ohnhin
>nicht mag.

Es braucht immer Treiber!
Die Frage ist, ob du die von dir gewünschte Funktionalität mit Bord-
mitteln von Windows erschlagen kannst (z.B. HID). Wenn du aber eh
auf der PC-Seite nichts mit deinem USB-Device anzufangen weißt, dann
brauchst du scheinbar auch keine USB-Schnittstelle am Gerät.

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Sieh Dir einfach mal dieses Board hier an, das ist zwar ein LPC2468
>und kein LPC2478, aber dafür ist da auch schon ein ucLinux mit drauf ...


Und wieso nicht für das gleiche oder weniger Geld einen richtigen Prozi 
mit echtem Linux? ucLinux auf dem LPC ist doch schnarchlahm und lausig.

Z.B. hier:
http://beagleboard.org/

Das Ding hat echte Power.

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

Bewertung
0 lesenswert
nicht lesenswert
Wenn es um den Preis ginge, dann könnte man ja auch stinknormale 
PC-Hardware nehmen, die ist dann nochmal ganz erheblich flotter, und 
dafür verfügbare Linuxe erst recht.

Aber das ist hier wohl nicht Sinn der Übung.

Autor: Christian J. (elektroniker68)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich werde auf den FTI232 Chip zurückgreifen, weil der einfacher 
funktioniert und nur diesen VCP Treiber benötigt.

Mir ging nur darum zu klären, wie auch bei diesen Linux Boards welcher 
Aufwand dahinter steckt. Wenn ich erst 20.000 Code, den ich nicht 
geschrieben habe compilieren und laden muss und 500 Seiten Doku wie 
dieser Code zu bedienen ist lesen, mich dazu mit TCP IP Protokoll, USB 
Bitschieberei etc herumschlagen muss vergeht mir jede Freude an der 
Sache, das übersteigt bei weitem die Möglichkeiten es im Rahmen eines 
Hobbys zu betreiben. Ich habe Linux zudem nicht auf dem Rechner und kann 
es auch nicht mehr bedienen als fertige Programme anzuklicken.

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.