Como paso 16 bits a un par de 8 bits en Proton Development suite

Estado
Cerrado para nuevas respuestas.
Hola compañeros foreros.. Soy nuevo en la pagina y he visto las grandiosas mentes que por aqui circulan, y queria saber si alguna de ellas me podrian ayudar en este pequeño estancamiento que tengo.

Para usar el TLC5615, el cual es un convertidor DAC, y me pide enviar los datos de 16 bits en un par de dos de 8 bits.

se que en CCS la forma de dividir uno de 16 Bits en dos de 8 bits, se puede realizar con el "make8()"

La pregunta es.. Alguno sabria decirme como hacerlo en el "Proton Development Suite?..
 
No se que es el proton este, pero si usa C lo puedes hacer mediante desplazamientos de bits, en el CSS tambien se hace asi, no sabia que existia el make8 que mencionas.

digamos que si tu tienes una variable de 16bits y otra de 8bits y haces un var8L=var16 solo se copian los 8 ultimos bits de var16. Con eso ya tendrias copiada la parte baja de los 16 bits.
Para la alta puedes hacer var8H=var16>>8; esto te desplaza 8 posiciones los bits de izk a derecha (lo demas se sustituye por 0s), por lo cual si tienes 1100110011111111 se quedaria en 0000000011001100, ya con eso tendrias var8H y var8L.

Si el soft que usas usa C seguramente sera igual, si no busca en el google con el nombre del soft y pon "desplazamiento de bits".
 
Mmm.. interesante opción. La verdad no lo habia pensado así. Aunq es una opción un poco engorrosa, me daria la respuesta que estoy buscando. De veras muchisimas GRACIAS.

y el Proton es un software de programación de microcontroladores con lenguaje BASIC. Es EXCELENTE. Pero bueno, entre gustos y colores, quiza muchos lo vean algo arcaico teniendo el C.
 
en basic ya nose como se hara el desplazamiento de bits, pero si quieres un consejo aprende C es bastante mas potente y mas optimizado, aun asi para aprender basic esta bien, yo empece con pascal.

Tampoco es tan engorroso seria asi:

char variable8L, variable8H;
int variable16;
variable8L=variable16;
variable8H=variable16>>8;

2 simples lineas :LOL:
Tambien existen mas formas como declarar 2 variables de 8 bits como puntero y señalar a la direccion de memoria, seria algo asi (esto si es mas engorroso, pero muy util y mas optimizado);

int var16;
char *varH, *varL;
varH=&var16;
varL=&var16+8;

Esto en basic si existe, lo que nose si sera igual.
 
Estado
Cerrado para nuevas respuestas.
Atrás
Arriba