У ТС же еще одна (другая) проблема - он не использует чтение и проверку бита готовности, но при этом и не выдерживает необходимые паузы между командами в соответствии требованиями. Пауза должна быть больше, чем минимальное время цикла записи, но не менее, чем время выполнения предыдущей команды. Для чтения бита готовности достаточно выдерживать паузу цикла записи и чтения. См. диаграмму из даташита SPLC780D1.
Я по возможности обычно использую режим чтения и проверку готовности. Поэтому даже на графическом LCD 128*64 полный цикл обновления экрана у меня занимает меньше 1 мс. Можно мультики крутить, если температура комнатная и сами кристаллы не сильно тормозят.