Autor Tema: Conversión de int a 2 bytes  (Leído 1670 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado diego3602

  • PIC10
  • *
  • Mensajes: 10
Conversión de int a 2 bytes
« 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;
}

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: Conversión de int a 2 bytes
« Respuesta #1 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.