Hallo zusammen, ein digitaler Drucksensor wird von einem Tiny13 ausgelesen und die Daten werden seriell mit 1200 Baud auf einen 433MHz Sender gegeben. Ein Empfänger gibt die Daten an einen Mega8 zur Auswertung. Am Mega8 hängt ein 16MHz Quarz. Der Tiny13 wird von seiner internen 9,6MHz Quelle getaktet. Kann es sein, dass z.B. durch Temperaturschwankungen die interne Taktquelle des Tiny13 so stark schwankt, dass die serielle Kommunikation nicht mehr richtig funktioniert? Ich kann dem Tiny13 aus Platz- und Pin-gründen keinen Quarz geben. Gibt es andere Möglichkeiten, die Zuverlässigkeit der Kommunikation sicherzustellen. Auf eure Antworten freue ich mich sehr !!! Daniel
Hat der Atiny überhaupt eine UART oder machst du die per Software
Hi Ho, der interne Takt wir über eine R-C Schaltung realisiert, die auch sehr von der Spannungsversorgung abhängt. Von der Temperatur weis ich nicht, aber geh mal davon aus, dass die auch einfluss hat, wichtiger ist aber glaube die Spannungsversorgung. Gruß Pöschi
Beim TINY13 kann der interne Oszillator über das OSCCAL-Register abgeglichen werden. Der interne RC-Oszillator ist zwar recht spannungs- und temp.-stabil +- 1%, hat aber 5% Fertigungstoleranz von der Nennfrequenz.
Hi, der interne RC-Oszillator hat immer das Toleranzproblem. Als Kompromiss aus Platz, Preis und Toleranz ist ein Resonator in Betracht zu ziehen. Eine Toleranz von 0,5% ist für eine serielle Datenübertragung OK. Oryx
Bist Du Dir sicher, dass der ungenaue Oszilator die Ursache ist? Ich würde die Ursache eher in der Funkstrecke suchen. Welche Codierung verwendest Du für die Funkübertragung? Handelt es sich um ein echtes Funkmodem oder gibst Du die seriellen Signale direkt an den Sender. AM oder FM? Achim.
@toddoy: der Tiny13 hat keine UART....ich mache das per Software @Pöschi: ich versorge den Tiny13 mit einer Spannung von 3,3V aus einem Spannungsregler. Bei unterschiedlichen Temperaturen kann ich keiner Spannungsänderung feststellen. @mmerten: das interssiert mich sehr. Wie kann ich das ausgleichen? Wie messe ich denn erst die interne Taktfrequenz ? @Oryx: auch der Oszi passt nicht mehr....muss irgendwie den internen nutzen @Achim: sicher bin ich mir da nicht....kam nur darauf, da ich zuerst auch den Mega8 (Empfänger) mit dem internen Takt versorgt habe. Das klappte fast garnicht. Nun mit Quarz ist es deutlich besser geworden. Eigentlich schon völlig ausreichend. Es könnte jedoch sein, dass durch Abgleich des Tiny13 die Sache noch besser wird. Ich verwende die Manchester Codierung. Es ist kein Funkmodem....nur ein reiner AM Sender und ein AM Empfänger Vielen Dank für eure Antworten !!! Wie das mit dem Abgleich nun genau funktioniert würde mich sehr interessieren !!! Daniel
Bei der Manchestercodierung ist das völlig unkritisch. Ein UART synchronisiert nur einmal, und dann muß es bis zum 10. Bit noch stimmen. Der Manchestercode synchronisiert aber auf jedes Bit, da sind also Abweichungen bis 20% kein Problem. Er muß ja nur unterscheiden können, ob die Pulsdauer eine halbe oder eine volle Bitzeit lang ist. Peter
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.