Forum: Mikrocontroller und Digitale Elektronik USB UART Bridge und AVR


von technikus (Gast)


Lesenswert?

Hallo,

ich setze in meiner Schaltung eine USB UART Bridge von embedded projects 
ein.
Zur UART Implementierung im Mikrocontroller nutze ich die Fleury Lib.
Alles funktioniert einwandfrei.

Sobald ich jedoch die Kabel zur USB UART Bridge entferne und in der Luft 
baumeln lasse kommen irgendwelche Daten im Mikrocontroller an.
Es geht sogar soweit das der Watchdog wegen der Datenfülle zubeist.
Zudem schreibe ich empfangene Daten in ein EEPROM (Protokoll mit 
Startzeichenabfrage implementiert). Die Daten im EEPROM werden mit Müll 
befüllt.

Wenn ich jetzt andere USB UART Bridges nutze (ausgeschlachtet aus Handy 
Datenkabel etc.) kommt es zu eben diesem Fehler wenn keine Verbindung 
mit einem USB Kabel zum PC besteht. Ich verbinde also RxD / TxD vom 
CP2102 und GND mit der Mikrocontroller UART / Schaltung.

Die Power LED der USB UART Bridge von embedded projects leuchtet auch 
wenn keine Verbindung per USB Kabel zum PC besteht.
Die Power LED aller anderer getesteten Bridges leuchtet erst wenn die 
Spannungsversorgung über ein USB Kabel besteht.

Kommen nun Daten durch Störfelder rund um die angeschlossenen Leitungen 
auf der Mikrocontrollerseite an? Kann ich dann im AVR Programm einfach 
die Pull Ups der UART PINs aktivieren um den Fehler zu beseitigen ?

Oder verenne ich mich jetzt total ?

Ich würde mich freuen wenn Ihr mich unterstützt!


Gruß
ernst

von technikus (Gast)


Lesenswert?

???

von lab (Gast)


Lesenswert?

nähere erklärungen zu deinem code wären  mal sinnvoll


die lib an sich istbekannt
aer irgendwas muss ja uart_get() aufrufen ,...

ebenso muss was sein das der pin dort wackelt ..
das tuen die im regelfall nicht

also ... code +  schaltplan

von technikus (Gast)


Lesenswert?

Hallo,


die uart_getc() rufe ich in der Hauptschleife auf.
1
  c = uart_getc();          //UART Datenempfang
2
    
3
        if (!( c & UART_NO_DATA ))      //Daten wurden Empfangen
4
    {... }

Anbei eine Anschlussdarstellung. Das USB UART Modul ist also direkt mit 
den entsprechenden Pins vom Mikrocontroller verbunden.

Wenn das USB UART Modul über den USB Anschluss mit Spannung versorgt 
wird, funktioniert alles einwandfrei. Erst wenn das USB Kabel abgeklemmt 
oder die Leitungen offen "herumbaumeln" kommt es zum geschilderten 
Fehler.

Evt. "strahlt" auch etwas in die offenen Leitungen weil ich einen 
Schaltregler auf der Leiterplatte einsetze...

von technikus (Gast)


Angehängte Dateien:

Lesenswert?

Bild

von technikus (Gast)


Lesenswert?

Hallo,

ich habe jetzt die Pull Ups von RxD und TxD am Mikrocontroller 
aktiviert.
Funktioniert soweit.


ernst

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
Noch kein Account? Hier anmelden.