Autor Tema: Binario a BCD (10 bits o más)  (Leído 7444 veces)

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

Desconectado Rab

  • PIC10
  • *
  • Mensajes: 2
Binario a BCD (10 bits o más)
« en: 30 de Junio de 2009, 02:39:21 »
Tengo problemas con algunas de las rutinas que encontré en el foro para la conversión de Binario a BCD. Sé que existen varios ejemplos, sin embargo encontrar una que funcione correctamente ha sido imposible. Algunas no sirven en la simulación con proteus y tampoco lo hacen en el pic.

La que pongo a continuación me sirve bien en proteus, y en un principio estaba conforme, pero cuando la corrí en el pic veo que solo salen ceros.


Código: [Seleccionar]
        CBLOCK
contador1
R0
R1
R2
R3
R4
byte0
byte1
byte2
byte3
temp
ENDC

B2_BCD
bcf STATUS,C
movlw .32
movwf contador1
clrf R4
clrf R3
clrf R2
clrf R1
clrf R0
loop
rlf byte0,f
rlf     byte1,f
rlf     byte2,f
rlf byte3,f ;parte alta binario
rlf R0,f
rlf R1,f
rlf R2,f
rlf R3,f
rlf R4,f
decfsz contador1,f
goto adjDEC
return

adjDEC
movlw R0
movwf FSR
call adjBCD
movlw R1
movwf FSR
call adjBCD
movlw R2
movwf FSR
call adjBCD
movlw R3
movwf FSR
call adjBCD
movlw R4
movwf FSR
call adjBCD
goto loop

adjBCD
movlw 3
addwf INDF,W
movwf temp
btfsc temp,3          ; test if result > 7
movwf INDF
movlw 30
addwf INDF,W
movwf temp
btfsc temp,7          ; test if result > 7
movwf INDF           ; save as MSD
return


Sé que este tema ha es recurrente y que seguro se ha solucionado en otras ocasiones, pero por los links como:

http://todopic.mforos.com/79706/720764-matematicas/
http://todopic.mforos.com/79706/1103921-rutina-de-conversion-de-binario-a-bcd-16-bits/

No me sirven, ya que no me permite bajar los archivos.

Si alguien tiene una rutina de al menos unos 10 bits, se lo agradeceria. La finalidad de esta es convertir el ADRESH y ADRESL a BCD para que sea visto en una pantalla de lcd mediante el uso de un 16F877.

Gracias de antemano.

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Binario a BCD (10 bits o más)
« Respuesta #1 en: 30 de Junio de 2009, 10:55:32 »
Prueba con la que hay aquí. Esta esta probada, yo la he simulado en MPLab y aplicado en algunos trabajos, y funciona correctamente solo hay que ver como implementarla correctamente.
No contesto mensajes privados, las consultas en el foro

Desconectado Rab

  • PIC10
  • *
  • Mensajes: 2
Re: Binario a BCD (10 bits o más)
« Respuesta #2 en: 30 de Junio de 2009, 20:42:46 »
De verdad muchísimas gracias, me funciono correctamente sin problemas al primer intento.

Llevaba días sin éxito buscando una que funcionara correctamente, un millón de gracias de verdad.

Desconectado elensamblador

  • PIC10
  • *
  • Mensajes: 7
Re: Binario a BCD (10 bits o más)
« Respuesta #3 en: 13 de Enero de 2011, 02:22:02 »
Prueba con la que hay aquí. Esta esta probada, yo la he simulado en MPLab y aplicado en algunos trabajos, y funciona correctamente solo hay que ver como implementarla correctamente.


sos un groso suky llebaba noches sin poder dormir hasta que estudie tu libreria y la implemente( lo curioso es que cuando la vez pensas por dentro haa era asi y las ideas fluyen) gracias


 

anything