Autor Tema: manejo de tablas en CCs  (Leído 3245 veces)

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

Desconectado lab_mendoza

  • PIC10
  • *
  • Mensajes: 1
manejo de tablas en CCs
« en: 27 de Febrero de 2006, 09:49:00 »
 desearia saber si alguien tiene algun programa de ejemplo para manejar una tabla como las del pic en asm, pero que este realizada en ccs para poder modificarla,


 -------------------------------gracias.....................

Desconectado pachopic

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 207
RE: manejo de tablas en CCs
« Respuesta #1 en: 01 de Marzo de 2006, 09:09:00 »
HOLA: RollEyesRollEyes

pues hombre,... la unica forma en la que yo he realizado una tabla en C es mediante un arreglo, por ejemplo para manejar display de 7segmentos, cada digito  es llamado mediante un indice i, por ejemplo si i=7, el arreglo mostrara en el puerto d (en este caso el valor correspondiente en 7segmentos):

Codigo:

//****************************************************************
//   array para formar los digitos de 0 a 15 EN FORMATO DE 7SEMENTOS
//   PARA SER MOSTRADOS EN DOS DYSPLAY DE ANODO COMUN
//****************************************************************
byte const DISPLAY[16] =  {0b1000000, //contiene los digitos
                           0b1111001, //0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
                           0b0100100, // en formato para ser mostradosendisplay
                           0b0110000, // de 7segmentos
                           0b0011001,
                           0b0010010,
                           0b0000010,
                           0b1111000,
                           0b0000000,
                           0b0010000,
                           0b0001000,
                           0b0000011,
                           0b1000110,
                           0b0100001,
                           0b0000110,
                           0b0001110,};
//****************************************************************
//      MUESTRA EN DISPLAY DE 7 SEGMENTOS
//****************************************************************

for(i=0;i<15;i++)
{
 portd=display[ i ];     // muestro digito  del 0-15 en 7seg en display en portd
}



no se si alguien sepa otra manera, mas eficiente o mas refinada de hacerlo, no he mirado aun el codigo asm generado...

salu2