PRUEBA 74HC595 CON MATRIZ DE LEDS SIMULADO EN PROTEUS
Primero diseñamos el circuito en Proteus en este caso se uso Proteus 8
En la opcion codigo de fuente en Proteus colocamos este codigo:
/*-------------------------------------*/
/* PRUEBA 74HC595 MATRIZ DE LEDS |
/* AUTOR: FORTUNATO SERRANO LANCH |
/*-------------------------------------|*/
const int latch = 8; // Pin conectado al Pin 12 del 74HC595 //
const int Dato = 9; // Pin conectado al Pin 14 del 74HC595 //
const int clock = 10; // Pin conectado al Pin 11 del 74HC595 //
int i =0,ii=0,j=0,jj=0,pto=2,pto11=12; //Declaracion de variables de apoyo
const byte letraA[10] = { //con estos datos se forma la letra A de una matriz de 8X8
0b10000011,
0b00111001,
0b00111001,
0b00000001,
0b00000001,
0b00111001,
0b00111001,
0b00111001,
0b00000000,
0b00000000
};
void setup() {
Serial.begin(9600);
pinMode(latch, OUTPUT); //Declaramos los pines que vamos a usar como salida
pinMode(clock, OUTPUT);
pinMode(Dato, OUTPUT);
pinMode(0,OUTPUT); //Con estos pines estaremos controlando el orden de ensendido y apagado
pinMode(1,OUTPUT);//de los transistores
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(11,OUTPUT);
pinMode(12,OUTPUT);
for(ii=0;ii<=12;ii++){digitalWrite(ii,LOW);} //mandamos datos al registro para quitar la basura
digitalWrite(latch, LOW);
shiftOut(Dato, clock, MSBFIRST, 0);
digitalWrite(latch, HIGH);
}
void loop() {
for (i=0;i<8;i++) { //el for llega a 8 ya que solo tenemos una matriz de 8X8
digitalWrite(latch, LOW);//colocamos el latch en bajo para que no muestre informacion
hiftOut(Dato, clock, MSBFIRST,letraA[i]);//Esta funcion nos ahorra la forma de enviar los datos
digitalWrite(latch, HIGH);//Colocamos latch en alto para que nos muestre el dato enviado
if(pto11>=11){pto=8;
digitalWrite(pto11,HIGH);
digitalWrite(pto11,LOW);
pto11--; //Esta variable nos permite controlar el transistor que queremos que prenda
}
else{
digitalWrite(pto,HIGH);//En este espacio mandamos prender y apagar los
digitalWrite(pto,LOW);//transistores
}
pto--;
}
pto11=12;
}
UNA VEZ COMPILADO EL PROGRAMA CORREMOS LA SIMULACIÓN EL RESULTADO SE MUESTRA A CONTINUACIÓN:
PROXIMAMENTE CORRIMIENTO CON 4 MATRICES DE 8x8 PARA DESPLEGAR MENSAJES INFINITOS
HOLA BUENAS TARDES NOCHE DEPENDIENDO QUE VEA MI COMENTARIO LO QUE PASA ES QUE SEGUI LOS PASOS DEL CODIGO QUE ME DIJISTE Y NO ME SALE NO SE SI TU ME PUEDAS AYUDAR EN PASAR TU SIMULADOR Y EL CODIGO PARA PODERLO CORRER ESPERO Y ME AYUDE PARA SALVAR EL CUATRI JEJE
ResponderEliminar