Pchuqui_1:
Cuenta un poco más para que quieres hacer la conversión. Para ver si lo que necesitas es aprender a hacer la conversión de hex a bin. O más precisamente que es lo que quieres hacer con una función como esa. Ya que para guardar un valor en hex o en bin en una variable sólo debes poner el 0x o el 0b delante, respectivamente.
Tené presente que una variable declarada como de tipo entero se puede guardar un mismo valor pero representado en diferentes bases. Sea binaria, decimal, octal, o en hexa.
por ejemplo: para guardar en hexa:
char miVariable= 0xFF;
y para guardarla en binario asi:
char miVariable= 0b11111111;
etc. etc.
Es decir el mismo número 0xFF o el 0b11111111 o el 255 decimal se guarda en la variable representado en binario. Sólo que por comodidad el compilador te permite representar el dato en diferentes bases. Pero en definitiva el dato guardado en el pic es el mismo.
Ya que sea la base en la que esté internamente guardará el entero en binario.
También podrías tener guardado el dato en un array de chars como ser: "FF\0" . Pero para ello debés usar la función atoi() de C que convierte dicha cadena FF en un entero.
char Buffer[3]="ff\0";
miVariable=atoi(Buffer);
Supongo debes estar trabajando con números en formado BCD
quizá también te pueda ayudar este post.
http://www.todopic.com.ar/foros/index.php?topic=35228.0 Saludos.
Jukinch