Autor Tema: AYUDA CANITO EN TABLA!!!!  (Leído 2689 veces)

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

Desconectado kikeos16f84

  • PIC10
  • *
  • Mensajes: 17
AYUDA CANITO EN TABLA!!!!
« en: 19 de Octubre de 2008, 16:20:51 »
hola canita como estas.
mira tengo una duda en una tabla.
cree una tabla llamada tabla_display, la realize para hacer la conversion de binario a decimal, esto es que por medio de interruptores en el puerto a meter la numeracion binaria y que en el display de 7 segmentos me de su equivalencia real, pero no sale, hice unas modeificaciones y si salio, la tabla creada me esta estos valores.
tabla_display
   addwf pcl,1
   retlw b'01111110'    ; 0
   retlw b'00001100'    ; 1
   retlw b'10110110'    ; 2
   retlw b'10011110'    ; 3
   retlw b'11001100'    ; 4
   retlw b'11011010'    ; 5
   retlw b'11111010'    ; 6
   retlw b'00001110'    ; 7
   retlw b'11111110'    ; 8
   retlw b'11011110'    ; 9

si ves la ultima columna de la derecha es cero, y en el display seria RB0 y es el que pondria al pin a del display, por lo cual siempre estaria apagado, lo que hice para que funcionara es quitarle ese ultimo cero a la columna y quedaria asi:
tabla_display
   addwf pcl,1
   retlw b'0111111'    ; 0
   retlw b'0000110'    ; 1
   retlw b'1011011'    ; 2
   retlw b'1001111'    ; 3
   retlw b'1100110'    ; 4
   retlw b'1101101'    ; 5
   retlw b'1111101'    ; 6
   retlw b'0000111'    ; 7
   retlw b'1111111'    ; 8
   retlw b'1101111'    ; 9


y asiendo estos cambios si funciona, mi duda o pregunta es, como podria hacer para que mi tabla quede como la que modifique, quiero que me la haga niple, pq mi tesis habla sobre el programa y por tal tengo que hacerlo con el, quisieras que resolvieras mi duda.
la tabla la cree en Tabla para display de Catodo Comun, otra manera mas segura es crearla como tabla estarndar y activar los pines que formarian el numero, pero quisiera hacerlo con tabla para display, en caso que no se pudiera lo que haria es conectar el dispaly a partir de RB1 y a RB0 mandarlo al pin db del display.


GRACIAS POR TU ATENCION Y ESPERO PUEDAS AYUDARME

Desconectado jorgecano

  • Moderadores
  • PIC16
  • *****
  • Mensajes: 230
Re: AYUDA CANITO EN TABLA!!!!
« Respuesta #1 en: 27 de Octubre de 2008, 12:29:49 »
Hola,

En las primeras versiones de Niple se utilizaba el 16F84 el cual tiene 2 puertos = A de 5 pines y B de 8 pines.

Resultaba muy comodo utilizar todos los pines de un solo puerto (B) para armar el bus de datos del los displays.

Pero, el pin "0" del puerto B puede ser utilizado como interrrupción externa (entrada). Generalmente se utilizaban los pines B1 al B7 para los displays y se dejaba el pin B0 como interrupción.

Y es por esto que Niple genera la tabla de valores de codigos para displays comenzando desde el bit 1, dejando asi el Bit 0 libre para no perder el pin de interrupcion y poder sacar todo el resultado de la tabla por todos los pines del puerto B simultaneamente.

Actualmente en Niple procesa los pines de los displays de manera individual por lo cual ya no es necesario dejar libre el bit 0 del codigo de la tabla.

Una cosa que podrías hacer es realizar una rotación hacia la derecha del registro que contiene el resultado de la tabla.
Con eso debería funcionar.

Si el modulo de control de displays de 7 segmentos está buscando el código desde el bit 0 y la tabla está generando a partir del bit 1, habrá que correjirlo.


Saludos
Jorge.

Desconectado kikeos16f84

  • PIC10
  • *
  • Mensajes: 17
Re: AYUDA CANITO EN TABLA!!!!
« Respuesta #2 en: 30 de Octubre de 2008, 04:10:18 »
OK CANITO MUCHAS GRACIAS POR TU RESPUESTA Y LO  QUE ME EXPLICAS LO PONDRE EN MI TRABAJO Y EL ENTRENADOR LO HARE COMO NIPLE MANDA LA INFORMACION ES DECIR DE RB1 A RB7,

POR ULTIMO AUN NO ESTA TERMINADO DE MIGRAR NIPLE PARA WINDOWS VISTA


GRACIAS