Forum: Mikrocontroller und Digitale Elektronik [c]rfm12 und UART


von Thomas K. (thomas_k62)


Lesenswert?

Guten Morgen,

Ich habe eine Frage, die ihr mir mit Sicheheit beantworten koennt, da 
die misten von euch mhr Ahnung haben wie ich :).

also:
Ich hane vor mehrere uCs miteinander  über Funk kommunizieren zu lassen. 
Ich verwende mehrere Atmega8. Da es eine kleine Platine wird habe ich 
den Takt vom RFM12(433mhz), also dn 10mhz Quarz gleichzeitig auch als 
systemtakt für meine Controller verwendet.
das funktioniert soweit auch ganz gut.

meine Frage ist jetzt:
kann ich zusätzlich noch eine UART verbindung über USB an meinen 
Computer herstellen, oder konnte es irgendwie zu sync-Problemen kommen 
wenn RFM12 und UART gleichzeitig arbeiten
ich habe leider keine Erfahrung mir UART.

danke schonmal für die Hilfe.

von Helfer (Gast)


Lesenswert?

Logisch kann es Probleme geben, wenn eine der Funktionen zu viel Zeit 
benötigt, fehlt der anderen Funktion diese Zeit und es gehen dort 
Zeichen verloren.

Hast du mal gemessen oder abgeschätzt wie viel Zeit deine bisherigen 
Funktionen brauchen und wie viele der 10000000 Takte/s noch für die UART 
Zusatzfunktion frei wären?

Der Zeitbedarf für die UART Funktion ist auch von der Menge der zu 
versendenden Zeichen pro Zeiteinheit abhängig. Hast du da schon eine 
Vorstellung wieviel du über UART senden/empfangen willst?

von Thomas K. (thomas_k62)


Lesenswert?

also ich hab keinen ständigen Datenfluss. Das RFM12 Modul hört 
eigentlich nur mit und bekommt ca. im Sekundentakt daten (max 32 
Buchstaben) die dann per Display(2x16zeichen) angezeigt werden und 
gleichzeitig an den PC weitergegeben werden.
viel mehr funktionen stecken momentan noch nicht in meinem Programm.

von us73 (Gast)


Lesenswert?

guckst Du bspw. hier:

http://www.ulrichradig.de/home/index.php/avr/usb-funk

Verwende ich als 433 MHz Tracer, zeigt mir an, was alle meine anderen 
RFM12 Module so kommunizieren.

von Helfer (Gast)


Lesenswert?

@ Thomas

Das bisschen zusätzliche UART Übertragung wird dann schätzungsweise auch 
noch funktionieren. Programmtechnisch könntest du mit einem FIFO-Puffer 
z.B. in Ringform arbeiten. Und es wäre eine Überlegung das UART-Senden 
oder das RFM12-Empfangen oder gar beides per Interrupt zu machen damit 
sich beide Funktionen nicht gegenseitug beim Senden bzw. Warten auf 
Daten blockieren.

von Thomas K. (thomas_k62)


Lesenswert?

Fifo in Ringform?
da musss ich wohl erstmal gucken wie das funktioniert.
ja stimmt, per interrupt wäre wohl ein ueberlegung wert. Danke

@us73

Danke, der Link sieht schonmal gut aus,
is ja im Prinzip genau das was ich vor hatte :)

von Klaus M. (muek)


Lesenswert?

Thomas K. schrieb:

Also wenn das alles ist was du deinem MEGA8 bei 10 MHz zumuten möchtest, 
wird er sich eher fadisieren, der arme Kerl !!!

Und was die Kommunikation via RFM12 betrifft, kann ich dir nur empfehlen 
da mal reinzugucken

http://www.das-labor.org/wiki/RFM12_library

von Thomas K. (thomas_k62)


Lesenswert?

@us 73

hab mir den link mal angeguckt,
beim Schaltplan is mir aufgefallen, dass garkein Quarz angeschlossen is 
und der vom RFM12 auch nicht angezapft wurde...
taktet das teil wirklich über den internen des Atmega8?

ich dachte der is viel zu ungenau für sowas?

hab ich was uebersehn?

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.