Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

22/02/2015 #101


D@rkbytes
Saludos D@rkbytes
Te agradezco toda la ayuda que me brindaste , ya realiza la función pero en una sola matriz de 8x8, pero cuando pongo las demás en cascada el barrido de una a otra no es continuo y hace que se distorsionen las letras, espero puedas ayudarme con este inconveniente
Espero mañana postearte un vídeo donde se vea el funcionamiento de mi matriz de LEDs tal ves sea la velocidad en la que el pic envía los datos
22/02/2015 #102
Moderador

Avatar de D@rkbytes

Ok. Eso me parece muy bien y esperamos el vídeo para ver el funcionamiento.
Con respecto a la velocidad de desplazamiento, mira nuevamente el post #84
22/02/2015 #103


D@rkbytes
Ups.. muchas gracias D@rkbytes yo modificaba esta parte del programa donde dice pause y claro mañana subiré el video
Código PHP:
LineaV:
Determina la posición activa horizontal
y genera la activación de los leds verticales.
    
PORTB Linea[Contador2]
    
Pause 3 Retardo a modificar para la velocidad.
    If 
Contador2 32 Then
        Contador2 
1
        GoSub Enviar_1   
    
Else
        
Contador2 Contador2 1
        GoSub Enviar_0
    
EndIf 
22/02/2015 #104


D@rkbytes
Saludos D@rkbytes, una ultima duda ¿porque al mandar un texto no lo muestra completo? se reinicia, por ejemplo mando a imprimir Gracias D@rkbytes y Foros de Electrónica y solo muestra Graci espero puedas ayudarme, creo que es un error en la reñal de reloj de los 74HC164
23/02/2015 #105
Moderador

Avatar de D@rkbytes

Es algo extraño lo que mencionas, pues debería continuar la secuencia faltante.
Adjunta el código y esquema o simulación, exactamente como los tienes ahora para revisarlos.
23/02/2015 #106


La secuencia la termina despues de varias veces de haberse reiniciado, los registros los tengo en cascada, el pin 13 del primer registro esta conectado al pin 1 y 2 del siguiente registro y asi en los cuatro registros, el pin 8 de todos los registros están conectados al reloj del pic te adjnto los archivos
Saludos
Archivos Adjuntos
Tipo de Archivo: zip matriz.zip (186,3 KB (Kilobytes), 40 visitas)
23/02/2015 #107
Moderador

Avatar de D@rkbytes

Se me ocurre que puedes ser por éstos detalles:
  1. La variable Char está formada por 7 elementos, pero se están usando 8. Entonces debe ser Char Var Byte[8] (Casi siempre se usan 7, pero estando en 8 puede servir para crear otros caracteres personalizados.)
  2. El retardo de PauseUs lo llevaste hasta 1100 us. Déjalo en 500 us.
  3. La creación de las letras debe ser de la siguiente forma...
Éste es un ejemplo para la letra "a" minúscula: Letra a minúscula.jpg
Entonces se genera el siguiente código:
Char[8] = %00000000
Char[7] = %00000000
Char[6] = %00000000
Char[5] = %00000000
Char[4] = %00001111
Char[3] = %00010101
Char[2] = %00010101
Char[1] = %00010010

Nota que siempre debe quedar un espacio en blanco para separar las letras.
En este caso está formado por ceros, entonces sobran: Char[8], Char[7] y Char[6]
Éstos se deben eliminar y Char[5] que está formado por ceros, será el espacio entre letras.
Por lo tanto, la variable Char_Length debe tener el valor 5.

Otro ejemplo ahora con la "A" mayúscula: Letra A mayúscula.jpg
Se obtendrá el siguiente código:
Char[8] = %00000000
Char[7] = %00000000
Char[6] = %00000000
Char[5] = %01111111
Char[4] = %10001000
Char[3] = %10001000
Char[2] = %10001000
Char[1] = %01111111


Aquí sobra; Char[8] y Char[7] porque Char[6] será el espacio de separación entre letras.
Por lo tanto se eliminan y Char_Length deberá tener el valor 6.

Espero hayas entendido. Ahora modifica lo que te mencioné y realiza una prueba.

PD:
Los caracteres los puedes formar de la manera que quieras, pero debes tener en cuenta iniciar a crearlos desde la izquierda hacia la derecha y los espacios sobrantes, eliminarlos.
23/02/2015 #108


D@rkbytes
Gracias probare las modificaciones que mencionas, por otra parte estoy por realizar el PCB de la placa de control, crees que tenga que estar mas gruesa la pista de datos y reloj del pic, o no importa?
tambien pienso implementarla en mi auto, y quisiera que se prendiera con un interrumpor y que con ese mismo se interrumpiera, eh pensado colocar un relevador para controlar el encendido y apagado dela matriz
23/02/2015 #109
Moderador

Avatar de D@rkbytes

arturobuffon dijo: Ver Mensaje
Estoy por realizar el PCB de la placa de control.
¿Crees que tenga que estar más gruesa la pista de datos y reloj del pic, o no importa?
No. Esas pistas no manejan corrientes elevadas para que tengan que ser gruesas.
De hecho, el circuito completo no demanda mucha corriente.
Lo que si tienes que hacer, es un buen plano de tierra en el circuito impreso.
23/02/2015 #110


