Я бы вот эту функцию переписал следующим образом:
void write(uint8_t n)
{
n<<=4;
LCD_PORT&=n; //выставить значение на пины управления дата битами
E1; //линию Е в 1
asm("nop"); //пропуск такта
... // столько раз, чтобы высокий уровень "E" был >= 1 мкс
asm("nop"); //пропуск такта
E0; //линию Е в 0
LCD_PORT|=DATA; //между обращениями Dx = "1"
}
Этот вариант меня вполне устроит.
То есть тот инструмент, которым редко пользуемся, отключаем и убираем в коробку. При этом доставать и подключать нужный инструмент ИМХО удобнее, чем ставить еще один габаритный девайс с нужным инструментом на рабочий стол.
Рекомендуемые сообщения