Leer temperatura de un PIC esclavo mediante Comunicación SPI

Saludos. Estoy empezando en este mundo de los microcontroladores y no sé cómo solucionar este problema:
Tengo dos PIC, un maestro y un esclavo, comunicados con protocolo SPI, en el maestro tengo 3 opciones, con la letra 'A' pide la temperatura, con la 'B' pide el estado de un switch y con la 'C' un contador.
M
i problema es que al pedir la temperatura al esclavo, se visualiza el valor pero en hexadecimal y cada vez que presiono la A primero aparece 01 y después el valor.
¿Có
mo podría hacer para que se vea la temperatura en decimal?.
Gracias de antemano.

CAPTURA.PNG
 

D@rkbytes

Moderador
¿Cómo podría hacer para que se vea la temperatura en decimal?
En este Foro no solemos consultar a la bola de cristal.
De mínimo se requiere que nos digas en qué lenguaje y entorno está escrito el programa.
Y si subes el proyecto dentro de un archivo comprimido en lugar de una imagen, sería mejor.
 
En este Foro no solemos consultar a la bola de cristal.
De mínimo se requiere que nos digas en qué lenguaje y entorno está escrito el programa.
Y si subes el proyecto dentro de un archivo comprimido en lugar de una imagen, sería mejor.
Una disculpa por no subir los archivos de mi proyecto, aqui los adjunto
y estoy usando lenguaje C en PIC C Compiler
 

Adjuntos

D@rkbytes

Moderador
OK. Ahora sí. Tu programa está escrito en C con el entorno PIC C Compiler de CCS
Mi problema es que al pedir la temperatura al esclavo, se visualiza el valor pero en hexadecimal
Me parece normal porque tú estás estableciendo que se muestre en formato hexadecimal.
Tienes esto:
C:
printf("Valor ADC = %X \n\r", resultado);
Si formateas con %X estarás mostrando el resultado en hexadecimal y con mayúsculas. Ejemplo: FF
%x mostrará el resultado en hexadecimal pero en minúsculas. Ejemplo ff
Un número antes de X indicará cuántos caracteres deberán ser mostrados. Ejemplo: %3F mostrará 0FF
¿Cómo podría hacer para que se vea la temperatura en decimal?
Estableciendo que el formato sea en decimal con "%d" (Variable con signo), "%u" (Variable sin signo) o con "%lu" si es que la variable es long.
De igual forma también se puede agregar un número antes del carácter de formato para indicar la cantidad de dígitos a mostrar.

Nota, estas cosas son básicas en el aprendizaje del lenguaje C y ya deberías conocerlas.
Si tienes más dudas sobre los tipos de formato en C puedes consultar la ayuda de PIC C.
Y si tienes duda sobre alguna instrucción puedes colocar el cursor en ella y presionar la tecla F1.

¿Más dudas sobre esto?
En el editor de PIC C Compiler presiona la tecla F1, en la pestaña Índice escribe printf, presiona la tecla Enter y ve lo que te mostrará.
 
Nota, estas cosas son básicas en el aprendizaje del lenguaje C y ya deberías conocerlas.
Si tienes más dudas sobre los tipos de formato en C puedes consultar la ayuda de PIC C.
Y si tienes duda sobre alguna instrucción puedes colocar el cursor en ella y presionar la tecla F1.

¿Más dudas sobre esto?
En el editor de PIC C Compiler presiona la tecla F1, en la pestaña Índice escribe printf, presiona la tecla Enter y ve lo que te mostrará.
La verdad estaba muy perdido con esto y últimamente he estado leyendo y aprendiendo mas al respecto, Muchas gracias por su tiempo amigo me ha ayudado mucho.
 

Temas similares


Arriba