D@rkbytes
Ya quedo!! solo espero que youtube no se tarde demasiado para compartirles el video del funcionamiento y como te comentaba, para prenderlo y apagarlo con un mismo pulsador eh pensado en ocupar un flip flop JK con un transoistor para aumentar la corriente y pueda encender y apagar la matriz
25/02/2015 #111


D@rkbytes
Saludos y muchas gracias por la ayuda y que buena paciencia tienes jejeje aquí te dejo el vídeo https://www.youtube.com/watch?v=TRlY...ature=youtu.be , despues subiré uno con una mejor resolución una mejor velocidad de desplazamiento, de nuevo muchas gracias D@rkbytes
26/02/2015 #112
Moderador

Avatar de D@rkbytes

arturobuffon dijo: Ver Mensaje
Saludos y muchas gracias por la ayuda y que buena paciencia tienes jejeje
De nada. Que bueno que ya funcionó esta matríz de LEDs.

Estaría bien que subieras el esquema completo que usaste y un solo código.
Es que anteriormente subiste dos programas.

Esto es para tener un único proyecto que funcione, pues se hicieron varias modificaciones.
17/06/2015 #113


D@rkbytes dijo: Ver Mensaje
OK. Al parecer siempre sí va a ser necesario que se usen transistores PNP.
No me había tomado el tiempo de analizar bien como es que estaba funcionando esta matríz y esto fue lo que me causó confusión.
Esas matrices tienen los ánodos hacia arriba y por lo tanto requieren tensión positiva.

Las resistencias están bien de valor pero puedes probar colocando una sola resistencia de 330 Ω en el emisor y los 74HC164 los conectas directamente.

Realicé una modificación al programa y al diseño, invirtiéndolo para que funcione usando transistores NPN, pero en este caso las columnas deberán ser los cátodos.
Ahora por lo menos ya me quedó más claro como es que está funcionando esta matríz.
Ya me imaginaba que algo tenía que estar invertido por lo que has comentado, y ahora lo entiendo.
Hola, tengo problemas al intentar compilar el codigo con pic basic pro 2.6, ya use la palabra de configuracion pero sin exito, no entiendo que pasa, gracias por la ayuda

Tengo errores al compilar y al correr el proteus no se que pasa

---------- Actualizado después de 18 minutos ----------

Buenas, ya logre solucionar el error de compilacion, tengo una duda, necesito poder modificar respecto a los datos que envie en el puerto serial hay alguna forma de modificar en
Data @0, un dato en especifico?, muchas gracias.
Imágenes Adjuntas
Tipo de Archivo: jpg asdasdas.jpg (82,1 KB (Kilobytes), 10 visitas)
Tipo de Archivo: jpg asd.jpg (111,8 KB (Kilobytes), 12 visitas)
Tipo de Archivo: png as.PNG (5,9 KB (Kilobytes), 9 visitas)
17/06/2015 #114
Moderador

Avatar de D@rkbytes

keimaster dijo: Ver Mensaje
Necesito poder modificar respecto a los datos que envíe en el puerto serial.
¿Hay alguna forma de modificar en Data @0, un dato en especifico?
Los datos que se guardan en la EEPROM interna con la instrucción "Data", son los datos que posteriormente se leerán y es el mensaje que será visualizado.

¿A qué puerto serial te refieres?
El programa usa datos seriales para comunicarse con los registros de desplazamiento, pero no se usa un puerto serial estándar, y tampoco un módulo UART, sino un pin de reloj y otro de datos.

Me parece que debes leer el tema desde el principio para que entiendas el funcionamiento del sistema.
17/06/2015 #115


En si lo que tengo que hacer es que mediante un dato por el puerto UART y un bluetooth serial pueda leer el dato mediante los puertos rx y tx y desplegar el caracter que se envie al puerto serial, no se exactamente que tengo que hacer para sobreescribir los datos de la EEPROM, ademas de que tendria que cambiar de microcontrolador para poder utilizar un puerto C y tenga mas libertad, pero en si no entiendo exactamente como funciona el corrimiento
17/06/2015 #116
Moderador

Avatar de D@rkbytes

keimaster dijo: Ver Mensaje
En sí, lo que tengo que hacer, es que mediante un dato por el puerto UART y un Bluetooth serial, pueda leer el dato mediante los puertos rx y tx y desplegar el carácter que se envíe al puerto serial
OK. Eso ya es otra cosa.
Entonces, mira por aquí: Matriz de Leds PIC16f628a Controlada por Teclado PS2
Con ese aporte de tecniloco80, ya podrás tener algo más en claro con la recepción de datos por el puerto serie, la implementación del módulo Bluetooth, ya corre por tu cuenta.

Suerte.
13/07/2015 #117


Matriz 8x8
Hola, gente del foro. Bueno, aquí me armé una matriz de 8x8 y estoy probando un ejemplo que puso arturobuffon que adjunto con algunas fotos de la mía.

Como realicé el conexionado, al encender el circuito quedan todos los leds prendidos sin mostrar nada más que ese parpadeo intermitente de todos los leds.

No hice el buffer todavía, me falta esa parte y probar cada columna con buffer.

Espero puedan ayudar.
En fin, seguiré probando y tratando de localizar la falla.

Gracias.
Archivos Adjuntos
Tipo de Archivo: rar enviar.rar (2,92 MB (Megabytes), 34 visitas)
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.