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(); |
} |