Forum: Mikrocontroller und Digitale Elektronik rfm02 433-Sendemodul / Timing Ansteuerung


von Thomas V. (ziggystar)


Lesenswert?

Hallo,

ich plane einen Funktemperaturfühler mit einem rfm02 und einem 
Atmega8/48 aufzubauen. Dieser soll mit Batterien betrieben werden. Ich 
will, wenn möglich direkt mit 2-3 Zellen beide Module betreiben.

Wenn möglich würde ich den internen Oszillator des MCU benutzen und das 
RFM02  mit einem Outputpin+Stützkondensator des MCU betreiben. Damit 
kann ich es bei Bedarf komplett abschalten.

Die Frage ist, ob zur Ansteuerung des RFM02 der "ungenaue" interne Takt 
des Atmega8 reicht. Bei Übertragen eines Steuerbits wird ja der Takt vom 
MCU generiert und beim Funken wird der Takt (der sich dann wohl mittels 
der Baudrate einstellen lässt?!?) vom Funkmodul erzeugt. Ich denke, dass 
der Übertragungstakt ja wohl recht langsam ist und somit auch problemlos 
von einem MCU, der irgendwo bei 1MHz rumeiert, bedient werden kann.

Ist das Timing beim Ansteuern des RFM (Befehlsübertragung) auch mehr 
oder weniger egal?

Insgesamt würde ich dann zum Batteriesparen einen Uhrenquarz an den MCU 
klemmen und ihn soweit wie möglich schlafen legen. Damit müsste ich ja 
leicht in den µA Bereich kommen können, oder?

Danke für die Antworten,
Thomas

von Thomas V. (ziggystar)


Lesenswert?

Die Frage ist also wie stabil ein AVR mit Betriebsspannung von Batterien 
läuft. Die Spannung fällt ja mit dem Verbrauch der Batterien ab.

Und inwiefern hat sowas Auswirkungen auf die Inter-IC Kommunikation im 
speziellen mit diesem Funkmodul.

von Benedikt K. (benedikt)


Lesenswert?

Thomas Vultura wrote:
> Die Frage ist, ob zur Ansteuerung des RFM02 der "ungenaue" interne Takt
> des Atmega8 reicht. Bei Übertragen eines Steuerbits wird ja der Takt vom
> MCU generiert und beim Funken wird der Takt (der sich dann wohl mittels
> der Baudrate einstellen lässt?!?) vom Funkmodul erzeugt.

Der Takt des AVR ist egal, denn die Baudrate wird vom RF02 vorgegeben.

> Ich denke, dass
> der Übertragungstakt ja wohl recht langsam ist und somit auch problemlos
> von einem MCU, der irgendwo bei 1MHz rumeiert, bedient werden kann.

Jain. Der RF02 erzeugt Impulse mit etwas über 1µs. Damit der AVR die 
sicher erkennt, muss er schneller laufen. Allerdings kann man mit einem 
nicht dokumentierten Befehl den RF02 dazu bringen, anstelle der 1µs 
Impulse ein Rechteck mit halber Baudrate zu erzeugen. Allerdings ist 
dieser Befehl nicht dokumentiert, und dessen weiteren Auswirkungen daher 
unbekannt.

> Insgesamt würde ich dann zum Batteriesparen einen Uhrenquarz an den MCU
> klemmen und ihn soweit wie möglich schlafen legen. Damit müsste ich ja
> leicht in den µA Bereich kommen können, oder?

Mach es anderst:
Schalte den AVR komplett ab, und nutze den Timer des RF02. Dieser 
erzeugt in einstellbaren Intervallen einen Interrupt um den AVR zu 
wecken.

von Thomas V. (ziggystar)


Lesenswert?

Wenn ich also den internen Takt auf über 2MHz stelle müsste es klappen?

Benedikt K. wrote:
> Mach es anderst:
> Schalte den AVR komplett ab, und nutze den Timer des RF02. Dieser
> erzeugt in einstellbaren Intervallen einen Interrupt um den AVR zu
> wecken.

Das wäre die zweite Möglichkeit gewesen an die ich gedacht habe. Was 
wäre der Vorteil? Ich spare den Uhrenquarz? Ich versuche mal die 
Schlafsteuerung für das RFM02 nachzulesen.

von Benedikt K. (benedikt)


Lesenswert?

Thomas Vultura wrote:
> Wenn ich also den internen Takt auf über 2MHz stelle müsste es klappen?

Wenn du das ganze per Software machst, mindestens 4MHz.

> Das wäre die zweite Möglichkeit gewesen an die ich gedacht habe. Was
> wäre der Vorteil? Ich spare den Uhrenquarz? Ich versuche mal die
> Schlafsteuerung für das RFM02 nachzulesen.

Vorteil: Der AVR schläft komplett, und braucht daher nahezu keinen Strom 
(ca. 1µA). Der RF02 nur 1,5µA, trotz aktivem Oszillator.
Weiterer Vorteil: AVR und RF02 wachen zur gleichen Zeit auf, d.h. man 
muss den RF02 nicht zusätzlich wecken.

von Thomas V. (ziggystar)


Lesenswert?

Also ich hab jetzt mal die (spärliche) Information zum Sleepmode des 
RFM02 gelesen.

Ich frage mich genau wie es funktioniert. Wird im Schlaf der externe 
Takt angehalten (und ich müsste den µC dann mit diesem Takt betreiben). 
Und nach Ablauf des Sleeptimers wird der externe Takt wieder 
angeschaltet und der µC beginnt wieder mit der Arbeit, dort wo er 
aufgehört hatte?

Wenn ich den µC mit dem Takt vom RFM02 betreiben will, ist er von 
vornherein angeschaltet? Weil man wählt ja auch die Taktfrequenz durch 
einen Steuerbefehl (vom µC).

von Benedikt K. (benedikt)


Lesenswert?

Thomas Vultura wrote:

> Wenn ich den µC mit dem Takt vom RFM02 betreiben will, ist er von
> vornherein angeschaltet? Weil man wählt ja auch die Taktfrequenz durch
> einen Steuerbefehl (vom µC).

Ja, standardmäßig 1MHz.

von Thomas V. (ziggystar)


Lesenswert?

Erstmal danke für die Hilfe. Ich habe gerade die etwas bessere PDF-Datei 
für den Funk-IC gefunden.

Ist es ok im Betrieb die Taktrate von 1MHz auf 5MHz zu erhöhen?

von Benedikt K. (benedikt)


Lesenswert?

Bei mir hat es bisher immer funktioniert, wenn ich von 1MHz auf 10MHz 
gegangen bin. Ob das gegen irgendwelche Spezifikationen verstößt, weiß 
ich nicht, ich denke aber schon.

von matthias 4thaler (Gast)


Lesenswert?

Hi Leute

echt super, dass gerade diese Diskussion stattfindet,
ich hät da auch eine frage...

Frage1 @ thomas
Thomas wrote:
> Erstmal danke für die Hilfe. Ich habe gerade die etwas bessere PDF-Datei
> für den Funk-IC gefunden.

kannst bitte die "bessere" file hierhin stellen bzw. den link verraten 
wo es die gibt, wär super!

Frage2
Gibt es schon einen Schaltungsvorschlag für den direktionalen Betrieb 
mit rfm01 und rfm01? Selber überlegen geht auch, aber wenn ich mich 
irgendwo anknüpfen könnte wär das sehr nett :-D
Die Antenne muss lambda / 4 sein oder?


vielen Dank, große Hilfe!
matthias vierthaler

von Thomas V. (ziggystar)


Lesenswert?

Such mal nach "HopeRF", die haben auf der Seite Docu zu den ICs und den 
fertigen Modulen.

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.