Nein R/W hab ich net auf Ground gelegt. Auch nicht die nicht angeschlossenen Datenpins.

So ich hab mal auf
https://www.roboternetz.de/phpBB2/viewtopic.php?t=10766
bisl gelesen und dementsprechend was zusammengebastelt:

Code:
$regfile = "m32def.dat"
$crystal = 16000000
Config Lcd = 20 * 4a
Dim Zeichen As Byte

Declare Sub Lcdwrite

'Pins des LCD-Modules setzen ggf. an eigene Anschlüsse anpassen

   Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4
   Initlcd


   Call Lcdwrite(&B00101100)
   Waitms 5

   Call Lcdwrite(&B00001001)
   Waitms 5

   Call Lcdwrite(&B00101000)
   Waitms 5

   Call Lcdwrite(&B00000110)
   Waitms 5

   Call Lcdwrite(&B00001100)
   Waitms 5

Cls
Locate 1 , 1
Lcd "Hallo Welt"

   'Schreibt die Initialisierungs - Bits zum LCD

   Sub Lcdwrite(byval Zeichen As Byte)

     ' Höherwertiges Nibble setzen
     If Zeichen.4 = 1 Then Portc.4 = 1 Else Portc.4 = 0
     If Zeichen.5 = 1 Then Portc.5 = 1 Else Portc.5 = 0
     If Zeichen.6 = 1 Then Portc.6 = 1 Else Portc.6 = 0
     If Zeichen.7 = 1 Then Portc.7 = 1 Else Portc.7 = 0
     ' Höherwertiges Nibble übertragen
     Portc.3 = 1
     Waitms 1
     Portc.3 = 0
     Waitms 1

     ' Niederwertiges Nibble setzen
     If Zeichen.0 = 1 Then Portc.4 = 1 Else Portc.4 = 0
     If Zeichen.1 = 1 Then Portc.5 = 1 Else Portc.5 = 0
     If Zeichen.2 = 1 Then Portc.6 = 1 Else Portc.6 = 0
     If Zeichen.3 = 1 Then Portc.7 = 1 Else Portc.7 = 0
     ' Niederwertiges Nibble übertragen
     Portc.3 = 1
     Waitms 1
     Portc.3 = 0
     Waitms 1

   End Sub
Allerdings kommt beim Kompilieren ein Fehler wo drin steht:
Incorrect number of parameters und zwar in dieser Zeile:
Call Lcdwrite(&B00101100)