Getting bottom row of black boxes with LCD Display on atmega32 MCU?
Your initialization looks completely wrong. Check some HD44780 datasheet. There is always a follow path for 8-bit mode and 4-bit mode initialization. Remember that you are not allowed to check 'Busy Flag' during the first three operations of initialization.