Саша ,сделай что то типа этого (проверка BUSY),и не нужно будет думать про задержки

Идет с ходу ,что под текстовый ,что под графический,что в прерывании ,что без.
Код
;Модуль для ЖКИ
.def LCD_reg = R20
.equ LCD_PORT_command = PORTC
.equ LCD_PIN_command = PINC
.equ LCD_DDR_command = DDRC
.equ LCD_PORT_data = PORTD
.equ LCD_PIN_data = PIND
.equ LCD_DDR_data = DDRD
.equ E = 2
.equ RW = 1
.equ RS = 0
.equ BUSY = 7
LCD_on:
push R16
in R16,LCD_DDR_command
ori R16,$07
out LCD_DDR_command,R16
ori R16,$FF
out LCD_DDR_data,R16
pop R16
ret
LCD_data:
sbi LCD_PORT_command,RS
LCD_command:
push R16
rcall LCD_pause
sbi LCD_PORT_command,E
ldi R16,$FF
out LCD_DDR_data,R16
out LCD_PORT_data,LCD_reg
rcall LCD_pause
cbi LCD_PORT_command,E
ldi R16,$00
out LCD_DDR_data,R16
out LCD_PORT_data,R16
cbi LCD_PORT_command,RS
sbi LCD_PORT_command,RW
rcall LCD_pause
sbi LCD_PORT_command,E
rcall LCD_pause
sbis LCD_PIN_data,BUSY
rjmp (PC-1)
cbi LCD_PORT_command,E
cbi LCD_PORT_command,RW
pop R16
ret
LCD_pause:
ldi R16,$10
dec R16
cpi R16,$00
brne (PC-2)
ret