Pages: [1]   Go Down
Author Topic: Control de pulsos con Pot. y Encendido leds con Serial  (Read 312 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola
Necesito ayuda con este programa ya que si me lee el serial pero el potenciometro como que se "pierde" y no se que esta mal

int sensorPin = 0; int ledPinx = 6; int ledPiny = 5; int ledmotor = 13; int sensorValue = 0;
void setup() {
  Serial.begin(9600); pinMode(ledPinx, OUTPUT); pinMode(ledPiny, OUTPUT); pinMode(ledmotor, OUTPUT);
}
void loop() {
  sensorValue = analogRead(sensorPin);
  digitalWrite(ledmotor, HIGH); delay(sensorValue);         
  digitalWrite(ledmotor, LOW); delay(sensorValue);
 
  while (Serial.available() == 0); int val = Serial.read() - '0';
  if (val == 1) {
    Serial.println(" X on"); digitalWrite(ledPinx, HIGH);
}
else if (val == 0)
{digitalWrite(ledPinx, LOW);
    Serial.println(" X off "); digitalWrite(ledPinx, LOW);
}
if (val == 2) {               
digitalWrite(ledPiny, sensorValue);
    Serial.println(" Y on"); digitalWrite(ledPiny, HIGH);
}
else if (val == 3)
{digitalWrite(ledPiny, LOW);
    Serial.println(" Y off"); digitalWrite(ledPiny, LOW);
}
}

Gracias
Logged

Offline Offline
God Member
*****
Karma: 7
Posts: 635
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Has escrito:

  while (Serial.available() == 0);

lo que significa que mientras no haya nada en el buffer del puerto serie el programa está bloqueado dentro de esa instrucción. Para leer el puerto serie en general hay que poner un condicional, si hay algo en el puerto serie lo leo y si no sigo con mi programa.
Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


Gracias.
Logged

Pages: [1]   Go Up
Jump to: