In a mode of 4 bits, on LCD symbols are not deduced all - LCD has not time to accept them and passes symbols. Therefore I have decided to use a mode of 8 bits.
It sounds like the data is coming too fast on your LCD.

You need a Delay of char command LCDdata, so that the LCDout will not throw out the data too fast for your LCD_DATAUS to slow down that output.

Dwayne