Matriz led barrido por filas o columas???

Cordial saludo a todos, tengo una matriz 7x25 funcionando(en proteus) la cual quiero armar fisicamente, solo que quiero ampliarla a una de 7x50, el barrido lo realizo por columnas es decir utilizo un puerto del pic para colocar el dato, enciendo la columna, alisto el siguiente dato, apago la anterior y prendo la siguiente asi hasta completar el total de columnas, leyendo articulos dicen que es mejor hacer el barrido por las filas, pero realmente no he entendido como hacer la programacion para esto(programo en ccs). Si alguien me desea ayudar coloco el programa que estoy usando de barrido por columnas, para que me ayuden a pasarlo a barrido por filas, graciass por leer saludos.....
 
eeeee..... pues creo que no jajajaaj, esta hecho para leer de la eeprom el mensaje, y lo adapte de uno que estaba en pbp ya que no entendia como mover las letras asi que depronto no es lo mejor del mundo pero funciona miralo:
Código:
#include <16f84a.h>
#fuses HS,PUT,PROTECT,NOWDT
#use delay(clock=20000000)
#use standard_IO(A)
#use standard_IO(B)
#define EEPROM_SDA PIN_A1 //definimos los pines donde...
#define EEPROM_SCL PIN_A0 //la eeprom ira conectada 
#include <24256.c> //libreria de eeprom externa 24LC256 

#define clock pin_A2
#define dato pin_A3
int a1;
long longitudmensaje,j1,letra,mem_externa,mirar;
void send_data(short data)
{
 output_bit(dato,data);
 output_bit(clock,0);
 delay_us(1);
 output_bit(clock,1);
}
void corrimiento()
{
 if(a1==1)send_data(0);
 else send_data(1);
}

void verlectura()
{
 w1=0;
 a1=1;
 while(true)
 {
  b1=0;
  b1+=w1;
  c1=b1+24;
  for(letra=b1;letra<c1;letra++)
   {
    mem_externa = read_ext_eeprom(letra);
    if(a1>24)a1=1;  //si termino las columnas inicie de nuevo
    corrimiento();
    output_b(mem_externa);  
    a1++;
    delay_us(1400); 
   }
   send_data(0);
   w1+=1;
   if(w1>(longitudmensaje-25))w1=0; 
 }

}
void leereeprom()
{
 j1=0;
  do
   {
    mirar = read_ext_eeprom(j1);
    j1++;
   }while(mirar!=0xFF);
  longitudmensaje=j1-1;
  verlectura();
}

void main()
{
 output_B(0);
 leereeprom();
}
el pic solo lee la eeprom la cual ya tiene el dato que debe poner en la fila para luego activar la columna, aa y estoy desplazando con 74hc164, gracias por tu pronta respuesta.
 
Última edición por un moderador:
Pues comento que logre sacar la letra a con la forma de barrido por filas es decir de arriba a abajo, pero ahora me surge la duda de como puedo desplazar o crear efectos en las letras??? alguien que me ayude con esto estoy muy perdido en ese pedazo....:cry:
 
Atrás
Arriba