mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RF12 stand_by_modus


Autor: thai_boxer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe ein Problem mit meinen RF12 Modul. Habe eine Schaltung aus einen 
Atmega32 und dem Modul. Um Strom zu sparen versetze ich zuerst das RF12 
Modul in den stand_by_mode und danach den uc. in den sleep_mode.
Leider lässt sich nur der uc runterfahren aber nicht das SendeModul.
Habe einen Amperemeter angeschlossen, im Normalbetrieb verbrauche ich um 
die 18mA. Versetze ich den uc in den sleep_mode so sinkt der Verbrauch 
auf 12mA. Leider lässt sich das Modul nicht in den stand_by_mode 
schalten.

Nutze hierfür die Funktion,
void rf12_sleep(void)
{
  rf12_trans(0x8201);//power managment, shut down    
  _delay_ms(100);  //1/3686400=2,71...-> 100 steps so shut down RF12 

}

kennt eventuell jemand das Problem?

Gruß

Autor: RFunker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kennst Du den Artikel 
http://www.mikrocontroller.net/articles/RFM12#Powe... ?
Du scheinst nur die Taktausgabe abzuschalten.

Autor: thai_boxer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, laut Datenblatt, wird alles auf 0 gesetzt, d.h. ausgeschaltet 
Sender, Empfänger,..., sobald ich den Befehl "8201" an das Modul 
schicke.
Sollte eigentlich stimmen.

Autor: Christoph Hoell (webturtle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht hilft dir das:
Ich hatte ähnliche Probleme.

Dann bin ich hin und hab das RFM12 über einen Port des µC mit Strom 
versorgt.
Ich schalte es also über den Port ein, initialisiere es, sende meine 
Daten und schalte es wieder aus.

Hierbei ist mir dann aufgefallen dass nach dem ausschalten ein weit 
höherer Strom gezogen wird.

Lösen konnte ich es nur indem ich auch die SPI Pins alle auf Ausgang 
setzte und abschaltete.

Damit geht es aber.

Chris

Autor: thai_boxer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber, wenn ich das Modul ganz abschalte, kann ich nicht 2x die Sekunde 
aufwachen und einige bytes versenden. Dann brauche ich viel zu lange, um 
das Modul zu initialisieren.

Diese Zeit ist a) zu lang und b) verbraucht dies damit zu viel Strom

Mein Ziel ist es, das Modul wirklich in den Standby mode zu versetzten. 
Evtl. hilft folgendes?!?


...
rfm12_standby();
_delay_ms(5)
rfm12_standby();
...

Danke für weitere Hilfe!

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.