ADC a 10 u 8 bit
El conversor siempre funciona a 10 ó 12 (en los pics con conversor de 10 y 12 bits), el truco para trabajar a 8 bits, consiste en usar el LEFT JUSTIFY.
Hablando de los de 10 bits (los más comunes) pongamos el siguiente ejemplo:
Rtdo (binario) = 00000010 00110011
Si se utiliza el right justify , es decir ADCON1,ADFM = 1 el resultado quedará
ADRESH = 00000010b
ADRESL = 00110011b
Si se utiliza el left justify , es decir ADCON1,ADFM = 0 el resultado quedará
ADRESH = 10001100b
ADRESL = 11000000b
Si quieres trabajar en 8 bits, pues pones el ADCON1,ADFM en 0, y solo lees y trabajas con el ADRESH.
Si quieres trabajar en 10 bits, pues ambas formas sirven, aunque lo recomendable s usar RIGHT JUSTIFY. Si utilizas LEFT JUSTIFY, deberás tener mayor cuidado y probablemente hacer alguna rotación para guardar los datos si piensas procesarlos
Hablando de los de 10 bits (los más comunes) pongamos el siguiente ejemplo:
Rtdo (binario) = 00000010 00110011
Si se utiliza el right justify , es decir ADCON1,ADFM = 1 el resultado quedará
ADRESH = 00000010b
ADRESL = 00110011b
Si se utiliza el left justify , es decir ADCON1,ADFM = 0 el resultado quedará
ADRESH = 10001100b
ADRESL = 11000000b
Si quieres trabajar en 8 bits, pues pones el ADCON1,ADFM en 0, y solo lees y trabajas con el ADRESH.
Si quieres trabajar en 10 bits, pues ambas formas sirven, aunque lo recomendable s usar RIGHT JUSTIFY. Si utilizas LEFT JUSTIFY, deberás tener mayor cuidado y probablemente hacer alguna rotación para guardar los datos si piensas procesarlos
Comentarios
Publicar un comentario