Autor Tema: matriz de led 8x40 con registro 74hc164 en ccs  (Leído 5574 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jukaceledon

  • PIC10
  • *
  • Mensajes: 15
matriz de led 8x40 con registro 74hc164 en ccs
« en: 23 de Julio de 2014, 03:11:59 »
Hola estimados por mis estudios debo hacer una matriz de led 8x40 con registros 74hc164 donde el texto debe desplazarse de izq a derecha, con una memoria donde debo guardar el texto e desplegar y la verdad que no se por donde empezar, agradecer de su buena voluntad para ayudarme y orientarme como lo puedp hacer

adjunto proteus de lo que se debe hacer

Juan Carlos

Desconectado jukaceledon

  • PIC10
  • *
  • Mensajes: 15
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #1 en: 24 de Julio de 2014, 19:25:38 »
Hola estimados por mis estudios debo hacer una matriz de led 8x40 con registros 74hc164 donde el texto debe desplazarse de izq a derecha, con una memoria donde debo guardar el texto e desplegar y la verdad que no se por donde empezar, agradecer de su buena voluntad para ayudarme y orientarme como lo puedp hacer

adjunto proteus de lo que se debe hacer

Juan Carlos

Adjunto lo que he hecho pero no me fimciona, me pueden ayudar


Como primera etapa se debe hacer solo las letras J. I y M, se deben desplazarse de derecha a izq. en forma indefinida

#include <16f628.h>
#fuses XT,NOWDT,NOPROTECT,NOPUT,NOBROWNOUT
#USE DELAY(clock=4MHZ)
#define data PIN_A3
#define clock PIN_A2
#byte port_b=0X06

void escribir(int *letra,int time);//variable
void cargar_dato(int dato);//variable
void muestra_fila(int fila);//variable
void desplazar_(int *letra,int velocidad);//Variable
void desplazar_izq (int *m_actual,int *m_siguiente,int refresh); //variables globales
int *m_actual,*m_anterior,desplazamiento,matriz_mostra r[8];
int *p,*p2,col,fila;


int M[8]={ 0b11000011, //letras a utilizar
0b11100111,
0b11111111,
0b11011011,
0b11000011,
0b11000011,
0b11000011,
0b11000011};

int J[8]={ 0b11111111,
0b11111111,
0b00011000,
0b00011000,
0b00011000,
0b00011000,
0b11111000,
0b11110000};

int I[8]={ 0b00111100,
0b00011000,
0b00011000,
0b00011000,
0b00011000,
0b00011000,
0b00011000,
0b00111100};



void main(){

SET_TRIS_B(0x00);
output_low(data);
output_low(clock);
port_b=0x00;


while (true){
p2=J;
desplazar_izq(p,p2,10);
p=p2;
p2=I;
desplazar_izq(p,p2,10);
p=p2;
p2=M;
desplazar_izq(p,p2,10);
}
}

void escribir(int *letra,int time){
while (time>0){
for (fila=0;fila<8;fila++){
cargar_dato(letra[fila]);
muestra_fila(fila);
}
time--;
}
}

void muestra_fila(int fila){
bit_set(port_b,fila);
delay_us(400);
bit_clear(port_b,fila);
}


void cargar_dato(int dato){
for(col=0;col<8;col++){
output_bit(data,(dato & 0x1));
dato=dato<<1;
output_low(clock);
output_high(clock);
}
}

void desplazar_izq (int *m_actual,int *m_siguiente,int refresh){
escribir(m_actual,20);
for (fila=0;fila<8;fila++){ //escribo en la matriz lo que necesito escribir
matriz_mostrar[fila]=m_actual[fila]; //asi solo modifico la matriz a desplazar.
}
desplazamiento=8;
while (desplazamiento!=0){

for (fila=0;fila<8;fila++){ //modifico la matriz a mostrar
matriz_mostrar[fila]=(matriz_mostrar[fila]<<1)+(bit_test(m_siguiente,desplazamiento)); //
}
escribir(p,refresh);
desplazamiento--;
}

}

Si consideran que esta muy malo, agradecere modificar

JuKa






Desconectado jukaceledon

  • PIC10
  • *
  • Mensajes: 15

Desconectado RALF2

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2062
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #4 en: 25 de Julio de 2014, 00:03:34 »
Citar
Ninguno de los dos link me funciona, me podria ayudar?????

Amigo a mi me funcionan todos los links que te coloco  Diego E.
Los probe con el mozilla firefox  :mrgreen:

Desconectado AleSergi

  • PIC16
  • ***
  • Mensajes: 214
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #5 en: 25 de Julio de 2014, 10:50:37 »
... los enlaces si funkan!
consulta, cuantos miliAmper son capaces de manejar los 74hc164?
podran controlar directamente los led en cuestión?
pasa que no sé interpretar la hoja de datos, no sé si lo está diciendo por pin o por el chip entero...

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #6 en: 27 de Julio de 2014, 08:56:09 »
Hola.

Recuerdo haber conetado los LED directo al 74HC y no me dio buen resultado, por tal motivo utilice transistores para mejorar sustancialmente el brillo. Este VIDEO ya es algo viejo :P pero muestra el brillo obtenido.

Tambien puedes usar, en lugar de los transistores, un ULN2803A.

Saludos


El papel lo aguanta todo

Desconectado allennet

  • PIC16
  • ***
  • Mensajes: 112
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #7 en: 27 de Julio de 2014, 13:13:19 »
revisando la hoja de datos
en alto 25ma
m74ls164
m74hc164

en alto 0.4ma
hd74ls164
hd74hc164
sn74ls164
sn74hc164

salida en bajo 25ma
m74ls164
m74hc164

salida en bajo 8ma
sn74ls164
sn74hc164
hd74ls164
hd74hc164

conclusion comprar el m74hc164b1 marca st
« Última modificación: 28 de Julio de 2014, 14:20:09 por allennet »
"La curiosidad mato al gato, pero murio sabiendo"

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #8 en: 27 de Julio de 2014, 14:28:41 »
Hola, como lo dice Miguel, a los 74164 hay que ponerle amplificador de corriente, en mi caso yo puse ULN2803.

Saludos.

Desconectado AleSergi

  • PIC16
  • ***
  • Mensajes: 214
Re: matriz de led 8x40 con registro 74hc164 en ccs
« Respuesta #9 en: 27 de Julio de 2014, 23:16:40 »
Uhh....  baje otras hojas de datos, y estas son más claras, y si indican que algunos manejan 20mA, hay que ver que tiene el vendedor....   y si,  conozco el ULN2803, me gustaria poder conseguir por estas pampas tambien su complemento, aquel array que tiene por comun el +Vcc y no el GND, para dejar de sufir con los transistores, no recuerdo como se llamaba, pero al preguntar por el no tenian....


 

anything