/Designs/duckweed_collector/SW/duckweed_rx/duckweed_rx.pde
19,7 → 19,11
// receiving words with RF01
 
#include <RF01.h>
#include <Servo.h>
 
Servo servo_motor;
Servo servo_rudder;
 
void setup()
{
Serial.begin(9600);
26,6 → 30,9
Serial.println("\nRFM01 init");
delay(250);
 
servo_motor.attach(3);
servo_rudder.attach(4);
 
rf01_prepAll();
 
Serial.println("done");
34,12 → 41,33
void loop()
{
int n;
unsigned int Motor, Rudder, Check, Check2;
char* buf = (char*) _rx_buffer;
 
rf01_rxdata(_rx_buffer, 10);
buf[11]=0;
rf01_rxdata(_rx_buffer, 3);
Serial.print(buf);
Serial.print(' ');
Motor=_rx_buffer[0];
Motor-=(Motor>'9')?('a'-10):'0';
Serial.print(Motor, DEC); Serial.print(' ');
Rudder=_rx_buffer[1];
Rudder-=(Rudder>'9')?('a'-10):'0';
Serial.print(Rudder, DEC); Serial.print(' ');
Check=_rx_buffer[2];
Check-=(Check>'9')?('a'-10):'0';
Serial.print(Check, DEC); Serial.print(' ');
Check2=Motor+Rudder;
if (Check2>32) Check2-=32;
if (Check!=Check2)
{Serial.print(' Error');}
else
{
servo_motor.write(Motor);
servo_rudder.write(Rudder);
}
 
Serial.println(buf);
for(n=0;n<32;n++) {Serial.print(buf[n], HEX); Serial.print(' ');}
Serial.println();
}