you could look at nbit math or use a pic18 and long vars
you can glean a bit more precision breaking the calc up a bit
where 43200 counts would give 4709.2
Code:
frac = enc_counter.lowbyte * 1090
posn1 = div32 100 ;mm*100 ;mv 2790
posn2 = (enc_counter.highbyte&15) * 2791 ; mm*100 mv 41865
frac = (enc_counter.highbyte>>4) * 44657
posn3 = div32 100 ;mm mv6698
posn3= posn3 + (posn1+posn2)/100 ;mm
frac= ((posn1+posn2)//100 +5)/10 ;round it up
serout2 PORTa.0,84, [13,10,#enc_counter,9,dec posn3,".",#frac ]
Bookmarks