ARM + RFM12, Empfange nix

Gast #982007
Lesenswert?

Hallo leute,

ich versuche schon seit geraumer Zeit mit dem ARM LPC2129 und den 
Funkmodulen RF12 von Pollin eine Funkstrecke aufzubauen.
Leider klappt es nicht so wie ich es mir vorstelle.

Senden Funktioniert laut Spektrum Analyzer sehr gut und auf der 
Empfänger seite tut sich auch was an dem nIRQ Pin, dieser geht auf LOW.
Laut Datenblatt müsste dann ja der FIFO bereit seit und der RF12 
Empfangen können.
Wenn ich den SDO Pin mit dem Oszi ausmesse sehe ich nur ein kurzes 
Wackeln des Statusregisters und sonst nur einen geraden Strich.
Also empfange ich nur nullen, oder??

Als Init Routine hab ich mich an das Datenblatt von HopeRF gehalten und 
den Beispielcode vom Benedikt K.
Das einzigste was ich verändert habe, is die Bandbreite von 134kHz auf 
400kHz angehoben.

Hier meine Init Routine des Emfpängers:

  Spi_Send(0x80D7);  //EL,EF,12.0pF
  Spi_Send(0x82D9);  //Enable RX
  Spi_Send(0xA680);  //A140=430.8MHz
  Spi_Send(0xC647);  //4,8kbps
  Spi_Send(0x9420);  //VDI,FAST,400kHz,0dBm,-103dBm
  Spi_Send(0xC2AC);  //AL,!ml,DIG,DQD4
  Spi_Send(0xCA81);  //FIFO8,SYNC,!ff,DR
  Spi_Send(0xC4F7);  //@PWR,autotune: -10kHz...+7,5kHz,!st,!fi,OE,EN
  Spi_Send(0x9850);  //!mp,9850=90kHz,MAX OUT
  Spi_Send(0xE000);  //NOT USE
  Spi_Send(0xC800);  //NOT USE
  Spi_Send(0xC000);  //kein WDT, kein Batteriewächter

Und hier die Empfangsroutine im main():

Funk_RX_Init();

Spi_Send(0xCA81);   //Init FIFO
Spi_Send(0xCA83);  //Enable FIFO
Spi_Send(0x0000);  //Read Status Register

while(1)
{
  WAIT_nIRQ_LOW;      //wait until nIRQ is low -> incoming data

  Spi_Send(0x0000);  //Read Status Register

  delay(1000); //Delay 1000 Takte

  for(i=0;i<16;i++)
  {
    Spi_Send(0xB800);  //Read FIFO
    delay(100);
  }

    Spi_Send(0xCA81);  //Disable FIFO
}

Ich hoffe ihr könnt mir ein paar Tips geben was ich noch austesten kann.
Bin langsam mit meinem Latein am Ende

MFG
Markus
Gast #983198
Lesenswert?

Hallo

@Gast: Danke, hat aber noch nich den erwünschten erfolg gebracht :-(

Desweiteren is mir noch aufgefallen das ich delay-zeiten eingesetzt habe 
die nich gerade sehr geschickt gewählt waren.
Hab diese komplett rausgenommen, aber auch keine verbesserung.

Bin für jeden Vorschlag offen!

MFG
Markus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren