Autor Tema: Necesito un Convertidors Binario a BCD de 8 digitos  (Leído 4027 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado akira_ve

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 342
Necesito un Convertidors Binario a BCD de 8 digitos
« en: 24 de Junio de 2011, 22:41:01 »
Amigos necesito hacer un cuenta vueltas de 8 digitos, osea un simplecontador con un PIC y una pantalla LCD, ya esta hecho usando el TMR1 y para extender el tamaño del contador solo utilizo la bandera de sobre flujo como un acarreo osea solo me falta convertir el valor que genere el contador en forma binaria y mostrarlo con 8 digitos en formato BCD en la LCD, por la ayuda que puedan darme se los agradesco..................  :-/ :-/ :-/ :-/ :-/
Si conocemos bien lo que tenemos y lo sabemos usar......se haran hasta cosas que e veces aseguran son imposibles

Venezuela

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #1 en: 25 de Junio de 2011, 00:38:25 »
Hola, para imprimir en la lcd lo que haces es enviar el codigo ascii del caracter que quieras imprimir, entonces si quieres enviar un '0' enviarias por el puerto de datos de la lcd D0-D7 el numero 48, para el '1' envias el 49 y asi sucesivamente
"Nada es imposible, no si puedes imaginarlo"

Desconectado akira_ve

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 342
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #2 en: 25 de Junio de 2011, 02:06:03 »
amigo eso lo se................pero LCD me imprimira el valor hexadecimal pues uso un LIBRERIA para LCD si uso el valor dado por el contador me mostrara el valor hexadecimal por eso necesito la rutina que convierta a BCD................
Si conocemos bien lo que tenemos y lo sabemos usar......se haran hasta cosas que e veces aseguran son imposibles

Venezuela

Desconectado alogic.on

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 772
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #3 en: 25 de Junio de 2011, 14:05:03 »
prueba a poner en el buscador bin bcd, a mi me han salido unas cuantas ;-)

un saludo

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #4 en: 25 de Junio de 2011, 14:10:47 »
prueba a poner en el buscador bin bcd, a mi me han salido unas cuantas ;-)

Seeee!!! Hay que usar el buscador....  :mrgreen:
No contesto mensajes privados, las consultas en el foro

Desconectado akira_ve

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 342
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #5 en: 25 de Junio de 2011, 16:48:42 »
lo se solo encontre en un antiguo foro de aqui convierte 40 BIT A BCD
esta es la direccion pero no puedo entrar, busque en internet y fue la unica posibilidad que encontre pero no pude encontrar la manera de descargarlo, por eso abri este tema pues creo que deben haber mas personas en esta necesidad

http://todopic.mforos.com/79706/720764-matematicas/
Si conocemos bien lo que tenemos y lo sabemos usar......se haran hasta cosas que e veces aseguran son imposibles

Venezuela

Desconectado alogic.on

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 772
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #6 en: 26 de Junio de 2011, 04:37:58 »
vale, vale... mira que tiene chinchetica el post, pero... la culpa ha sido en parte mía ;-) le puse a la rutina de bcd a 7 segmentos y le tendria que haber puesto bin-bcd-7segmentos por esta vez pasa :D :D :D pero te aseguro que las hay a patadas por el foro, yo la saque de aqui en su día :P
le quitas la tabla y ale ale. te guarda el bcd en. lsd, msd y cent y ya la tienes de bin a bcd. y si no, sigue buscando :mrgreen:

Desconectado akira_ve

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 342
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #7 en: 26 de Junio de 2011, 13:05:28 »
Si gracias esa rutina la tengo pero lee arriba necesito para 8 digitos y ese es para 3............alguien me orienta para ver como convierto entonces esa rutina de 3 digitos a uno de 8 digitos......por que como les dije en un foro antiguo esta...........pero no puedo tomarlo.............



http://todopic.mforos.com/79706/720764-matematicas

De todas maneras gracias amigo :-/ :-/ :-/
Si conocemos bien lo que tenemos y lo sabemos usar......se haran hasta cosas que e veces aseguran son imposibles

Venezuela

Desconectado cristian_elect

  • PIC18
  • ****
  • Mensajes: 453
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #8 en: 26 de Junio de 2011, 13:39:29 »
Oye estas en microcontroladores supuestamente ya pasaste sistemas digitales, hay si te acuerdas es facil si no busca tu libro de digitales 1 y lo encuentras es un tema comun.

