Ayuda con el controlador de servo y ph con rf

Al quien me puede ayudar con este código ya que ni el servo ni los PH no funciona

Emisor

#include <VirtualWire.h>

const int dataPin = 9;

void setup()
{
    Serial.begin(9600);    
    vw_setup(2000);
    vw_set_tx_pin(dataPin);
}

void loop()
{
    while (Serial.available() > 0) 
    {
      char data[1];
      data[0] = Serial.read();
      vw_send((uint8_t*)data,sizeof(data));
      vw_wait_tx();         
    }
    delay(200);
}

receptor 

#include <VirtualWire.h>
#include <ServoTimer2.h>

const int dataPin = 9;
const int servoPin = 10;
const int motorAPin1 = 2;
const int motorAPin2 = 3;
const int motorBPin = 4;
const int motorCPin = 5;

ServoTimer2 servo;

void setup()
{
    vw_setup(2000);
    vw_set_rx_pin(dataPin);
    vw_rx_start();

    pinMode(motorAPin1, OUTPUT);
    pinMode(motorAPin2, OUTPUT);
    pinMode(motorBPin, OUTPUT);
    pinMode(motorCPin, OUTPUT);

    servo.attach(servoPin);
    servo.write(90);
}

void loop()
{
    uint8_t data[4];
    uint8_t dataLength = 4;

    if (vw_get_message(data, &dataLength))
    {
        char servoPosition = (char)data[0];
        char motorASpeed = (char)data[1];
        char motorBState = (char)data[2];
        char motorCState = (char)data[3];

        // Control the servo position
        if (servoPosition == 'a')
        {
            servo.write(0);
        }
        else if (servoPosition == 'b')
        {
            servo.write(90);
        }
        else if (servoPosition == 'c')
        {
            servo.write(180);
        }

        // Control Motor A speed
        if (motorASpeed == '0')
        {
            analogWrite(motorAPin1, 0);
            analogWrite(motorAPin2, 0);
        }
        else if (motorASpeed == '5')
        {
            analogWrite(motorAPin1, 128);
            analogWrite(motorAPin2, 128);
        }
        else if (motorASpeed == '1')
        {
            analogWrite(motorAPin1, 255);
            analogWrite(motorAPin2, 255);
        }

        // Control Motor B state (ON/OFF)
        if (motorBState == '1')
        {
            digitalWrite(motorBPin, HIGH);
        }
        else if (motorBState == '0')
        {
            digitalWrite(motorBPin, LOW);
        }

        // Control Motor C state (ON/OFF)
        if (motorCState == '1')
        {
            digitalWrite(motorCPin, HIGH);
        }
        else if (motorCState == '0')
        {
            digitalWrite(motorCPin, LOW);
        }
    }
}

la idea  del codigo era que con la ventana de monitor serial se enviaría los comando del emisor al receptor para que se ejecute los movimientos del servo y de los puente h pero nose que pasa que ni el servo ni los puentes h no ejecutan sus funciones

He trasladado su tema de una categoría de idioma inglés del foro a la categoría International > Español @kira200.

En adelante por favor usar la categoría apropiada a la lengua en que queráis publicar. Esto es importante para el uso responsable del foro, y esta explicado aquí la guía "How to get the best out of this forum".
Este guía contiene mucha información útil. Por favor leer.

De antemano, muchas gracias por cooperar.

Moderador:
Por favor, lee las Normas del foro
Edita tu título, usa uno que no tenga justamente lo que se considera un título inútil, "Ayuda con.."
Ver en las normas (punto 5) como poner títulos adecuados.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.