void ShowError(uint8_t ErrorClass, uint8_t ErrorCode) { timer_stop(-1); // stop all timers OutDataPort(0); // reset all ports state.bits.error=1; state.bits.started = 0; if (state.bits.config == 1) { StopMenu(); state.bits.config = 0; } char buf[6]; int16_to_str(ErrorCode+1, buf, 0x30); // bcd convertion lcd_clear(); ShowCmd(ErrorCode); lcd_pos(0x19); lcd_out((char[]){79,193,184,178,186,97,33,0}); // "Ошибка!"
int LPTIOInterface::OutDataMask(int mask, int val) { int ret_val; if (val == 0) { last_data &= ~mask; } else if (val == 1) { last_data |= mask; } else { last_data ^= mask; } ret_val = OutDataPort(last_data); return ret_val; }
void Set_Control_Byte(uint8_t data) { ControlPortState = data; // запоминаем состояние порта // OutDataPort(0); // очищаем значения порта OutDataPort(data); // выставляем значения порта lcd_pos(0x0e); lcd_hex(ControlPortState); }