Desconectado akira_ve

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 342
Re: Necesito un Convertidors Binario a BCD de 8 digitos
« Respuesta #9 en: 02 de Julio de 2011, 15:16:11 »
Rvisando por alli encontre esta dirccion:

http://micropic.wordpress.com/2007/06/21/binario-a-bcd-recorre-y-suma3/

apartir de alli modifique una libreria que encontre de una libreria para 8 BIT lo modifique para 16 y 32 bit

estas es para 16 BIT:

        H_Byte              ; Parte Baja Binaria
   L_Byte      ; Parte Alta Binaria
   temp_BCD         ; Registro Temporal
   R0         ; Valor BCD de Salida 1
   R1         ; Valor BCD de Salida 2
   R2         ; Valor BCD de Salida 3
   ENDC

   
BIN_a_BCD_16BIT
   bcf   STATUS,   C
   clrf   Conta1
   bsf   Conta1,   4
   clrf   R0
   clrf   R1
   clrf   R2

loop16
   rlf           L_Byte,   F
   rlf           H_Byte,   F
   rlf           R2,   F
   rlf           R1,   F
   rlf           R0,   F
   decfsz   ContaBCD,   F
   goto           a_dec
   Return
   
a_dec
   movlw   R2
   movwf   FSR
   call           a_bcd

   movlw   R1
   movwf   FSR
   call           a_bcd

   movlw   R0
   movwf   FSR
   call           a_bcd

   goto   loop16

a_bcd
   movf           INDF
   movlw   0X03
   addwf   INDF,   W
   movwf   temp_BCD
   btfsc           temp_BCD,   3
   movwf   INDF
   movlw   0X30
   addwf   INDF,   W
   movwf   temp_BCD
   btfsc           temp_BCD,   7
   movwf   INDF
   Return

Y esta seria para 32 BIT:

   CBLOCK   
   ContaBCD
   HA_Byte              ; Parte Baja Binaria A
   LA_Byte      ; Parte Alta Binaria A
   HB_Byte              ; Parte Baja Binaria B
   LB_Byte      ; Parte Alta Binaria B
   temp_BCD    ; Registro Temporal
   R0         ; Valor BCD de Salida 1
   R1         ; Valor BCD de Salida 2
   R2         ; Valor BCD de Salida 3
   R3         ; Valor BCD de Salida 4
   R4         ; Valor BCD de Salida 5
   R5         ; Valor BCD de Salida 6
   R6         ; Valor BCD de Salida 7
   R7         ; Valor BCD de Salida 8
   ENDC

   
BIN_a_BCD_32BIT:

   bcf      STATUS,   C
   movlw   0X20
   movwf   ContBCD
   clrf   R0
   clrf   R1
   clrf   R2
   clrf   R3
   clrf   R4
   clrf   R5
   clrf   R6
   clrf   R7
   
loop32:
   rlf      LA_Byte ,F  ; Parte Baja Binaria B
   rlf      HA_Byte   ,F   ; Parte Alta Binaria B
   rlf      LB_Byte ,F    ; Parte Baja Binaria A
   rlf      HB_Byte ,F   ; Parte Alta Binaria A
   rlf      R7,   F
   rlf      R6,   F
   rlf      R5,   F
   rlf      R4,   F
   rlf      R3,   F
   rlf      R2,   F
   rlf      R1,   F
   rlf      R0,   F
   decfsz   ContaBCD,   F
   goto           a_dec
   Return
   
a_dec:
   movlw   R7
   movwf   FSR
   call           a_bcd

   movlw   R6
   movwf   FSR
   call           a_bcd

   movlw   R5
   movwf   FSR
   call           a_bcd

   movlw   R4
   movwf   FSR
   call           a_bcd

   movlw   R3
   movwf   FSR
   call           a_bcd   

   movlw   R2
   movwf   FSR
   call           a_bcd

   movlw   R1
   movwf   FSR
   call           a_bcd

   movlw   R0
   movwf   FSR
   call           a_bcd

   goto           loop32

a_bcd:
   movf           INDF
   movlw   0X03
   addwf   INDF,   W
   movwf   temp_BCD
   btfsc           temp_BCD,   3
   movwf   INDF
   movlw   0X30
   addwf   INDF,   W
   movwf   temp_BCD
   btfsc           temp_BCD,   7
   movwf   INDF
   Return
   END

Espero les Sirva.
Si conocemos bien lo que tenemos y lo sabemos usar......se haran hasta cosas que e veces aseguran son imposibles

Venezuela