www.mikrocontroller.net

Forum: HF, Funk und Felder RFM02/RFM12; Crystal oscillator


Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mal eine Frage an diejenigen, die schon damit gespielt haben.

Im Power Management Command kann ich den Crystal oscillator im Sleep 
mode abschalten.

Wird hiermit nur der Clk-Ausgang abgeschaltet oder der komplette 
Oszillator? Wie läuft dann der Wakeup timer ohne Takt?


Ich stelle mir folgendes vor:

Ich habe einen ATtiny-??/ATmega-?8 der seinen Takt vom RFM erhält (nach 
por = 1MHz). Dieser initialisiert den RFM, programmiert den Wakeup 
timer, schickt den RFM nach x ms ins Bett und schläft dann sofort (also 
noch vor Ablauf dieser x ms) selber ein.

Nun ist alles im Ruhezustand.

Nach einer gewissen Zeit (1-5 Minuten) soll nun der RFM wieder 
aufwachen. Der ATxxx bekommt wieder einen Takt und wird per nIRQ(?) 
aufgeweckt.
Jetzt werden gewisse Umweltdaten ermittelt und mittels RFM gesendet.

Ist dies geschehen, geht es wieder mit dem Schlafzyklus los.


Würde das so funktionieren?
Oder läuft der Wakeup timer mit abgeschaltetem Oszillator nicht?

Weitere Frage:
Können die RFM-"Register" auch ohne aktivem Oszillator beschrieben 
werden?

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
der WakeUp-Timer der RFM läuft unabhängig wenn er eingeschaltet ist.
Sehr sparsam aber nicht sonderlich genau.

Ich mache es bei meinen Sensoren so:
AVR (Tiny45) läuft mit internem Takt (8MHz).
RFM wird initialisiert, WakeUp auf ca. 1 Minute gesetzt, dann wird der 
RFM vom AVR komplett (außer WakeUp-Timer natürlich) schlafen geschickt, 
der Sensor und der AVR geht in PowerDown.

Der RFM weckt per nIRQ den AVR auf, der macht seine Messung und schickt 
das Datenpaket über den FRM raus.
Anschließend wie oben.

Ruhestromaufnahme mit Tiny45, RFM02 und FOST02 3-4µA, Spitze beim Senden 
ca. 12mA.

Läuft hier seit ca. 2 Monaten mit 6 Sensoren.
Beitrag "Sensoren mit RFM02/12, FOST02, HP03S (ASM)"

Gruß aus Berlin
Michael

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke,
das ist genau das, was ich auch damit vorhabe.

Noch ne Dumme Frage: Gibt es zu Deinem Projekt Quellcodes? So zum 
Spicken? Dann müßte ich das Rad nicht komplett neu erfinden.

Christian

Autor: Michael U. (amiga)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

prinzipiell ja, da daß Interesse bisher nur mäßig war und ich immernoch 
umgebaut habe, habe ich mir dafür noch keine Zeit genommen...

Es gibt zur Zeit:
alle Module mit RFM02 als Sender,
Sensor entweder FOST02 (Temperatur/Feuchte, entspricht SHT11 soweit ich 
weiß), TMC36S (Temperatur, analog, empfehlenswert für AVR mit 1,1V 
Referenz).
AVR Tiny interner Sensor (billiges Schätzeisen, +-1...2 Grad).

Dafür gibt es C-Sourcen oder ältere ASM-Sourcen.
Ein Modul hat Mega88 (war gerade da) mit FOST03 und HP03 (Luftdruck) 
drauf, da gibt es bisher nur ASM-Sourcen.

Anzeigemodul mit Display (T6963C), Mega16, AT45DB161D (16MBit Flash), 
RFM12 (nur als Empfänger) und RS232 mit FTDI auf USB dran sowie DCF77.
Daten werden als .csv abgelegt und können per X-Modem aus dem Flash 
geholt werden.

