Stap 5: El código de Arduino
Si deseas descargar el código haz clic aca
byte largo = 0; Tamaño de la palabra / Size van het woord
char letra; Almacena cada caracter /Stores elk brief
Tekenreeks palabra;
int caracterDepurado;
int leds [] = {4,5,6,7,8,9,10}; Matrix para los leds
Const int sensor = 2; sensor de posición
int estado = 0;
int _ [] = {0,0,0,0,0,0,0, 0,0,0,0,0,0,0, 0,0,0,0,0,0,0, 0,0,0,0,0,0,0, 0,0,0,0,0,0,0};
int een [] = {0,1,1,1,1,1,1, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 0,1,1,1,1,1,1};
int B [] = {1,1,1,1,1,1,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 0,1,1,0,1,1,0};
int C [] = {0,1,1,1,1,1,0, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1};
int D [] = {1,1,1,1,1,1,1, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 0,1,1,1,1,1,0};
int E [] = {1,1,1,1,1,1,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1};
int F [] = {1,1,1,1,1,1,1, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0};
int G [] = {1,1,1,1,1,1,1, 1,0,0,0,0,0,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 1,0,0,1,1,1,1};
int. H [] = {1,1,1,1,1,1,1, 0,0,0,1,0,0,0, 0,0,0,1,0,0,1, 0,0,0,1,0,0,0, 1,1,1,1,1,1,1};
int ik [] = {1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 1,1,1,1,1,1,1, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1};
Int J [] = {0,0,0,0,1,1,0, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1, 1,1,1,1,1,1,0};
int K [] = {1,1,1,1,1,1,1, 0,0,0,1,0,0,0, 0,0,1,0,1,0,0, 0,1,0,0,0,1,0, 1,0,0,0,0,0,1};
int L [] = {1,1,1,1,1,1,1, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1};
int M [] = {1,1,1,1,1,1,1, 0,1,0,0,0,0,0, 0,0,1,1,0,0,0, 0,1,0,0,0,0,0, 1,1,1,1,1,1,1};
int N [] = {1,1,1,1,1,1,1, 0,1,0,0,0,0,0, 0,0,1,0,0,0,0, 0,0,0,1,0,0,0, 1,1,1,1,1,1,1};
int O [] = {0,1,1,1,1,1,0, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 1,0,0,0,0,0,1, 0,1,1,1,1,1,0};
int P [] = {1,1,1,1,1,1,1, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 0,1,1,0,0,0,0};
int Q [] = {0,1,1,1,1,0,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 0,1,1,1,1,0,1};
int R [] = {1,1,1,1,1,1,1, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 1,0,0,1,0,0,0, 0,1,1,0,1,1,1};
int S [] = {0,1,1,0,0,0,0, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 1,0,0,1,0,0,1, 0,0,0,0,1,1,0};
int T [] = {1,0,0,0,0,0,0, 1,0,0,0,0,0,0, 1,1,1,1,1,1,1, 1,0,0,0,0,0,0, 1,0,0,0,0,0,0};
U int [] = {1,1,1,1,1,1,0, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1, 0,0,0,0,0,0,1, 1,1,1,1,1,1,0};
int V [] = {1,1,1,1,1,0,0, 0,0,0,0,0,1,0, 0,0,0,0,0,0,1, 0,0,0,0,0,1,0, 1,1,1,1,1,0,0};
int W [] = {1,1,1,1,1,1,1, 0,0,0,0,0,1,0, 0,0,0,0,1,0,0, 0,0,0,0,0,1,0, 1,1,1,1,1,1,1};
int X[] = {1,0,0,0,0,0,1, 0,1,0,0,0,1,0, 0,0,1,1,1,0,0, 0,1,0,0,0,1,0, 1,0,0,0,0,0,1};
int Y [] = {1,1,1,0,0,0,0, 0,0,0,1,0,0,0, 0,0,0,0,1,1,1, 0,0,0,1,0,0,0, 1,1,1,0,0,0,0};
int Z [] = {1,0,0,0,0,1,1, 1,0,0,0,1,0,1, 1,0,0,1,0,0,1, 1,0,1,0,0,0,1, 1,1,0,0,0,0,1};
int espaciado;
int retardo;
VOID Setup {}
Configuro los puertos de entrada y salida / instellen van de poorten van de LED's op OUTPUT en sensor INPUT pinMode (4, OUTPUT);
pinMode (5, OUTPUT);
pinMode (6, OUTPUT);
pinMode (7, OUTPUT);
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
pinMode (10, OUTPUT);
pinMode(sensor,INPUT);
Serial.begin(9600);
Serial.Flush();
Espacio entre cada letra /Space tussen elke letter
espaciado = 9;
definiëren van de tijd-stippen verschijnen (ms)
retardo = 3;
}
Para limpiar la columna / voor het reinigen van de kolom ***
VOID borrar()
{
voor (int z = 0; z < 7; z ++)
{
digitalWrite(z+4,LOW);
}
}
//*******************************************
VOID imprimir (int caracter[]) {int y;
Imprime la primera columna/wordt de eerste kolom afgedrukt,
voor (y = 0; y < 7; y ++)
{
digitalWrite (y + 4, caracter[y]);
}
delay(retardo);
borrar();
Imprime la segunda columna/wordt de tweede kolom afgedrukt
voor (y = 0; y < 7; y ++)
{
digitalWrite (y + 4, caracter[y+7]);
}
delay(retardo);
borrar();
Imprime la tercera columna/wordt de derde kolom afgedrukt
voor (y = 0; y < 7; y ++)
{
digitalWrite (y + 4, caracter[y+14]);
}
delay(retardo);
borrar();
Imprime la cuarta columna/wordt de vierde kolom afgedrukt
voor (y = 0; y < 7; y ++)
{
digitalWrite (y + 4, caracter[y+21]);
} delay(retardo);
borrar();
Imprime la quinta columna/wordt afgedrukt in de vijfde kolom
voor (y = 0; y < 7; y ++)
{
digitalWrite (y + 4, caracter[y+28]);
}
delay(retardo);
borrar();
de ruimte tussen de letters voor afdrukken (y = 0; y < 7; y ++)
{
digitalWrite (y + 4, 0);
}
delay(espaciado);
}
//****************************************************************
void loop
{
Als (Serial.available())
{
Serial.Flush(); Limpio el buffer/Clean de buffer
palabra = "";
terwijl (Serial.available() > 0)
{
delay(5);
letra = Serial.read(); Lee cada caracter de la palabra //Reads elke letter van het woord
palabra = palabra + letra;
} / / fin del terwijl
} / / fin del als
Estado = digitalRead(sensor); verifico si ya pasó por el sensor de posición / controleren of al cross de positie sensor
Largo = palabra.length(); Cálculo la palabra de la longitud / controleert de lengte van het woord
if(Estado==High) //si ya pasó / / als net heeft gekruist
{
voor (int x = 0; x < largo; x ++)
{char caracter = palabra.charAt(x); //Obtengo cada letra y la almacendo en la variabele / krijgt elke letter en opgeslagen in de variabele caracterDepurado=(caracter-'0'); als (caracterDepurado > 0) //Esto es para evitar que se envien caracteres geen deseados
{
schakelaar (caracter)
{
Case "A":
imprimir(A);
breken;
Case "B":
imprimir(B);
breken;
Case "C":
imprimir(C);
breken;
geval zou ':
imprimir(D);
breken;
Case "E":
imprimir(E);
breken;
Case "F":
imprimir(F);
breken;
Case 'G':
imprimir(G);
breken;
Case "H":
imprimir(H);
breken;
Case 'ik':
imprimir(I);
breken;
Case "J":
imprimir(J);
breken;
Case 'K':
imprimir(K);
breken;
geval 'L':
imprimir(L);
breken;
geval ben ':
imprimir(M);
breken;
geval 'N':
imprimir(N);
breken;
geval ' o ':
imprimir(O);
breken;
letter 'P':
imprimir(P);
breken;
Case "Q":
imprimir(Q);
breken;
Case 'R':
imprimir(R);
breken;
geval van ':
imprimir (S);
breken;
'T geval ':
imprimir(T);
breken;
Case 'U':
imprimir(U);
breken;
Case "V":
imprimir(V);
breken;
Case 'W':
imprimir(W);
breken;
Case 'X':
imprimir(X);
breken;
Case 'Y':
imprimir(Y);
breken;
geval ' ':
imprimir(_);
breken;
} //fin del schakelaar
} //fin del als
} //fin del voor
} //fin del als estado
} / / fin del lus