Empeza por quitarle a todos los valores los
""Recorda que para C esto: "HOlA" es una string, entonces esto:
OSCCON = "0b01010000" ;// clock 2MHz
deberia ser:
OSCCON = 0b01010000; // clock 2MHz
Los tris te funcionan por que solo pusiste el numero
A = 0x10 ; // A = 16 en hexadecimal
A = 0b0001000; // A = 16 en binario
A = 020; // A = 16 en octal
char A[10] = "0b0001000"; // es igual a: A[10] = {'0','b','0','0','0','1','0','0','0','0'}
o si lo preferis no en ASCII y en hexadecimal es
A[10] = {0x30,0x61,0x30,0x30,0x30,0x31,0x30,0x30,0x30,0x30}
#include <stdio.h>
#include <stdlib.h>
No creo que exista necesidad de usarlas... Y si queres acceso a las plib, no se si es necesario agregar el include a plib.h, aunque creo que el xc.h ya los agrega. Pero como dije CREO, no estoy seguro.