TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: matucho en 06 de Septiembre de 2012, 13:06:15

Título: Crear y usar estructuras y uniones en XC8
Publicado por: matucho en 06 de Septiembre de 2012, 13:06:15
Hola usuarios de este foro. Estube leyendo los temas de estructuras y uniones en este foro, pero lamentablemente no logre solucionar mis problemas, por eso decidi crear un nuevo tema.
Estoy trabajando en MPLAB X con el complilador XC8 (vers 1.10) quiero crear una variable del tipo "int" (16bits) y necesito manejar esta variable y ademas manejar cada uno de los bits que contiene, tal como uno maneja un puerto, por ejemplo PORTA
Si quiero hacer cualquier operacion con el registro PORTA simplemente pongo por ejmeplo:
PORTA = 0xFF;
a = PORTA * 5

Si quiero operar con los bits pongo por ejemplo:
PORTAbits.RA0 =1;
if (PORTAbits.R7) {...}

Lo que yo necesito hacer es muy similar, quiero definir una variable:
int var;

luego operar con la variable "var", por ejemplo:
var = 0xFFFF;
a = var * 5;

Y ademas operar con los bits de la variable "var":
varbits.V0 = 0;
if(varbits.V15) {...}


Pero antes de poder manejarlos necesito definir una estructura y union verdad? como lo hago? aqui es donde tengo el problema.


Probe varios egemplos que fui encontrando en el foro y no pude hacerlo andar. Posiblemente es q no estoy entendiendo bien la sintaxis de las estructuras y uniones.

Desde ya muchas gracias.
Título: Re: Crear y usar estructuras y uniones en XC8
Publicado por: Suky en 06 de Septiembre de 2012, 13:44:11
Hola! Podes agregar el archivo adjunto al proyecto y utilizar UINT16_VAL para declarar tu variable. Con ello tienes acceso por byte o por bits. En MPLABX colocas el [Nombre variable]. ya te sale las opciones declaradas  ;-)


Saludos!
Título: Re: Crear y usar estructuras y uniones en XC8
Publicado por: matucho en 06 de Septiembre de 2012, 20:51:51
Genial, viene con esa libreria incluida y todo! Muchas gracias! Ya la voy a probar!