Hola Miguel, para los comandos el retardo más largo es para limpiar display, que debe esperar 1.52 ms antes de enviarle un nuevo dato, yo en mis rutinas utilizo un retardo de 300uS entra cada caracter, yo creo que una de las mejores formas de comprender bien su funcionamiento es ponerlo a trabajar sin utilizar la librería, guiándose sólo por el datasheet así te puedes percatar bien de todo el protocolo de funcionamiento.
Si en algo te sirve te paso un ejemplo del LCD
Saludos.