TODOPIC

Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: diego3602 en 26 de Septiembre de 2014, 13:22:22

Título: Conversión de int a 2 bytes
Publicado por: diego3602 en 26 de Septiembre de 2014, 13:22:22
Hola amigos, estoy queriendo hacer algo muy básico pero no lo estoy logrando. Alguien me podría dar una mano con esto?
Lo que quiero hacer es desarmar un entero(16 bits) en 2 bytes (alto y bajo) yo hago el programa y cuando lo simulo en proteus para visualizar el resultado con la watch window me tira esas variables como que estan en 0. el programa es el siguiente:
por cierto, estoy programando en CCS.

#include <16f887.h>
#use delay (clock = 4000000)
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT

int valor=3FF;
int8 x1; //bajo
int8 x2; //alto

main()
{
valor=3FF;
x2=(valor>>8)&0xFF;
x1=valor&0xFF;
return 0;
}
Título: Re: Conversión de int a 2 bytes
Publicado por: Diego E. en 26 de Septiembre de 2014, 13:34:00
Hola, lo puedes hacer con la función make8

Ejemplo:

x1 = make8(variable_16b,0)
x2 = make8(variable_16b,1)

Saludos.