And...

You may want to use a pot on pin #3 of the LCD so it can be adjusted.
I have a 2x16 lcd connected to a 16f877a and it only displays solid boxes on the first row.