Hallo, ich habe diesen BAITE und habe im Internet so einiges gelesen. Jetzt bin ich verwirrter als vorher :-) Was macht man denn mit dem USB2UART adapter? Also, ich weiß schon: a) einen Brotlooter kann man damit nicht auf einen ATmega328 brennen b) software kann man damit nur auf den ATMega dumpen, wenn man den Baite modifiziert. Was also macht man damit normalerweise?
Peter Shaw schrieb: > Was also macht man damit normalerweise? USB 2 UART adapten? Drum heißt das ja auch USB2UART Adapter. (Es gibt noch mehr Geräte als nur einen Mega. Es gibt da zb Terminals, es gibt Drucker, es gibt Spektrometer, es gibt Plotter, es gibt Roboter, es gibt Klimaanlagen, es gibt Raumregelungen, es gibt ..... und viele davon haben immer noch eine stink normale UART, weil sie das seit 30 Jahren haben und weil die so schön einfach funktioniert. Man braucht keine Treiber, man muss sich nicht mit Plug&Pray rumschlagen, man muss nur das Kabel einstecken (ok, da gibt es eine Falle: gekreuzt oder nicht gekreuzt - das ist hier die Frage), die Baudrate einstellen und schon funktionierts. Nur weil heute USB hipp ist, baut man ja nicht die komplette Hardware um. Da steckt man so einen Adapter rein, schliesst ihn dort an, wo vorher der MAX232 angeschlossen war und hat einen USB Eingang am Gerät (und leider dann das Plug&Pray Gewirx samt Treiberchaos am Hals)
Na was wird ein USB TO UART Adapter machen? Er macht dir eine (virtuelle) Serielle Schnittstelle. Und die hat TTL Pegel. Kann also direkt an Microcontroller angeschlossen werden. Nicht alles dreht sich ums flashen von Controllern. Manche wollen danach auch noch mit ihnen kommunizieren. Was machst du mit einem Druckerkabel? Also flashen kannste den Drucker damit nicht. Manche Fragen sind einfach zu doof. Und das Stichworte ist nicht BAITE sondern hier CP2102, also der Chip. Der macht das alles. BAITE klatscht nur die Platinen hin.
Super. Danke. Also angenommen ich habe eine Mikrokontroller X, der eine UART Schnitstelle aufweist. Im Programmcode des Controllers werden bestimmte Werte gesetzt und berechnet. Und angenommen es ist ein ATMega328, kann ich über diesen CP2102 mit dem Ding Kommunizieren? Also meine Frage ist mehr c) kann ich ohne Modifikationen mit dem Microkontroller reden? und wenn ja, hat das von euch schon mal jemand gemacht? Hat also Erfahrungen, wie ich ein C Programm auf dem Chip und eines im Desktop-OS dazu bewege zu reden. Bei den ganzen Beschreibungen im Netz finde ich lediglich die Modifikation von der Platine, nicht aber wie ich sie im Urzustand nutzen kann. Ich sehe ein, um Hilfe oder Antworten zu bekommen muss ich konkreter werden, denn die hypothetische Diskussion gehört den Philosophen, nicht den Technikern. (full ack). Schema (HLD): <ATMega328> <---> <CP2102> <---> <Unix> AtMega besitzt: ArduinoBL, und Software, welche den Wert von Eingang-1 mit dem vom Eingang-2 dividiert. Das Ergebniss möchte ich in meinem Programm auf der Unix auslesen. ist es gleich 1, denn soll ein Befehl an den ATMega gehen, das er Ausgang-1 auf 0 setzt. Muss ich dazu die BAITE Platine mit dem CP2102 umbauen, oder geht das mit dem Gerät auf dem Bild? Danke nochmals.
Das geht mit dem Adapter ohne Umbau. Allerdings verstehe ich nicht warum du überhaupt den Umweg über den PC machen willst? Der ATmega ist selbst schlau genug, um zu prüfen, ob das Ergebnis 1 ist ^^
Danke Dominik, ja. ich musste etwas kürzen, da mein Komplettes Setup ein wenig zu sehr vom eigentlichen Thema ablenken würde :-) Das vielleicht mal in einem länglichen Artikel, wenn der Plan ausgereift ist. Momentan am zusammenkalkulieren der Module.
Peter Shaw schrieb: > ich musste etwas kürzen, da mein Komplettes Setup ein wenig zu sehr > vom eigentlichen Thema ablenken würde :-) Es wäre aber nicht verkehrt, wenn du mehr darüber sagen würdest. Leider stellt sich nämlich bei sehr vielen Leuten heraus, das sie viel zu kompliziert gedacht bzw. geplant haben und man den gewünschten Effekt mit einem Zehntel des geplanten Aufwandes erreichen könnte.
Ok, wird schon hinkommen xD Im Endeffekt ist das alles ganz einfach. Du hast an deinem ATmega deine beiden RX/TX-Pins. Die selben Pins hast du ja an deinem USB2UART-Adapter. Im Normalfall müsstest du die beiden über Kreuz verbinden (Transmit <-> Receive). Leider haben die Chinesen bei diesem Adapter schon für dich "mitgedacht" und die Beschriftung auf der Platine anders rum angebracht. Also einfach TX mit TX verbinden und RX mit RX. (Das hat mich mal einen ganzen Abend gekostet - bin ewig nicht auf die Idee gekommen die mal zu tauschen xD). Auf dem Controller brauchst du dann noch die passenden UART-Funktionen. Das sollte bei Arduino ja aber kein Problem sein. Am PC kannst du das ganz dann Empfangen.
Peter Shaw schrieb: > Also meine Frage ist mehr > c) kann ich ohne Modifikationen mit dem Microkontroller reden? > > und wenn ja, hat das von euch schon mal jemand gemacht? Nein, hat noch nie irgendwer gemacht. Auf diesem Planeten hat noch nie irgendwer einen AVR mit einem PC über die serielle Schnittstelle reden lassen :-) > Hat also > Erfahrungen, wie ich ein C Programm auf dem Chip und eines im Desktop-OS > dazu bewege zu reden. Der springende Punkt ist auf dem AVR programmierst du ganz normal, so wie du eben eine serielle Datenübertragung mit einer USART machst auf dem PC programmierst du ganz normal, so wie man eben eine serielle Datenübertragung mit der seriellen Schnittstelle macht. Das dazwischen, dass da ein Teil der Strecke über USB läuft, braucht dich nicht zu kümmern. Das erledigen PC-seitig eine virtuelle serielle Schnittstelle bzw. der darunterliegende entsprechende Treiber, bzw. AVR seitig eben dieser Adapter für dich. Für dich als Programmierer ist das eine ganz einfach Serielle Schnittstelle, bzw. eine Kommunikation per RS232
Super. Dankeschön. jetzt kann ich weiter planen. Haken hinter und zum nächsten Baustein.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.