Trying to rx/tx.

This commit is contained in:
Marvin Blum
2017-04-16 15:15:14 +02:00
parent f5769d48c9
commit cad7631894
3 changed files with 115 additions and 47 deletions

50
main.c
View File

@@ -6,6 +6,8 @@
#include "rf24/rf24.h"
#include "rf24/nRF24L01.h"
#define TX
unsigned char rx_addr[5] = {0xE7, 0xE7, 0xE7, 0xE7, 0xE7};
unsigned char tx_addr[5] = {0xD7, 0xD7, 0xD7, 0xD7, 0xD7};
@@ -24,17 +26,51 @@ void prepare(){
pins_init();
serial_init(9600);
_delay_ms(200);
pin_mode(A1, OUTPUT);
pin_mode(A2, OUTPUT);
rf24_init(7, 6, 5, 4, 3, 2);
_delay_ms(200);
rf24_config(0x02, 0xFF);
_delay_ms(200);
rf24_config(2, 4);
#ifdef TX
rf24_rx_addr(rx_addr);
_delay_ms(200);
rf24_tx_addr(tx_addr);
_delay_ms(200);
#else
rf24_rx_addr(tx_addr);
rf24_tx_addr(rx_addr);
#endif
_delay_ms(1000);
}
void loop(){
_delay_ms(20);
digital_write(A1, HIGH);
digital_write(A2, LOW);
#ifdef TX
unsigned char data[4] = {'t', 'e', 's', 't'};
rf24_send(data);
while(rf24_is_sending());
unsigned char status = rf24_status();
if(status&(1<<TX_DS)){
digital_write(A2, HIGH);
}
#else
while(!rf24_data_ready());
unsigned char data[4];
rf24_get_data(data);
char out[10];
sprintf(out, "%d", data[0]);
serial_write(out, 10);
digital_write(A2, HIGH);
#endif
digital_write(A1, LOW);
_delay_ms(1000);
}