Creo que no te he entendido del todo... ¿tu quieres pasar un numero (del 1 al 10) por el puerto serie y que ponga en HIGH el pin digital que corresponde a ese numero? Eso no es binario, es simplemente asignar una salida al numero que le pasas.
Lo que explicas sería algo similar a esto
int vectorSalidas[] = {1,2,3,4,5,6,7,8,9,10}; //asignar numero de pin
void setup()
{
for (int i = 0; i < 10; i++) {
pinMode(vectorSalidas[i], OUTPUT);
}
Serial.begin(9600);
}
void loop(){
if (Serial.available() > 0)
{
int inByte = Serial.read();
switch (inByte)
{
case '1':
pines(1);
break;
case '2':
pines(2);
break;
case '3':
pines(3);
break;
case '4':
pines(4);
break;
case '5':
pines(5);
break;
case '6':
pines(6);
break;
case '7':
pines(7);
break;
case '8':
pines(8);
break;
case '9':
pines(9);
break;
default:
pines(10);
break;
}
}
}
void pines(int pin)
{
for (int i= 0; i<10; i++)
{
vectorSalidas[i] = LOW;
}
vectorSalidas[pin%10] = HIGH;
}