Вот часть кода:
static void setLedValue(int16_t value) {
seg3 = digitToLedValue(value % 10); //3 сегм
if (value >= 10) {
seg2 = digitToLedValue((value / 10) % 10); //2 сегм
} else {
seg2 = 0b00000000;
}
static void calculateAndShowSpeed(uint16_t lastTime) {
speed = (F_CPU / 1000L) * BASELENGHT / lastTime;
error=false;
errorFirst=false;
errorSecond=false;
if (speed >= 1000) {
setLedValue(speed / 10);
} else {
setLedValue(speed);
if (speed < 10)
{
seg2 = 0b00111111;
}
seg2 |= 0b10000000;
}
writeToEEPROM(speed);
}
if (value >= 100) {
seg1 = digitToLedValue((value / 100) % 10); //1 сегм
} else {
seg1 = 0b00000000;
}
}

