No se tú, pero lo prefiero que el código se vea así:
void setup()
{
pinMode(4, OUTPUT);
Serial.begin(9600);
digitalWrite(4, LOW);
}
void loop()
{
if (Serial.available())
PortaBalco(Serial.read());
}
void PortaBalco(char dato)
{
if (dato == '1')
digitalWrite( 4 , HIGH );
if (dato == '2')
digitalWrite( 4 , LOW );
}
E INCLUSO ENTRE ETIQUETAS GENERADAS POR </> ; COSA QUE DEBES HACER EDITANDO EL PRIMER POST!!!
Lo que no sé, es qué hacían ahí esos analogRead; la más acertada posible causa de no lograr cambiar el estado utilizado comunicación serial.