static uint8_t pulse_e() { uint8_t data = 0; set_e(); _delay_ms(1); data = input_nibble(); clear_e(); return data; }
uint8_t input_byte(uint8_t rs, uint8_t en) { return input_nibble(rs, en) << 4 | input_nibble(rs, en); }
uint8_t input_byte(uint8_t rs) { return input_nibble(rs) << 4 | input_nibble(rs); }