Autor Tema: programa de ejemplo para pic18f4550 sobre matriz de leds en ccs  (Leído 9095 veces)

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

Desconectado shinseiky

  • PIC10
  • *
  • Mensajes: 10
buenas estoy iniciandome en la programacion de matriz de leds pero no entiendo mucho y quisiera ver si alguien me puede brindar un programa de ejemplo de una matriz de leds de 8*7  y si es mas grande mejor, lo  mas sencillo que haga como mostrar una palabra desplazandose, esto con la intencion de aprender y ver como funciona tanto en un simulador como el proteus como en tiempo real. bueno yo estoy utilizando el compilador ccs y me gustaria que el programa sea en lenguaje c y si no es mucho pedir que tambien sea en ccs. ahh me olvidaba yo estoy trabajando con el Pic18f4550.

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #1 en: 10 de Julio de 2011, 14:21:20 »
Hola.

Lee las reglas del foro .... y busca en el foro, el tema de matrices led es muy tratado aquí.

Saludos
El papel lo aguanta todo

Desconectado Moechh

  • PIC10
  • *
  • Mensajes: 16
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #2 en: 19 de Marzo de 2016, 13:16:21 »
hola espero que ayas podido resolver lo de la martriz para que me puedas ayudar gracias

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #3 en: 19 de Marzo de 2016, 16:36:16 »
hola espero que ayas podido resolver lo de la martriz para que me puedas ayudar gracias

El tema es de 2011, pero podrias seguir el mismo consejo que dio MLO

Hola.

Lee las reglas del foro .... y busca en el foro, el tema de matrices led es muy tratado aquí.

Saludos

Hay muchos temas con lo mismo, desde usando multiplexacion hasta integrados que manejan los diodos leds

Desconectado Moechh

  • PIC10
  • *
  • Mensajes: 16
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #4 en: 19 de Marzo de 2016, 19:02:50 »
trato pero no entiendo mucho solo me falta hacer que dos ordenes entren en un void main, y se ejecuten juntas

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #5 en: 19 de Marzo de 2016, 19:20:35 »
trato pero no entiendo mucho solo me falta hacer que dos ordenes entren en un void main, y se ejecuten juntas

Tu problema es de programacion. Es imposible que 2 cosas se ejecuten al mismo tiempo, lo que puede parecer que se ejecuta al mismo tiempo es cuando usas una interrupcion, en el que cuando se cumple las condiciones de interrupcion, entra a esta realiza lo que debe hacer y sale. Asi el programa principal ( main ) sigue su curso desde donde estaba.

Sin conocer tampoco que es lo que intentas juntar es mas dificil ayudarte. Pero si usas multiplexacion por ejemplo, tu interrupcion a traves de un timer es el que haria cambio del transistor y el cambio de datos en el puerto, mientras que en el main solo haces los cambios a los datos que luego la interrupcion toma.

Desconectado Moechh

  • PIC10
  • *
  • Mensajes: 16
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #6 en: 19 de Marzo de 2016, 19:35:57 »
En el archivo adjunto esta la programación que he realizado y la imagen muestra lo que pretendo hacer

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #7 en: 20 de Marzo de 2016, 18:17:46 »
Una pregunta mas, como estas comandando las cosas ? con un registro de desplazamiento ?

Esto seria masomenos tu programa modificado, aunque prefiero que tenga un latch el shift register:

Código: C
  1. void main(void)
  2. {
  3.         while(TRUE)
  4.         {
  5.                 LetraB();
  6.         }
  7. }
  8.      
  9. void letraB(void)
  10. {
  11.         for(i=0;i<8;i++)
  12.         {
  13.                 EnviarDatosShiftRegister(0);                            // Apago todo
  14.                 output_b(lB[i]);                                        // Valor en puerto
  15.                 EnviarDatosShiftRegister(A[i]);                         // Enciendo el correspondiente
  16.                 delay_ms(50);                                           // Espero
  17.         }
  18. }
  19.  
  20. void EnviarDatoShiftRegister(unsigned int Data)
  21. {
  22.         for(o=0;o<8;o++)
  23.         {
  24.                 output_low(CLK);
  25.                 output_bit(DATO,Data & (1 << o));
  26.                 output_high(CLK);
  27.         }
  28. }

Si pensas hacer mas cosas aparte de eso, vas a tener que revisar lo que es interrupciones y el timer
Si usas el shift register, tambien podes usar el modulo SPI y comunicarte con este con data y clock
« Última modificación: 20 de Marzo de 2016, 18:19:49 por KILLERJC »

Desconectado Moechh

  • PIC10
  • *
  • Mensajes: 16
Re:programa de ejemplo para pic18f4550 sobre matriz de leds en ccs
« Respuesta #8 en: 12 de Abril de 2016, 01:42:10 »
si algo asi mas o menos es lo que pensaba hacer
valla hacer que la multiplexion del registro de desplazamiento (que controla los negativos del pic a la matriz) y el puerto d (que controla los positivos del pic a la matriz) salgan al mismo tiempo para que se pueda visualizar esa linea


 

anything