Hallo,
ich bin auf der Suche nach einem fertigen Modul mit USB-Anschluss,
welches vom PC ohne treiber als Serielle Schnittstelle erkannt wird.
Zudem sollte auf dem Modul ein programmierbarer Mikrocontroller sein, in
dem sich die seriellen Daten verarbeiten lassen. Außerdem brauche ich
auch noch einen UART (kann auch ein Soft-UART sein) um ebenfalls Daten
empfangen bzw. senden zu können.
Programmieren möchte ich bevorzugt mit Bascom. Weiß jemand, ob es
soetwas fertig gibt? Ich habe schon einige Module gefunden, aber so wie
ich das verstehe, sind das entweder Konverter (z.B.
http://www.ebay.de/itm/USB-UART-RS232-TTL-FT232-3-3-5V-/221850405565?hash=item33a7508abd)
oder die USB-Schnittstelle ist nur zum flashen des uC
(http://www.ebay.de/itm/Arduino-Digispark-TINY-Micro-USB-ATTiny85-UK-Seller-/181746553285?hash=item2a50f051c5)
Hier nochmal die benötigte Konstellation:
PC <-> USB-zu-UART <-> uC <-> UART <-> Weiteres-Gerät
Schönen Gruß,
Michael
Michael Ertl schrieb:> ich bin auf der Suche nach einem fertigen Modul mit USB-Anschluss,> welches vom PC ohne treiber als Serielle Schnittstelle erkannt wird.
wie soll das gehen?
USB != || <> Serielle Schnittstelle
ohne Treiber läuft nie was!
und ohne Treiber kannst du am PC und den Rest der Welt unter USB auch
keine serielle Schnittstelle aufmachen.
Für USB gibt es auch nur windows Treiber für wUSB darüber waren alle MAC
User traurig, wenn ich mich recht erinnere hatte auch der Sharkoon USB
Webserver nur Treiber für Windows und so einige mehr, wo es USB Treiber
nur für win gab.
Was du vielleicht denkst ist HID -> Tastatur und Maus, aber das war es
auch schon, HID steht für human interface device und da gehört eine
serielle Schnittstelle noch nicht dazu.
Michael Ertl schrieb:> Hallo,>> ich bin auf der Suche nach einem fertigen Modul mit USB-Anschluss,> welches vom PC ohne treiber als Serielle Schnittstelle erkannt wird.
Welches Betriebssystem läuft auf dem PC? Soweit ich mich erinnere bringt
MS-Windows keine Treiber für serielle USB-Geräte mit, Linux dagegen
schon.
> Zudem sollte auf dem Modul ein programmierbarer Mikrocontroller sein, in> dem sich die seriellen Daten verarbeiten lassen. Außerdem brauche ich> auch noch einen UART (kann auch ein Soft-UART sein) um ebenfalls Daten> empfangen bzw. senden zu können.> ...
Klingt nach einem Arduino-Modul.
Michael L. schrieb:> Klingt nach einem Arduino-Modul.
klingt nach allem möglichen, aber ohne genaue Beschreibung wird das nix!
Michael Ertl schrieb:> USB-Anschluss,> welches vom PC ohne treiber als Serielle Schnittstelle erkannt wird
TO skiziere mal die Richtung,
ich vermute so:
PC -> USB -> seriell -> µC -> seriell -> ???
wenn der PC win hat ist es doch kein Problem für alle USB zu seriell
gibt es Treiber (Ausnahme win elf) so FTDI nicht gerade die Clones
umpatcht.
wenn der PC Linux hat wüsste ich nicht
wenn der PC MAC heisst weiss ich auch nicht
welche PC gibt es noch mit USB damit du treiberlos brauchst?
wenn du so meintest:
µC -> USB -> seriell ergibt das für mich keinen Sinn
Erstmal danke für die schnellen Antworten! Dass das komplett ohne
Treiber nicht realisierbar ist, ist mir schon klar, aber ich habe hier
zwei unterschiedliche USB-seriell-Konverter, die von Windows erkannt
werden ohne dass ich per Hand einen Treiber installieren muss. Es würde
mir auch reichen, wenn das ganze (zumindest ohne zusatz-Treiber) nur zu
Windows kompatibel ist.
Danke Stefan Schmitt für den Tipp, ich schau mir das gleich mal an!
>ich habe hier zwei unterschiedliche USB-seriell-Konverter, die von Windows >erkannt werden ohne dass ich per Hand einen Treiber installieren muss
Das kann evtl. daran liegen, dass Du mal ein Programm installiert hast,
bei dem Treiber (z.B. von FTDI) im Hintergrund mitinstalliert wurden.
Noch ein Nachtrag:
Wenn ein Treiber installiert werden muss, wäre das auch nicht schlimm,
hauptsache ich muss den Treiber nicht erst selbst programmieren :-).
Bei olimex habe ich auch was gefunden
(https://www.olimex.com/Products/AVR/Development/AVR-USB-STK/), hört
sich soweit auch super an, ist aber etwas überdimensioniert für mein
mini-Projekt und auch Preislich über meiner Vorstellung. Aber Danke für
den Tipp!!!
Michael Ertl schrieb:> Erstmal danke für die schnellen Antworten! Dass das komplett ohne> Treiber nicht realisierbar ist, ist mir schon klar,
warum forderst du es denn und verschweigst auch noch auf Nachfrage PC,
OS und Richtung?
Ich suche ein Auto ohne Begrenzung für irgendwas.
Ich sag euch nicht wo ich fahren will und was ich "tanken" will :P
Michael Ertl schrieb:> Noch ein Nachtrag:>> Wenn ein Treiber installiert werden muss, wäre das auch nicht schlimm,> hauptsache ich muss den Treiber nicht erst selbst programmieren :-).
Nur mal so am Rande:
Das ist eine deutlich andere Anforderung als im OP.
@ Michael L. und Joachim B.
Mein Wunsch war ein Modul, welches als USB-seriell-Adapter erkannt wird,
da ich davon ausging, dass dies i.d.R. eh der Fall ist. Die Aussagen,
dass dies "deutlich andere Anforderungen" seien oder Vergleiche wie "ich
suche ein Auto ohne Begrenzung für irgendwas" halte ich für reine
Provokation und maßlos übertrieben. Hier nochmal meine Konstellation:
PC <-> USB-zu-UART <-> uC <-> UART <-> Weiteres-Gerät
oder anderst gesagt:
An einen PC soll via USB-Anschluss ein Mikrocontroller angeschlossen
werden. Der Miktrokontroller soll die Daten (mit hilfe eines
zwischengeschalteten Adapters) seriell empfangen und auch Daten seriell
senden können. Gleichzeitig ist der Mikrocontroller mit einem weiteren
Gerät via UART verbunden und kann sowohl Daten dahin senden als auch
empfangen.
Joachim B. schrieb:> wie soll das gehen?>> USB != || <> Serielle Schnittstelle>> ohne Treiber läuft nie was!
Naja, das stimmt nicht ganz.
Für einen USB CDC (virtuellen) COM-Port ist zumindest unter Windows und
Linux kein EIGENER Treiber nötig. Ergo ist auch nichts zu installieren.
Kuckst du auch hier:
https://msdn.microsoft.com/en-us/library/windows/hardware/ff538820%28v=vs.85%29.aspx
Praktisch alle USB-Geräte kann man also auch ohne die Installation von
Treibern hinbekommen. Ich tippe mal drauf, dass das alles auch für Linux
gilt, bei der CDC ist das zumindest schon mal so.
Natürlich ist ein im Betriebssystem integrierter Treiber auch ein
Treiber.
@TP:
Es gibt Kabel mit integriertem FT232 oder CP2102.
Für diese gibs allerdings Treiber. Das hat den Grund, dass CDC nicht für
hohe Geschwindigkeit bekannt ist.
Man bekommt einen Virtuelle COM-Port, den man wie einen normalen
verwenden kann.
Der CP2102 ist wegen der Krachbumm-Treiberpolitik von FTC zu bevorzugen
:-)
Ich verwende für deine Konstellation ein stm32f072 discovery board für
10 euro
Treiber gibts von st und ide von keil
Da ist natürlich nix mit Bascom...
WehOhWeh schrieb:> Joachim B. schrieb:>> wie soll das gehen?>> ohne Treiber läuft nie was!>> Naja, das stimmt nicht ganz.
dann stimmen meine Worte doch halb, Sonderfälle wie CDC im OS für USB
oder Treiber im OS schon vorhanden ist was doch was anderes, ich stamme
halt noch aus den Tagen wo USB noch nicht mal HID kannte, mit CDC ist
man wieder weiter, nur ist das in JEDEM OS schon drin?
WehOhWeh schrieb:> Naja, das stimmt nicht ganz.> Für einen USB CDC (virtuellen) COM-Port ist zumindest unter Windows und> Linux kein EIGENER Treiber nötig. Ergo ist auch nichts zu installieren.
Das ist für Windows nicht ganz korrekt. Zwar wird CDC von einem zum
Windows-Lieferumfang gehörenden Treiber unterstützt, aber es ist
trotzdem eine *.inf-Datei erforderlich -- was auch immer MS sich dabei
gedacht haben mag, denn das ist unnötig und ärgerlich.
Michael Ertl schrieb:> oder anderst gesagt:>> An einen PC soll via USB-Anschluss ein Mikrocontroller angeschlossen> werden.
dir ist aber klar das PC undefiniert ist?
für den einen ist ein PC was mit intel CPU und windows, für den anderen
ist ein PC ein MAC mit OS x, für den nächsten wieder irgendwas mit einem
Linux Derivat und ein anderer nimmt einen PI als PC nur zum surfen.
von free DOS oder NEXT haben wir noch nicht mal geredet.
WehOhWeh schrieb:> und> Linux kein EIGENER Treiber nötig.
alle Versionen und Abarten? warum tue ich mich dann immer so schwer für
den PI debian wheezy passendes zu finden?
Michael Ertl schrieb:> halte ich für reine> Provokation und maßlos übertrieben.
nimm es nicht als Provokation weil du nur eine Sorte von PC kennst, es
ist hier einfach unklug eine konkrete Aufgabenstellung zu haben und
allgemein zu schreiben.
Wenn du einen konkreten PC im Kopf hast dann benenne ihn, wenn du dein
OS auch noch kennst benenne es.
Michael Ertl schrieb:> welches vom PC ohne treiber als Serielle Schnittstelle
PC unbestimmt, OS unbestimmt
selbst mit der Annahme von einem typischen Intel PC wäre ohne Treiber
auch noch von einigem abhängig.
Joachim B. schrieb:> dir ist aber klar das PC undefiniert ist?
Die doch deutlich überwiegende Mehrheit assoziiert mit PC ein x86-System
(ohne Unterscheidung zwischen 32- oder 64-Bit-Betrieb).
Die Zeit, wo auch völlig andere Dinge PC genannt wurden, ist doch schon
'ne ganze Weile her.
Was undefiniert ist, und nur qua Masse in des Threadstarters Aussage
hineininterpretiert werden kann, ist das Betriebssystem. Wird kein
Betriebssystem genannt, und ist aus dem sonstigen Kontext nicht klar zu
erkennen, daß es sich nicht um Windows handelt, ist --so sehr es dem
einen oder anderen auch missfallen mag-- von Windows auszugehen.
Michael Ertl schrieb:> Hallo,>> ich bin auf der Suche nach einem fertigen Modul mit USB-Anschluss,> welches vom PC ohne treiber als Serielle Schnittstelle erkannt wird.> Zudem sollte auf dem Modul ein programmierbarer Mikrocontroller sein, in> dem sich die seriellen Daten verarbeiten lassen. Außerdem brauche ich> auch noch einen UART (kann auch ein Soft-UART sein) um ebenfalls Daten> empfangen bzw. senden zu können.
Wenn Du AVR willst, dann zB das hier:
https://www.olimex.com/Products/AVR/Proto/AVR-USB-162/
in Zusammenhang mit LUFA:
http://www.fourwalledcubicle.com/LUFA.php
Davon brauchst Du das "Virtual Serial Device" (USB CDC-ACM).
Zum Programmieren brauchst Du einen AVR ISP Programmer. Wenn Du keinen
hast:
https://www.olimex.com/Products/AVR/Programmers/AVR-ISP-MK2/open-source-hardware> Programmieren möchte ich bevorzugt mit Bascom.
Du wirst C bemühen. Alleine schon wegen der LUFA USB-Bibliothek. C
solltest Du können. Wenn nicht, ist JETZT der Zeitpunkt, mit dem Lernen
anzufangen.
fchk
Rufus Τ. F. schrieb:> Die doch deutlich überwiegende Mehrheit assoziiert mit PC ein x86-System> (ohne Unterscheidung zwischen 32- oder 64-Bit-Betrieb).>> Die Zeit, wo auch völlig andere Dinge PC genannt wurden, ist doch schon> 'ne ganze Weile her.
kommt das nicht gerade wieder?
Ein raspberry PI oder seine Nachfolger könnten auch PC sein.
Ein Andriod Tablett kann auch als PC gesehen werden.
Ja mittlerweile tituliere ich mein smartTV als PC, was unterscheidet den
noch vom PC mit TV Karte?
Ein Linux wird gebootet, eine Netzwerkverbindung wird aufgebaut, ein
Bild einer Quelle (HDMI, Tuner, Netzwerk) wird auf den Monitor gegeben.
Einige haben das Linux schon gerootet und eigene Software aufgespielt.
vielen Dank an alle für die zahlreichen Vorschläge und Tipps! Ich habe
mir auf die schnelle alle Vorschläge mal angesehen, es sind lauter
brauchbare Sachen dabei! Besonders gut gefällt mir bis jetzt das
AVR-USB-162!
Ich werde mir alles nochmal in Ruhe ansehen und überlegen und ggf. noch
die ein oder andere Frage stellen.
Nochmals vielen Dank!