int main(void) { //Initialisieren der Komponenten led_init(); //LED Initialisieren td_init(); //Zeitbasis initialisieren script_init(); //Sriptengine initialisieren //Funkmodul initialisieren rf12_init(); rf12_setfreq(RF12FREQ(433.25)); // 433,92MHz rf12_setbandwidth(4, 1, 4); // 200kHz Bandbreite, -6dB Verstärkung, DRSSI threshold: -79dBm rf12_setbaud(19200); // 19200 baud rf12_setpower(0, 6); // 1mW Ausgangangsleistung, 120kHz Frequenzshift sei(); //Interrupts aktivieren uint8_t buf_temp[10]; //Mainloop while(23) { //Zustandsmaschinen aktualisieren script_tick(); rgb_fade_tick(); //Prüfen ob ein neues Datenframe empfangen wurde. if (rf12_getStatus() == rf12_data_status_ready) { rf12_getData(buf_temp); //Daten abholen rf_data_reset(); //Empfangspuffer zurücksetzen command(buf_temp); //Empfangenes Kommando ausführen } } }
int main(void) { DDRD=0; sei(); UART_Init(); rf12_init(); // ein paar Register setzen (z.B. CLK auf 10MHz) UART_Tx_Str("Init\n", 5); rf12_setfreq(RF12FREQ(433.92)); // Sende/Empfangsfrequenz auf 433,92MHz einstellen rf12_setbandwidth(RxBW200, LNA_6, RSSI_79); // 200kHz Bandbreite, -6dB Verstärkung, DRSSI threshold: -79dBm rf12_setbaud(19200); // 19200 baud rf12_setpower(PWRdB_0, TxBW120); // 1mW Ausgangangsleistung, 120kHz Frequenzshift while(1) { unsigned char i; UART_Tx_Str("Pkg\n", 4); send(); for (i=0; i<100; i++) _delay_ms(10); } }
int main(void) { sei(); UART_Init(); rf12_init(); // ein paar Register setzen (z.B. CLK auf 10MHz) UART_Tx_Str("Init\n", 5); rf12_setfreq(RF12FREQ(433.92)); // Sende/Empfangsfrequenz auf 433,92MHz einstellen rf12_setbandwidth(4, 1, 4); // 200kHz Bandbreite, -6dB Verstärkung, DRSSI threshold: -79dBm rf12_setbaud(19200); // 19200 baud rf12_setpower(0, 6); // 1mW Ausgangangsleistung, 120kHz Frequenzshift for (;;) { unsigned char ret; unsigned char test[50]; /* none blocking sample */ unsigned char test2[50]; UART_Tx_Str(test, sprintf(test, "Start val: %u\n", rf12_rxstart())); ret = 255; //not completed yet while(ret == 255) { ret = rf12_rxfinish(test2); //try if transfer completed } UART_Tx_Str(test, sprintf(test, "ret: %u\n", ret)); if(ret != 0 && ret != 254) //no CRC error && no old str UART_Tx_Str(test2, ret); /*blocking sample */ /* ret = rf12_rxdata(test); if(ret) UART_Tx_Str(test,ret); else UART_Tx_Str("CRC Err\n", 8); */ } }