A continuación se muestra como controlar un par de display de 7 segmentos con Arduino. Arduino lee números del 0 al 99 desde el monitor seria y los proyecta en los dos display.
byte numero[10][8] =
{
{ 0, 0, 0, 0, 0, 0, 1, 1 }, // 0
{ 1, 1, 0, 0, 1, 1, 1, 1 }, // 1
{ 0, 0, 1, 0, 0, 1, 0, 1 }, // 2
{ 1, 0, 0, 0, 0, 1, 0, 1 }, // 3
{ 1, 1, 0, 0, 1, 0, 0, 1 }, // 4
{ 1, 0, 0, 1, 0, 0, 0, 1 }, // 5
{ 0, 0, 0, 1, 0, 0, 0, 1 }, // 6
{ 1, 1, 0, 0, 0, 1, 1, 1 }, // 7
{ 0, 0, 0, 0, 0, 0, 0, 1 }, // 8
{ 1, 0, 0, 0, 0, 0, 0, 1 } // 9
};
int digito;
int decena;
int unidad;
void setup() {
// Iniciamos el monitor serie
Serial.begin(9600);
// Ponemos los pines de los segmentos en modo OUTPUT (salida)
for (int i = 2; i < 10; i++)
{
pinMode(i, OUTPUT);
}
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);
}
void loop() {
if(Serial.available()>0){
digito = Serial.parseInt();
Serial.print("Recibido: ");
Serial.println(digito);
}
//Serial.println(digito);
digitalWrite(11,HIGH);
digitalWrite(10,LOW);
decena =digito/10;
//Serial.println(decena);
for (int e = 0; e < 8; e++){
digitalWrite(e + 2, numero[decena][e]);
}
delay(10);
digitalWrite(11,LOW);
digitalWrite(10,HIGH);
unidad = digito % 10;
//Serial.println(unidad);
for (int e = 0; e < 8; e++){
digitalWrite(e + 2, numero[unidad][e]);
}
delay(10);
digitalWrite(11,LOW);
digitalWrite(10,LOW);
}
Si necesitas asesoría en proyectos de Arduino, Raspberry, electrónica, estamos localizados en la ciudad de Quito Ecuador. Somos Microlab.
Dejar una contestacion