Forum: Mikrocontroller und Digitale Elektronik RFM12 Initialisierung


von Sebastian F. (snake080)


Angehängte Dateien:

Lesenswert?

Hallo,
ich hänge jetzt schon seit längerem dabei ein paar RFM12 dazu zu bewegen 
zu kommunizieren. Leider bisher ohne Erfolg.

Das Problem scheint die Anpassung der Sendeleistung zu sein. Ich habe 
ein LabView Programm zusammengestellt, um einfach und schnell zu testen, 
wo der Fehler liegen könnte. Aber egal welche Einstellung ich in der 
Sendeleistung/Empfang ich mache, ich bekomme keine Übertragung hin. Ich 
bekomme immer nur die Meldung, dass das Sendesignal zu stark ist bzw. 
der FIFO leer ist.
Ich habe auch schon alle möglichen Beispielinitialisierungen durch.

von dunno.. (Gast)


Lesenswert?

angesichts der komplexität des themas, (und deiner software?) werden die 
paar zeilen beschreibung wohl kaum reichen...

was hast du da überhaupt für hardware?
und was ist da für firmware drauf?

also, bei mir funktionierte die firmware 2.0.1 von jürgen eckert 
ziemlich gut. da sollte man sich die initialisierung ganz gut 
rauswursteln können:

http://www.mikrocontroller.net/articles/AVR_RFM12

von Sebastian F. (snake080)


Angehängte Dateien:

Lesenswert?

Danke für den Tipp. Ich dachte, ich hätte irgendwo einen generellen 
Fehler. Also mal die komplette Erklärung: :)

Ich möchte erst einmal einfach 2 Byte senden. Später dann einen 
Temperatursensor auslesen. Aber dazu muss erst einmal die eine Richtung 
laufen, ist ja klar :)

Die Hardware:
- 3x Mega8 mit RFM12 und über FT232RL an USB angeschlossen
  (Schaltung s.o. / alle auf internen 8MHz und 9600 baud)
- Hardware SPI
- Die Antennen sind 16,2cm lang
- Programmierer: HVProg

Die Software:
- AVR Studio 4.16
- HTerm
- LabView

Was funktioniert:
- RS232 Kommunikation
- Auslesen der Statusbytes
- Ändern der einzelnen Konfigurations-Settings (anhand der CLK-Frequenz)

Ich programmiere in Assembler. Die C-Programme habe ich durchgelesen und 
versucht mich daran zu halten. Bisher aber ohne Erfolg. Auch nach 
eigenen versuchen lt. den Datenblättern klappts nicht.

Die Initialisierung sieht u.a. so aus:
Sender:
0x80D7 ; //EL,EF,434band,12.0pF
0x8239 ; //!er,!ebb,ET,ES,EX,!eb,!ew,DC
0xA640 ; //frequency select
0xC647 ; //4.8kbps
0x94D0 ; //VDI,FAST,67kHz,0dBm,-103dBm
0xC2AC ; //AL,!ml,DIG,DQD4
0xCA81 ; //FIFO8,SYNC,!ff,DR
0xC483 ; //@PWR,NO RSTRIC,!st,!fi,OE,EN
0x9820 ; //!mp,45kHz,MAX OUT
0xE000 ; //NOT USED
0xC800 ; //NOT USED
0xC040 ; //1.66MHz,2.2V

Empfänger:
0x80D7 ; //EL,EF,434band,12.0pF
0x8299 ; //er,!ebb,ET,ES,EX,!eb,!ew,D
0xA640 ; //frequency select
0xC647 ; //4.8kbps
0x94D0 ; //VDI,FAST,67kHz,0dBm,-103dBm
0xC2AC ; //AL,!ml,DIG,DQD4
0xCA81 ; //FIFO8,SYNC,!ff,DR
0xC483 ; //@PWR,NO RSTRIC,!st,!fi,OE,EN
0x9820 ; //!mp,45kHz,MAX OUT
0xE000 ; //NOT USED
0xC800 ; //NOT USED
0xC040 ; //1.66MHz,2.2V

Das Hauptproblem, welches ich habe ist, dass der Status laufend sagt, 
ich hätte ein zu starkes Sendesignal. Selbst wenn ich an den 
Empfängerbits drehe und mal durch Glück kein zu starkes Signal habe, 
fehlt dann noch das DQD. Oder es kommt nach wie vor nix.
Aus der rfm12.inc werden eigentlich nur die Routinen aufgerufen. (dort 
hatte ich vorhin noch einen Fehler gefunden)

Vielen Dank für die Hilfe!

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.