Again, try to break it down into smaller sub-sections. Get it to absolute minimum - just the AD and the LCD displaying only the value in ADRESH in decimal. Or better yet, just the AD and no LCD. Run that in the debugger and see if you're getting the values you expect in ADRESH (0 - 255). Get that working and then add more.
By the way, to save a few lines in your code you can change this
Code:
TRISE = 0;
TRISD = 0;
TRISB = 0;
to this
Code:
TRISB = TRISD = TRISE = 0;