Guten Morgen zuammen, ich habe folgendes Problem: Über ein selbst erstelltes Board möchte ich mit eine seriellen Schnittstelle Befehle empfangen und weiter verarbeiten. Die Spannungsversorgung wird über den USB Port realisiert, der die 5 V auf 3.3V regelt. Der CH340N wird als USB to serial Chip verwendet. An Tx und Rx habe ich zwei LEDs über einen Pullup Widerstand angeschlossen, um zu sehen, ob sich was tut. Wenn ich das USB Kabel anschließe, dann taucht auch der COM Port im Windows Geräte Manger auf. Ich habe eine Baudrate von 19200 Bauds eingestellt. Als Terminal Programm benutze ich HTerm. Ich habe den wichtigen Teil des Schaltplans hochgeladen. Dabei habe ich mich an den Schaltplan von SParkfun und Arduino Nano orientiert. https://cdn.sparkfun.com/assets/5/2/5/4/2/Serial-Basic-CH340C-and-USBC.pdf Bei der Bestellung der Platinen ist mir jedoch ein Fehler passiert. Ich habe ausversehen statt 1kOhm Widerstände, Widerstände mit 5.1kOhm in die BOM eingetragen. Also habe ich erstmal R4 und R5 ausgelötet und überbrückt. R2 und R3 sind eigentlich auch zu groß, aber die habe ich erstmal nicht ausgelötet, damit ich sehe, ob die LEDs leuchten. 1. Im Anhang befinden sich paar Bilder mit den Signalverläufen. Wenn ich eine Nachricht sende, dann messe ich mit den Oszilloskop folgenden verlauf wie im Bild Tx-Taster.PNG. Ich messe ein Signal, aber der Pegel geht nicht auf 0V sondern auf ca. 0,27V runter und man erkennt eine Art Sinusschwingung. Über HTerm empfange ich nichts. 2. Wenn ich über den COM Port Zeichen vom PC zum Board sende, dann empfange ich auf der Rx Leitung was, aber der Pegel geht auf 2V runter. 3. Im letzten Bild(Tx_3V3_ohne_USB) habe ich das USB Kabel nicht angeschlossen und die 3.3V über den Debugger Stecker angelegt. Wenn ich jetzt den Spannungsverlauf messe, dann geht der Pegel auf 0V runter und sieht auch nicht so wellig aus. Ich habe VCC mit einer kurzen Leitung an V3 verbunden, weil ich im Datenblatt gesehen habe(https://cdn.sparkfun.com/datasheets/Dev/Arduino/Other/CH340DS1.PDF): " CH340 chip supports 5V and 3.3V power voltage. When using 5V source power, the VCC input 5V power and the pin of V3 must connect with 4700pF or 0.01uF decoupling capacitance. When using 3.3V power voltage, connects V3 with VCC, and input 3.3V power voltage. And the other circuit voltage which is connected with CH340 is no more than 3.3V" Es hat aber nichts gebracht, da die Verläufe genau so aussehen. Woran liegt es, dass der Pegel nicht auf 0V sinkt, wenn ich USB anschließe? Weder bei der Tx noch bei der Rx Leitung. Viele Grüße Michael K.
Sehr merkwürdig... Die 0,27V Offset sollten eigentlich nicht stören. Aber ein Ansatz wäre erstmal Spannungsversorgung und MASSE, ist das ALLES sehr-genau getestet? ALLE Masse-Verbindungen, besonders die vom USB vorhanden und händisch gemessen? Spannungsversorgung unter Betriebslast gemessen?
Im Datenblatt zum CH340N finde ich unter V3 (Pin 8): Connect to VCC when VCC is 3V3, connect to 0.1uF decoupling capacitor when VCC is 5V. Wieso hast du das anders beschaltet? TxD (Pin 6) und RxD (Pin 7) gehen wo hin? Das Signal "Rx-Tx_usb.PNG" - siehst du das sonst noch wo außer an RxD (Pin 7)?
Guten Morgen zusammen, @Jester: Pin 6 und 7 gehen zum Mikrocontroller an die passenden UART GPIOs. Ich habe es anders beschalet, weil ich anfangs mich an den Schaltplan von Sparkfun gehalten habe. Jetzt habe ich mit einem kurzen Leitungsstück den Pin 8 (V3) mit VCC zusammen geschaltet. Bei dem einem Bild mit den Signalverlauf:1 Zeigt, was passiert, wenn der µC sendet und wie der Signalverlauf auf dem PCB Trace aussieht und die 2 Umkreist zeigt an, wenn ich vom PC Daten sende und was tatächlich ankommt. Blau: Tx Trace auf der PCB Rot: Rx Trance auf der PCB Ich habe auch bei der ersten Platine die Pullup Widerstände rausgeloetet, aber es brachte keine Veränderung. @Hermann: Ich habe alle Massepunkte gemessen, ob sie eine Verbindung haben und Masse gegen 3.3V oder VBUS um einen Kurzschluss zu finden. Ich habe nichts gefunden. Ich habe dazu auch das USB Kabel angeschlossen und mit den Messspitzen kontrolliert, ob eine Verbindung von GND vom Kabel zu GND am Stecker/Platine vorhanden ist und mit VBUS habe ich das gleiche gemacht. Ich habe eine neue Platine ohne µC genommen und nur den USB Stecker und einen Header dran gelötet. Ich habe jetzt einen FTDI USB Adapter angeschlossen, da ich einen Header zum Notfall vorgesehen habe. Ich habe folgendes versucht: PC sendet über USB (COM14) Zeichen -> Tx LED leuchtet -> Tx Pin Platine an Rx Pin FTDI -> FTDI Rx COM3 empfängt die Zeichen... Das funktioniert Also wenn ich vom PC Daten über USB sende, kommt es auf der Platine an Tx an, was ja falsch ist, da ich an an den Rx Pin die Daten empfangen müsste. Wenn ich vom FTDI Daten über den Tx Pin an Rx oder Tx sende, kann ich am PC über den USB Stecker keine Daten empfangen. (PrinzipBild) Ich habe die Pinbelegung vom CH340N kontrolliert, aber ich finde keinen Fehler. Meine Vermutung ist, dass ich einen Fehler beim Layout habe. Wenn die Daten vom PC kommen und beim Tx angekommen, dann ist es doch falsch? Es müsste doch an Rx ankommen oder? Und warum ich keine Daten von der Platine an den PC senden kann, kann ich mir auch nicht erklären. Viele Grüße Michael K.
Michael K. schrieb: > Und warum ich keine Daten von der > Platine an den PC senden kann, kann ich mir auch nicht erklären. Wenn man zum Test Tx-Ausgänge mit einem weitern Tx-Anschluß verbindet, darf man sich nicht wundern, wenn nichts mehr funktioniert. Tx-Ausgänge sind in der Regel nicht kurzschlußfest. Just my 2 cents
Also, der CH340x ist absolut beherrschbar und war bei mir in mindestens 10 Projekten unkritisch. Dies mal als Hoffnungs-Schimmer... Sende mal das GANZE Layout und notiere bitte eventuelle Änderungen gegenüber dem tatsächlichen Aufbau.
Klaus S. schrieb: > Wenn man zum Test Tx-Ausgänge mit einem weitern Tx-Anschluß verbindet, > darf man sich nicht wundern, wenn nichts mehr funktioniert. Tx-Ausgänge > sind in der Regel nicht kurzschlußfest. > > Just my 2 cents Danke fü die Info. Ich habe es tatsächlich nicht gewusst. Ich Empfange am Tx Ausgang die Zeichen statt am Rx Ausgang der Platine. Kann sein, dass ich mir durch das Probieren jetzt was zerschossen habe. Ich teste meinen FDTI USB Adapter nachher, ob er noch richtig funktioniert. Hermann Kokoschka schrieb: > Also, der CH340x ist absolut beherrschbar und war bei mir in > mindestens > 10 Projekten unkritisch. Dies mal als Hoffnungs-Schimmer... > > Sende mal das GANZE Layout und notiere bitte eventuelle Änderungen > gegenüber dem tatsächlichen Aufbau. Ich habe das KiCad Projekt hochgeladen. Die Änderungen habe ich im Bild gekennzeichnet. - R4 und R5 entfernt und gebrückt. - R2 und R3 entfernt - VCC(Pin 5) mit V3 (Pin 8) verbunden Viele Grüße und danke für die Hilfe Michael
Michael K. schrieb: > @Jester: Pin 6 und 7 gehen zum Mikrocontroller an die passenden UART > GPIOs. Ich habe es anders beschalet, weil ich anfangs mich an den > Schaltplan von Sparkfun gehalten habe. > Meine Vermutung ist, dass ich einen Fehler beim Layout habe. Wenn die > Daten vom PC kommen und beim Tx angekommen, dann ist es doch falsch? Es > müsste doch an Rx ankommen oder? Und warum ich keine Daten von der > Platine an den PC senden kann, kann ich mir auch nicht erklären. Wohin hast den "TxD vom PC" denn hinverdrahtelt? Wenn ein TxD gegen einen TxD verschaltet wird, dann gibt es dort "Datensalat". Sieht dann oft so aus wie in https://www.mikrocontroller.net/attachment/573715/Rx-Tx_usb.PNG. Aber das hat Dir Klaus S. schon geschrieben.
TX-Sender gehört natürlich an RX-Empfänger! Und umgekehrt! Falls Du das mal versehentlich verwechselt hast könnte der CH340 beschädigt sein, ist nicht unwahrscheinlich. > - R4 und R5 entfernt und gebrückt. > - R2 und R3 entfernt Die LED sind also nun außer Betrieb.
> Meine Vermutung ist, dass ich einen Fehler beim Layout habe.
Sende doch bitte das Layout nochmal einzeln als BITMAP.
Nicht jeder hat KiCad...
Noch ein paar unsortierte Hinweise:
> Als Terminal Programm benutze ich HTerm.
a) Ich auch @XP und das klappt stets völlig problemlos auf Anhieb.
b) Ich musste mich nie mit dem "CH340-selbst" beschäftigen.
c) CTS-Flow ist bei mir stets abgeschaltet.
d) Protokoll liegt natürlich bei Dir,
also ob Du als Telegramm-Ende CR / CR+LF sendest, iss abba erssma eine
nachranginge Software-Frage.
e) Die furchtbaren Spikes in Deinen OsziPics machen mir Sorge, kann aber
am Tastkopf/MessAufbau liegen. Sah jedenfalls bei mir sauberer aus.
Neben "CH340 defekt geworden" denke ich dennoch an Masse-Probleme,
Effekte und die leichte Welligkeit halte ich für Gründe dort zu
forschen.
Hermann Kokoschka schrieb: > TX-Sender gehört natürlich an RX-Empfänger! > Und umgekehrt! > > Falls Du das mal versehentlich verwechselt hast könnte der CH340 > beschädigt sein, ist nicht unwahrscheinlich. > >> - R4 und R5 entfernt und gebrückt. >> - R2 und R3 entfernt > Die LED sind also nun außer Betrieb. Ja, ich glaube das ist der Fehler, wie Klaus schon geschrieben hat. Ich habe den Mikrocontroller mit den CH340N wie einen Max232 mit einen CH340 verschaltet (Bild im Anhang). Also Tx zu Tx und Rx zu Rx. Schande über mein Haupt -_-. Hermann Kokoschka schrieb: > e) Die furchtbaren Spikes in Deinen OsziPics machen mir Sorge, kann aber > am Tastkopf/MessAufbau liegen. Sah jedenfalls bei mir sauberer aus. > > Neben "CH340 defekt geworden" denke ich dennoch an Masse-Probleme, > Effekte und die leichte Welligkeit halte ich für Gründe dort zu > forschen. Ich finde die Spikes auch nicht schön. Aber wenn es erstmal funktioniert, dann würde ich mich damit näher beschäftigen Vielen Danke für die Hilfe. Ich kann den PSoC 4 so programmieren, dass ich Tx und Rx tausche. Dann müsste es von der Pin Belegung passen, wenn der CH340 noch funktionieren sollte.
Nachtrag: Ich habe es heute getestet und es lag tasäschlich daran, dass ich die zwei GPIOs falsch verbunden habe. Der CH340 funktioniert dennoch und ich kann mit ihm Sachen über USB empfangen und senden. Hermann Kokoschka schrieb: > Also, der CH340x ist absolut beherrschbar und war bei mir in > mindestens > 10 Projekten unkritisch. Dies mal als Hoffnungs-Schimmer... > > Sende mal das GANZE Layout und notiere bitte eventuelle Änderungen > gegenüber dem tatsächlichen Aufbau. Ich habe das ganze Layout hochgeladen, falls es noch nötig ist. Viele Grüße Michael
Michael K. schrieb: > 04_Gateway_WVB-brd.svg Wieder mal eine Posting-Glanzleistung. Unleserliches Bild in Datenmengen verschwendenden Format.
Das ganze Drama wäre nicht nötig gewesen, wenn Du einen Schaltplan hochgeladen hättest, und nicht Fragmentschnipsel.
Ist das Oszi Bild jetzt sauberer, nachdem du den Fehler gefunden hast? Was gut sein kann, das die Ladungspumpe vom MAX232 da Störnebel produziert. Die Betriebsspannung ist ja nur mit dem Allernötigsten abgeblockt. Vom Bauchgefühl würde sich da ein keiner Elko im zweistellige µF Bereich gut machen. Der sollte auch vom Platzverbrauch her nicht stören.
OMG schrieb: > Wieder mal eine Posting-Glanzleistung. Unleserliches Bild in > Datenmengen verschwendenden Format. Ich finde es echt gut, dass du mich noch versuchst in Verruf zu bringen, obwohl ich meinen Fehler durch die Hilfe des Forums gefunden habe und du dabei selbst nicht geholfen hast :) FragmenteHelfenNicht schrieb: > Das ganze Drama wäre nicht nötig gewesen, wenn Du einen Schaltplan > hochgeladen hättest, und nicht Fragmentschnipsel. Nächste mal weiß ich Bescheid. Gerald B. schrieb: > Ist das Oszi Bild jetzt sauberer, nachdem du den Fehler gefunden > hast? > Was gut sein kann, das die Ladungspumpe vom MAX232 da Störnebel > produziert. Die Betriebsspannung ist ja nur mit dem Allernötigsten > abgeblockt. Vom Bauchgefühl würde sich da ein keiner Elko im > zweistellige µF Bereich gut machen. Der sollte auch vom Platzverbrauch > her nicht stören. Die Welligkeit ist nicht mehr vorhanden. Ich denke die Spikes kommen daher, weil das Kabel des Tastköpfs 3m lang ist und ich die Bandbreitenbegrenzung nicht eingeschaltet habe. Viele Grüße Michael
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.