mirror of
https://github.com/Kugelschieber/arduino-c.git
synced 2026-01-18 02:50:26 +00:00
Working! But only 4 bytes are propperly transferred.
This commit is contained in:
51
main.c
51
main.c
@@ -6,13 +6,15 @@
|
||||
#include "rf24/rf24.h"
|
||||
#include "rf24/nRF24L01.h"
|
||||
|
||||
#define TX
|
||||
//#define TX
|
||||
|
||||
unsigned char rx_addr[5] = {0xE7, 0xE7, 0xE7, 0xE7, 0xE7};
|
||||
unsigned char tx_addr[5] = {0xD7, 0xD7, 0xD7, 0xD7, 0xD7};
|
||||
|
||||
void prepare();
|
||||
void loop();
|
||||
void tx();
|
||||
void rx();
|
||||
|
||||
int main(){
|
||||
prepare();
|
||||
@@ -30,7 +32,7 @@ void prepare(){
|
||||
pin_mode(A2, OUTPUT); // red
|
||||
|
||||
rf24_init(7, 6, 5, 4, 3, 2);
|
||||
rf24_config(2, 4);
|
||||
rf24_config(2, 13);
|
||||
|
||||
#ifdef TX
|
||||
rf24_rx_addr(rx_addr);
|
||||
@@ -39,42 +41,49 @@ void prepare(){
|
||||
rf24_rx_addr(tx_addr);
|
||||
rf24_tx_addr(rx_addr);
|
||||
#endif
|
||||
|
||||
digital_write(A1, HIGH);
|
||||
_delay_ms(300);
|
||||
digital_write(A1, LOW);
|
||||
}
|
||||
|
||||
void loop(){
|
||||
digital_write(A2, LOW);
|
||||
_delay_ms(1000);
|
||||
digital_write(A1, LOW);
|
||||
digital_write(A2, HIGH);
|
||||
_delay_ms(1000);
|
||||
|
||||
#ifdef TX
|
||||
unsigned char data[4] = {1, 2, 3, 4};
|
||||
tx();
|
||||
#else
|
||||
rx();
|
||||
#endif
|
||||
}
|
||||
|
||||
void tx(){
|
||||
_delay_ms(10);
|
||||
digital_write(A1, LOW);
|
||||
digital_write(A2, LOW);
|
||||
unsigned char data[13] = "World!";
|
||||
|
||||
rf24_send(data);
|
||||
while(rf24_is_sending()){
|
||||
_delay_ms(20);
|
||||
}
|
||||
/*unsigned char status = rf24_status();
|
||||
while(rf24_is_sending());
|
||||
unsigned char status = rf24_status();
|
||||
|
||||
if(status&(1<<TX_DS)){
|
||||
digital_write(A1, HIGH);
|
||||
}
|
||||
else{
|
||||
digital_write(A2, HIGH);
|
||||
}*/
|
||||
}
|
||||
}
|
||||
|
||||
void rx(){
|
||||
digital_write(A1, LOW);
|
||||
digital_write(A2, LOW);
|
||||
|
||||
digital_write(A1, HIGH);
|
||||
#else
|
||||
if(rf24_data_ready()){
|
||||
unsigned char data[4] = {0, 0, 0, 0};
|
||||
unsigned char data[13];
|
||||
|
||||
rf24_get_data(data);
|
||||
digital_write(A1, HIGH);
|
||||
serial_write((char*)data, 13);
|
||||
|
||||
char out[20];
|
||||
sprintf(out, "%d %d %d %d", data[0], data[1], data[2], data[3]);
|
||||
serial_write(out, 20);
|
||||
_delay_ms(1000);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user