Hallo Leute, Ich hab Mega8 mit PC kommunizierend über FTDI UB232R. Das ist eine kleine Platine mit FT232RQ drin. Verbindung zwischen Mega8 und FTDI: TX-RX, RX-TX, GND-GND. VCC pin von FTDI ist nicht verbunden weil ich ein eigenes VCC Netzteil habe. Siehe Schaltung in Anhang. Alles funzioniert prima, ich hab nur eine dumme Frage. Wenn ich keine 5V zum Mega8 VCC lege, sondern einfach das Stecknetzteil rausziehe, funktioniert es auch. Ich bekomme Daten an den PC über das USB Kabel. Ich habe 2.3V zwischen VCC und GND gemessen, es ist genug damit Mega8 läuft. Die Spannung kommt vom USB, über TX und RX pins, zum VCC. Ich kann auch LED über Widerstand zwischen VCC und GND leuchten lassen. Jetzt frage ich mich, was passiert wenn ich die ganze PowerLEDs draufhange wie geplant. Etwas stimmt nicht, nur was? MfG, Igor.
Was passiert ist, dass die Spannung auf den TX- und RX-Leitungen über die Schutzdioden im Chip auf die VCC-Leitung abgeleitet wird. Dadurch lädt sich der Kondensator zwischen VCC und GND auf und das ist anscheinend ausreichend, um den Chip zu versorgen. Sobald du allerdings mehr Strom verbrauchst wird die Spannung wohl einbrechen und der Chip wird ständig im Reset hängen bleiben.
Es stimmt eh alles. Sieh dir mal im Datenblatt die interne Beschaltung der I/O Pins an (Kapitel "I/O Ports", bei mir Seite 51). Bei den verbauten Dioden sollte ein Lichtlein aufgehen. Bei den Powerleds werden die RX/TX möglicherweise nicht mehr genug Saft liefern, sodass der Controller dann abstürzt, sofern er nicht extern bestromt wird. Gruß David
Gut, aber wird der FTDI oder USB-port nicht kaputtgehen, mit TX/RX an PowerLED? Muss ich einen Widerstand einbauen: TX-R-RX ?
Schau mal ob es genuegt, brown-out detection einzuschalten. Gruesse Marvin
Igor schrieb:
> Muss ich einen Widerstand einbauen: TX-R-RX ?
Durchaus sinnvoll.
Hab mir vermutlich auf ähnliche Weise mal einen Mega32 verfused. Vcc des Boards war versehentlich aus, Versorgung durch den Programmer ebenfalls, aber die Spannung auf den ISP-Leitung reichte aus, dass die Fuses korrekt lesbar waren. Daraufhin dann den Programmiervorgang gestartet, der natürlich nicht korrekt verlief. Nun antwortet der Mega32 nicht mehr, Rettung über HV-Programmierung habe ich mangels HV-fähigem Programmer noch nicht probieren können. Also liber Vcc dran, besser ist das ;)
> Also liber Vcc dran, besser ist das ;)
Das werde ich auch machen, meine Sorge ist der Benutzer wer kann erst
USB Kabel einstecken dann Stromversorgung. Dann wird USB Spannung kurz
über TX/RX an VCC und zum Power* Teile gehen. Absolute maximum rating
für FTDI TX/RX ist 24mA und für USB port 100mA laut Dokumentation. Es
gibt dort auch ein Beispielschaltung FTDI-MCU ohne Schutzwiederstande
und andere FTDI-LED mit 270~Ohm Widerstand. Ich denke man muss TX-R-RX
Widerstand einbauen für den Fall. Gibt es eine bessere Lösung?
Es gibt mehrere Möglichkeiten: - Komplett auf das Self-Powered-Design aus dem FT232R-Datenblatt wechseln. Dann erhält der FT232 auch erst mit dem Rest der Schaltung seine Versorgungsspannung, und meldet sich auch erst dann auf dem USB-Bus. Ausserdem weisst du in deiner PC-Anwendung dann auch, dass der Rest der Schaltung "da" ist, wenn der Controller auf dem USB erkannt wird. - VCCIO für den FT232 aus der VCC der restlichen Schaltung speisen. Solange der Rest keine Spannung hat, ist dann auch VCCIO=0, und der FT232 kann den ATmega nicht durch die Hintertür versorgen. - Vor den RX-Eingang des ATmega einen FET einbauen, der erst durchschaltet, wenn VCC an der Schaltung anliegt. Die andere Richtung ist nicht nötig, da der RX-/Eingang/ des FT232 keinen Strom liefert. - Allgemeiner: externe Clamping-Dioden am RX-Eingang des ATmega, die mehr als die 23mA der internen aushalten. Hierbei besteht dann aber Gefahr, dass der Ausgang des FT232 überlastet wird. Wahrscheinlich gibt es noch mehr, das sind nur die, die mir ganz spontan einfallen. Andreas
ich habe meinen FTDI-Baustein mit I-Coupler getrennt (Datenblatt im Anhang). FTDI und Seite 1 des I-Couplers wird vom PC über USB versorgt, Seite 2 des I-Couplers und der AVR von einem Netzteil. Eignet sich auch super zum Pegelumsetzen 3,3V <-> 5V.
Wenn man keine Zusatzanforderungen in Richtung galvanischer Trennung vom PC hat, ist das aber ziemlicher Overkill. Pegelwandlung ist nicht nötig, der FT232 ist extra so designed, dass er auf der Seite der angehängten Schaltung von 1,8V bis 5V jeden beliebigen IO-Pegel unterstützt. Das ist der Sinn hinter dem VCCIO-Pin. Andreas
Hallo, ich versuche den UB232R an meinem PIC16f871 zu betreiben. Ich nutze die Uart des PIC und habe RX und TX laut Datenblatt angeschlossen. Nun sende ich lustig ASCII 'C' an den UB232R, kann es auch mit einem Logicanalyser dekodieren, aber aus der USB Schnittstelle kommt kein Signal. Der PC meldet einwandfrei COM8 gefunden, Treiber ist installiert, aber wenn ich z.B. Hyperterminal starte und auf COM8 lausche , nichts !? Mit meinem Oskar lässt sich auch nichts an D+/D- messen. GND liegt richtig an und auch 5V. Ich gehe doch recht in der Annahme, dass ich nicht künstlich das Potential auf 12V für den uB232R anheben muss? Das ich CTS/RTS auf dem UB232R kurzgeschlossen habe? Kann mir jemand einen nützlichen Link oder Tipp geben? Gruß frank
Problem gelöst, für alle die den UB232r von z.B. RS nutzen möchten, die PIN-Belegung ist nicht entsprechend den Anschlüssen, sondern die Bezeichnung beschreibt den PIN vom FD232rq der auf die Anschlüsse gelegt ist. Will sagen: RX vom MC muss an TX vom Modul. Gruß Frank
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.