Tja, wenn ich mir Deine Definitionen für die Steuerbits so ansehe, fällt mir auf, dass Du einfache die Pin-Nummern genommen hast, sehe ich das richtig? Das funktioniert aber nicht! Für LCD_E klappt es, das ist Pin 1,
für Pin 3(LCD_RS) musst Du 4 benutzen und für Pin 6(LCD_RW) 32.

Bei Deiner Definition aktiviert LCD_RS Pin 1 & 2, LCD_RW PIN 2 & 4 und LCD_E Pin 1.
(Ja ich weiß das die Pins eigentlich von 0 bis 7 gezählt werden )

Du musst Dir die Ansteuerung so vorstellen: Der AVR schreibt einen 8-bittigen Wert ins Port-Register und dieser Wert wird binär ausgegeben.
Da bei hat jeder Pin einen festen Wert(1,2,4,6,8,16,32,64 & 12, ob der Wert eines Pins dazu gehört oder nicht wird durch eine logische 1 am Pin signalisiert, die dazugehörigen Werte werden dann addiert.
Beispiel: Es soll 100 ausgegeben werde
PIN 0 1 2 3 4 5 6 7
Wert 1 2 4 8 16 32 64 128
Log 0 0 1 0 0 1 1 0
ergibt: 4 + 32 + 64 = 100, die PINs 2, 5 und 6 füren eine logische 1.

Warum hast Du die Pins eigentlich so verteilt?