Außerdem noch U.Radigs Webserver mit einem RFM12 drauf, der die Daten im 
Web anzeigt. Da bin ich gerade dran, einen FTP-Client in Gang zu 
bekommen, dann bekommt der auch noch einen SPI-Flash drauf...

Ach ja, ein Modul mit RFM12 (als Empfänger), einem Mega8 und FTDI gibt 
es auch noch, der ist mehr als Debug-Modul gedacht.

Ich hänge die C-Sourcen hier mal ran, falls es hilft.
Eagle-Files mit den Schaltplänen gibt es auch und hier wurde an einer 
Universalleiterplatte für die Sensoren gebastelt.
Beitrag "Layout - Eagle-Künstler gesucht ;-)"
Da werde ich vermutlich welche machen lassen.

Vielleicht nehme ich mir auch die Zeit und lege den Kram etwas sortiert 
auf meine Homepage...

PS: alle Teile laufen hier so, nichts davon ist bisher wirklich 
komplett. ;-)

Gruß aus Berlin
Michael

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke.

Der Empfänger muß bei mir ein USB-Gerät (Verarbeitende Hardware ist ein 
Edimax-Router unter Linux) sein. Dann aber direkt auf dem AVR als HID.

Ich werde mir die Codes mal zu Gemüte führen.

Christian

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

das kennst Du schon?
http://www.carluccio.de/index.php/Edimax_Router

Würde den USB-Kram sparen wenn das zu Deinem Router passt, kenne die 
Teile nicht selbst, nur zufällig gefunden...

Gruß aus Berlin
Michael

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Seite kannte ich noch nicht.

Ich könnte den RFM01 auch direkt per GPIO ansprechen und bräuchte dann 
kein USB mehr. USB möchte ich vor allem der Bequemlichkeit halber 
einsetzen.
Den Empfänger kann ich danach an jeden x-beliebigen Rechner anschließen 
- passende Software vorausgesetzt.

Das ist aber dann auch nicht mehr weit von Deinem Debug-Modul weg. Nur 
halt mit USB-Client ohne FTDI.

Für die ersten Tests werde ich wahrscheinlich wirklich auf GPIO 
ausweichen; vielleicht bleibt es dann auch dabei. Aber ob ich für den 
AVR programmiere oder für den Edimax ist egal. Ich muß dann nur keine 
zusätzliche Hardware bauen. Mal sehen, vielleicht bleibe ich dann auch 
dabei.

Christian

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Christian Harf schrieb:
> Ich könnte den RFM01 auch direkt per GPIO ansprechen und bräuchte dann
> kein USB mehr. USB möchte ich vor allem der Bequemlichkeit halber
> einsetzen.
> Den Empfänger kann ich danach an jeden x-beliebigen Rechner anschließen
> - passende Software vorausgesetzt.
Aus ählichen Gründen mache ich ja auch meine Experimente...
Der Webserver sammelt die Daten ein, speichert sie zwischen und schickt 
sie per FTP alle 1-2 Stunden auf mein NAS.
Vielleicht auch auf den FTP meiner Homepage, dann baue ich http-get 
wieder rein und rufe dort ein php-Script auf, daß die Daten in die 
MySQL-Datenbank schreibt.

> Das ist aber dann auch nicht mehr weit von Deinem Debug-Modul weg. Nur
> halt mit USB-Client ohne FTDI.
Naja, das ganz Projekt ist meine erste Übung in C, sonst nur ASM...
Da werde ich mich im Moment nicht mit dem USB-Kram rumschlagen.

Mir reicht es im Moment schon, mich durch die Sourcen von U.Radig 
durchzuwühlen, das Kommentieren hat er leider nicht erfunden. ;-)
Ich hatte allerdings schonmal 2/3 eines TCP-Stacks incl. ENC28J60 
Treiber in ASM für den AVR fertig, das hilft schonmal ungemein. :-)

Gruß aus Berlin
Michael

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.