Matriz de leds 7x80 animada

#21
Muchas gracias por su ayuda.

De pronto podría poner los archivos con el cual usted puso de muestra MATRIZ DE LEDS 7X40 CEVOLLIN.rar pero también el programa si no es mucha moletia desde luego y si se puede, ya que desearía estudiar su código y ver cómo es el funcionamiento.

Otra cosita, de pronto sabe dónde puedo encontrar puertos que se puedan simular como por ejemplo con VB.NET y Proteus, o LabView y Proteus para poder utilizar los dos software a la vez e interactuar osea que a la salida de cada puerto obtener los niveles de voltajes.

Nuevamente gracias.
 
#22
ok lamp el programa para la matriz de leds ya la havia adjuntado esta en la segunda pagina en el mensaje 13 alli adentro esta todo lo relacionado con mi proyecto de la matriz de leds esta hasta la simulacion en proteus ok

lo que ahora quiero hacer es cambiar el texto a mostrar desde el puerto serie tengo una teoria para hacer eso bueno la teoria es hacer un programa en visual basic o c++ o como sea el sofware a lo que se dedicaria es a reemplasar los datos (en mi imagen adjunta (cuadro verde bitmap) que el sofware borre estos datos y los reemplase ahora por los datos nuevos que ahora queremos representar en la matriz (escribir los datos en la eeprom de esta manera el mensaje no se borraria aun asi se alla ido la luz)

hacer un sofware para una matriz de leds representa un gran reto ya que para que el sofware haga esto nesesita traducir el caracter ingresado de el teclado y traducirlo a 7 datos (7 filas*5columnas =1caracter)

 
#29
holas amigo cevollin la rutina q hiciste me llama la antencio ... sabes no se si la puede subir y el diagrama en proteus para poder estudiarla... desde ya te agradesco.....
 
#31
Hola soy Eddy y necesito saber como desplazo un mensaje en la matriz .estoy usando una 7x80.cualquier ayuda se la agradezco

Hola luis_e soy Eddy y necesito saber como desplazo un mensaje en la matriz,es lo unico que me falta .espero tu respuesta.cualquier ayuda se la agradezco.
 
Última edición:
#36
buenas a todos
yo tengo un letrero de les de 5 filas por 55colimnas multplexasas con 7 registros ls164 el problema es que necesito dividir cada letra en cada registro logro cargar una letra perfecta el 1 registro pero en toda la pnatalla se deforma y se va corriendo hacia abajo

les agradezco su colaboracion en programacion
aca adjunto el codigo en codewarrior estoy utilizando un jm60 de freescale
Código:
#include <hidef.h>      /* for EnableInterrupts macro */
#include "derivative.h" /* include peripheral declarations */

const byte NVOPT_INIT  @0x0000FFBF = 0x02;    // vector redirect, flash unsecure
const byte NVPROT_INIT @0x0000FFBD = 0xFA;    // 0xFC00-0xFFFF are protected 



const char Transistores[5]={0b11110,0b11101,0b11011,0b10111,0b01111};


const  char Letras[5] ={   0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b10000001, 
                           0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b11101111, 
                           0b11111001,0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b11101111,
                           0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b11111111,0b11101111,
                           0b11111111,0b11111001,0b11111111,0b11111111,0b11111111,0b11111111,0b11101111,};

                          
                         
                         
                                                           
                          
                                                 
                      
char PunteroLetras=0;
char PunteroTransistores=0;

void Tarea2(char dato)
{
    
   
  int i,j=1;
  for (i=0;i<8;i++)                                           
  {
  
   PTDD_PTDD1 = (j&dato)?1:0;
   
    j=j<<1;
  
    
  
   
   
   
 
   PTDD_PTDD0 = 1;
    asm nop
    asm nop
    asm nop
   PTDD_PTDD0 = 0;
   
    
   
  }

}
void Tarea1(void)
{
 PTBD = Transistores[PunteroTransistores];
 Tarea2(Letras[PunteroLetras]);
 PunteroLetras++;
 if (Letras[PunteroLetras]==0) PunteroLetras=0;
  PunteroTransistores++;

  
if (PunteroTransistores==5)PunteroTransistores=0; 
 
 
  
}

interrupt 29 void RTCISR(void)
{
 RTCSC_RTIF = 1;

 Tarea1();
 
 
}



extern void _Startup(void);

/* User code */                        
void main(void) 
{  
 SOPT1  = 0X20;
 
 PTBDD=0B00011111;                                 
 PTDDD=0B00000111;
 PTBD =0B00001111;
 PTDD= 0B00000100;
 
 PTDD_PTDD2 = 0;
    asm nop                                       
    asm nop
    asm nop
  PTDD_PTDD2 = 1;
 
 RTCMOD       = 32 ;
 RTCSC_RTCLKS = 2 ;
 RTCSC_RTCPS  = 8;        
 RTCSC_RTIF   = 1;
 RTCSC_RTIE   = 1;
 
  
 EnableInterrupts;
 
  
  
 for(;;)                                                                                                    
 {
  asm WAIT;
 
 }
}
 
Última edición por un moderador:
#37
Hola.
No habia leido sobre codewarrior y jm60 de freescale.
Pero en mikroc seria algo asi para visualizar el texto "ABCDEF" en una matriz 7x36

Código:
unsigned char code FONT_1[][7] = {
    0x1c, 0x22, 0x22, 0x3e, 0x22, 0x22, 0x22, // A
    0x3c, 0x22, 0x22, 0x3c, 0x22, 0x22, 0x3c, // B
    0x1c, 0x22, 0x20, 0x20, 0x20, 0x22, 0x1c, // C
    0x3C, 0x22, 0x22, 0x22, 0x22, 0x22, 0x3C, // D
    0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x3e, // E
    0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x20,// F
                                       };
                                       
 unsigned char code Fila[] = {0XFE,0XFD,0XFB,0XF7,0XEF,0XDF,0XBF};//contiene los bits para enceder cada columna.
      
       //introduce el dato en los ls164
      void Data_Send(unsigned char Times)
      {    unsigned char Col;
     for(Col = 1;Col < Times;Col ++)
     {
         if((Serial_Data & 0x01) == 0) //aux.0
         {
              DATA = 0;       //pin de dato serie  de los ls164
              Delay_us(1);
              CLOCK  = 0;
              Delay_us(1);
              CLOCK  = 1;      //pin de reloj de los ls164
              Delay_us(1);
         }
         else
         {
              DATA = 1;
              Delay_us(1);
              CLOCK  = 0;
              Delay_us(1);
              CLOCK  = 1;
              Delay_us(1);
        }
         Serial_Data = Serial_Data >> 1;   //se corren el dato hasta enviar los 6 bits que forman cada letra
     }
     }
                                       
                                       
      void main(void)
      {
      while (1)
      {
      Row = 0 ;
      for(I = 0;I < 7;I++)   //Altura display 7 fila
      {
      for(Column = 6;Column > 0;Column --) //columna 6x6 = 36 col.
      {
      Serial_Data = FONT_1[Column-1][Row];
      Data_Send(7);
      }
      PORTB = Fila[I];
      Delay_ms(2);
      PORTB=0XFF;
      Row ++;
      }
      }
      };
 
Última edición por un moderador:
#38
hola sera que me podrias ayudar
construi la matriz de leds de 7*55 pero quiero que diga ingenieria en electronica.
pero no soy bueno en eso de crear el codigo podias ayudarme. o guiarme
 
#39
Hola soy nuevo en el foro y estoy trabajando en un proyecto en Proteus de unaa matriz de led 7x32 y quisiera que alguien me explicara como hago para mostrar convertir los bitmap a binario y mostrarlos en la matriz.
 
#40
Hola killert

A, Aprox. 5 días de tu mensaje no te responden. Probablemente porque nadie se da por aludido.
Por otra parte, podrías subir tu diseño. Preferentemente el archivo que se genera con tu simulador.
De ese modo tal vez alguien se anime a guiarte en el desarrollo del código.

Hola Kamil

Bien: sube los archivos de tu proyecto. Preferentemente el archivo que se genera con tu simulador.
Por otra parte: a que te refieres con convertir los BitMap a binario ??
Esos BitMap’s son de que tipo: BMP, Jpg, GIF. O de qué tipo ??

saludos
a sus ordenes
 

Temas similares

Arriba