Ayuda con comunicacion serial???

buen dia a todos

Soy nuevo en esto de arduino y pues bueno estoy haciendo un programa para un motor pap y tengo un par de condiciones, si llega un 1 a traves del puerto serial, el motor gira a la derecha y si llega un 2 gira a la izquierda, bueno el programa funciona bien cuando mando los datos desde el monitor del ide, pero al intentar comunicarme mediante una hiperterminal al enviarle los datos, no hace nada, pero al cerrar la terminal el arduino trabaja con los datos q le doy. alguien sabe q otro dato necesito para q actue de forma inmediata ???

cualquier ayuda les agradeceria

Has comprobado que la configuración del hiperterminal sea la correcta? El control de flujo debe estar en off/ninguno.

Sino puede ser cosa de los caracteres de retorno de carro y/o fin de linea.

Con la información que das...es lo que se me ocurre. ¿Puedes poner el código para comprobar que no está hay el fallo?

bueno jorgepl no entendi lo del retorno de carro y fin de linea, la configuracion si esta bien, un profe me enseño el hiperterminal y ya configuro

aqui te dejo el programa q tengo por el momento en el arduino

// programa para los motores pap ----------ejemplo base

int motorPin1 = 8; // PIN-es del Motor int motorPin2 = 9; int motorPin3 = 11; int motorPin4 = 12; int delayTime = 500; // Delay que determina la velocidad de giro

void setup() {

Serial.begin(9600); //velocidad de transferencia de datos

pinMode(motorPin1, OUTPUT); // Configuración de los PIN-es como salida digital pinMode(motorPin2, OUTPUT); pinMode(motorPin3, OUTPUT); pinMode(motorPin4, OUTPUT); } void loop()

{ // inicio de loop

int val = Serial.read (); // variable enla q se guarda lo q entra desde el puerto .

if (val == '1')

{ //inicio de 1er giro

digitalWrite(motorPin1, HIGH); // Los pines se activan en secuencia digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, HIGH); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, HIGH); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, HIGH); delay(delayTime);

} //fin de if

else if (val == '2')

{ //inicio de segundo if enviar 2 al puerto

digitalWrite(motorPin1, LOW); // Los pines se activan en secuencia digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, HIGH); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, HIGH); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, HIGH); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime);

} //fin del segundo if

else{

digitalWrite(motorPin1, LOW); // Los pines se desactivan digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW);

}//fin de else

} //fin de loop

jeje bueno la verdad es q me estube fijando y veo q si tenia mal configurado eso del control de flujo jeje .... bueno, eso soluciono mi problema muchas gracias por tu ayuda, esto me ayuda bastante jejeje

emmm, abusando de tu ayuda, has trabajado con java y la libreria rxtx, tambien para comunicacion con arduino????