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.
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?
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.
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.
@ 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.
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 :)
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
@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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.