PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : nIRQ Interrupt von RFM12



chouifi
23.04.2009, 16:30
Hallo Zusammen,

ich bin seit lange Zeit mit dem Modul RFM12 beschäftigt, ich kann schon senden und empfängen ohne Interrupt. d.h ich hole die Daten ohne Interrupt ab. jetzt möchte ich die Daten holen nur wenn sie wirklich angekommen sind.
Pin nIRQ von RFM12 ist mit Interrupt (INT0) von Mikrocontroller angeschloßen.

der Modul ist wie folgendes initialisiert:

void rf12_init(void)
{
RF_DDR=(1<<SDI)|(1<<SCK);
PORTD|=(1<<SCK);
RF_DDR &= ~(1<<SDO);
DDRD|=(1<<CS);
PORTD|=(1<<CS);


_delay_ms(500); // wait until POR done

rf12_trans(0xC0E0); // AVR CLK: 10MHz
rf12_trans(0x80D7); // Enable FIFO
rf12_trans(0xC2AB); // Data Filter: internal
rf12_trans(0xCA81); // Set FIFO mode
rf12_trans(0xE000); // disable wakeuptimer
rf12_trans(0xC800); // disable low duty cycle
rf12_trans(0xC4F7); // AFC settings: autotuning: -10kHz...+7,5kHz
rf12_trans(0x0000);


}




/****** Interrupt 0 **************/

ISR(INT0_vect){
receive();
}

void init_INT0(void){
EICRA = (1<<ISC01)|(1<<ISC00); //rising Edge
EIMSK=0x01;
}

Mein Problem ist, der sender sendet jede Sekunde ein Packet aber Interrupt löst nicht aus beim empfänger, es ist auf high. wie soll ich RFM12 konfigurieren damit Interrupt funktioniert.

ich bitte sie um Ratschläge

"""Wer hilft wird geholfen"""

BurningWave
30.04.2009, 17:54
wie soll ich RFM12 konfigurieren damit Interrupt funktioniert.

So viel ich weiß, muss man das Modul nicht speziell konfigurieren. Der Interrupt muss bei einer fallenden Flanke ausgelöst werden. Pullup aktiv?

Ich habe noch eine Frage an dich:
Wie hast du das Modul mit dem µC verbunden? Ich habe kleine Kupferdrähte an die Anschlüsse gelötet, aber das funktioniert nicht immer.

mfg