mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Problem mit RS232 und int. RC-Osz.


Autor: Marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ein Problem mit der Datenübertragung per RS232. Ich verwende
als Spannungsversorgung einen LM2575 um einen möglichst großen
Eingangsspannungsbereicht zu haben. Mein ATMega8515 läuft mit 8MHz die
vom internen RC-Oszillator erzeugt werden. Manchmal treten bei der
seriellen Datenübertragung Fehler auf. Wenn ich statt des internen
Oszillators einen externen Quarz für den Takt verwende, oder statt des
LM2575 einen 7805, dann treten die Fehler nicht auf. Da ich aber schon
einige Platinen geätzt habe, möchte ich die Änderung auf ext. Quarz
nicht machen, da ich sonst neue Platinen machen müsste. Auch möchte ich
nicht auf den 7805 ausweichen, weil ich sonst ebenfalls neu Platinen
fertigen müsste und den großen Eingangsspannungsbereich nicht mehr
hätte. Zusätzliche Kondensatoren an der 5V-Versorgung des MC haben
keine Besserung gebracht. Hat jemand eine Idee wie man das (einfach)
lösen kann?

Autor: MSE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Deine Taktfrequenz aus den vor Dir genannten Gründen nicht stabil
genug ist und Du daran nichts ändern kannst, würde ich an Deiner Stelle
probieren:

1. Geh mit der Baud-Rate so wo weit runter wie möglich,
2. Übertrage immer nur möglichst kleine Datenpakete auf einmal und
   mach dazwischen Pausen.


Gruß, Michael

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Datenblatt:
"If the internal RC is used at other frequencies, the calibration
values must be loaded manually..."

Autor: Marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, den Teil im Datenblatt habe ich gefunden. Aber ich verstehe das
nicht so ganz. Da steht: This can be done by first reading the
signature row by a programmer, and then store the calibration values in
the...
Was ist die signature row und wie kann man die auslesen..????

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welchen Programmer verwendest du?
Mit dem STK500/AVR-Studio kannst im Programmiertool unter "Advanced"
die cal.bytes für die verschiedenen Frequenzen auslesen  und im
"normalen" Flash oder EEProm speichern. Dort kann sie dann im
Programm lesen und in das OSCAL-Register schreiben.
Ich persönlich nehme lieber einen SMD-Resonator, wenn es in der
Anwendung auf halbwegs genaues Timing ankommt (RS232 gehört für mich
dazu). Neben der sowieso schon vorhandenen Ungenauigkeit kommt noch
Drift durch Temperatur und Spannung, und nach Murphy gleicht sich da
nicht etwa was aus, sondern summiert sich prinzipiell in Richtung des
grösstmöglichen Fehlers.

Autor: Marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwende zum Programmieren einen selbstgebauten Adapter mit einem
74LS245 und PonyProg als Software. Geht das damit auch irgendwie?

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
da kann ich dir nicht weiterhelfen, damit kenne ich mich überhaupt nicht
aus. Kann sein, kann nicht sein, ist ne Frage der Software, ob die das
unterstützt.

Autor: Frankl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe auch schon meine negativ Erfahrungen mit dem intern RC Osz.
gemacht. Er ist sehr Temp. abhängig.

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wer sucht der findet. unter ponyprog commands steht ganz unten read osc.
calibration byte. das hört sich doch ganz gut an..

Autor: Marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, habe inzwischen ein SDK500 aufgetrieben und das ganze funktioniert.
Danke für die Hilfe...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Irgendwo steht auch, daß der RC nicht stabil genug für RS-232 ist.

Entweder Du baust eine Baudratenerkennung ein oder nimmst einen Quarz.

Ansonsten ist es nur Glückssache, daß es klappt.
Für reine Hobbyprojekte kann man es ja machen, aber die paar Cent für
nen Quarz zu sparen macht einfach keinen Sinn.

Ich würds jedenfalls nicht riskieren, daß die Schaltung bei kalten
Wintern oder heißen Sommern aussteigt.


Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.