Code:
Ddrd = &B1111111                      'Pin PD5-0 als Eingang / 6 als Ausgang (LCD) konfigurieren
Damit setzt Du aber schon mal 7 der 8 Bits als Ausgang!! (Weche das sind, wenn man nur 7 mal "1" schreibt, weiß ich nicht).

Mit "PORTD = &B0111100" setzt Du 5 dieser Ausgänge auch noch auf High, von denen vermutlich einige über die Taster auf Masse geschaltet werden.

Das würde auch die Stromaufnahme erklären: "Nur" 130 mA finde ich ganz schön viel - auch mit LCD-Hintergrundbeleuchtung. Die ziehen bei meinen verwendeten Displays so um 10 bis maximal 20 mA, aber nicht mehr.

Könnte da der Fehler liegen?