pues a mi nunca me funciono, por eso lo digo jajaja, pero seguro que se puede con printf(), aunque si mal no estoy hay que indicarle fin de envio o algo como \00 ... si no estoy mal es al principio y al final... pues con puts(); viendo la recepcion en una termina virtual me aparecia algo como \00 170 \00 .. donde 170 era el valor de la conversion adc.. pero nunca logre hacerlo con printf(); mas luego en matlab, leia bien el dato 170 y alli hacia el cambio a valores flotantes.... mas facil y menos errores en la tx.
pero si hacen funcionar el printf(); para tx serial, mucho mejor....