Vai al contenuto
PLC Forum


Conversione


Messaggi consigliati

Inserito:

Ho acquisito da un convertitore un dato a 24 bit che ho immagazzinato in tre registri da 8 bit del pic16f84, adesso il problema è che devo visualizzare questo valore in decimale su un display, qualcuno saprebbe darmi consigli su come procedere? Grazie


Inserita:

In che formato lo hai acquisito? Binario? BCD? E' fondamentale questo dato per darti un'idea su come fare

Inserita: (modificato)

Il convertitore mi fornisce il dato a 24 bit che io attraverso una apposita subroutine ho spezzato e immagazzinato in tre registri da 8 bit l'uno. Quindi sul primo registro ho la parte alta , sul secondo la parte centrale e sul terzo la parte bassa. Quindi l'acqusiizione è di tipo binario

Modificato: da arkydev
Inserita:

Ma la vuoi visualizzare in binario (esadecimale) o in decimale (bcd)?

Inserita:

La visualizzazione deve essere in decimale su un display LCD compatibile con lo standard hitachi

Inserita:

Dare tutti i dati è fondamentale per avere risposte serie. Alle volte si è costretti ad iniettare penthotal sodico per ottenere i dati :rolleyes: . Se avete segreti non fate domande al forum!

Comunque proviamo egualmete a dare una rispsota. Presumo che tu debba visualizzare in BCD, o almeno così sembra dal primo post.

In questo caso devi farti una conversione Binario - BCD. Con 24 bits il numero max è pari a +/-8.388.607. SI procede in questo modo:

test se il numero è >=1.000.000. Se si si procede alla divisione del numero per 1.000.000, si scrive il risultato nel registro corrispondente ai milioni. altrimenti si scrive 0.

Sul resto, o sul numero, si effettua il test se >=100.000. Si esegue la divisione per 100.000.

Si ripetono i passi fino alla divisione (test) per 10. il resto sono le unità

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...