Оформи код соответствующим тэгом
Пишу код, мне нужно избавиться от цикла While, как это сделать?
Пример кода:
void Start() {
byte schet = 0;
static uint32_t tmr;
if (PortM == 1 && !Zajig ) // Если в порт пришла 1 и зажигание включено
{
while (1) // Заходит в цикл
{
if (schet == 2) // Если равно двум
{
schet = 0; // Обнуляй счетчик
break; // Выход из цикла
}
if (schet < 2 && millis() - tmr >= 800) {
tmr = millis();
digitalWrite(change, ledOFF = !ledOFF); //Заводка Двигателя
mySerial.println("Change");
schet++;
}
}
}
}
Если я добавляю If вместо цикла вайл, то у меня каждый раз идет проверка и каждый раз в порт надо отправлять 1, чтоб менялось состояние, а мне нужно, чтоб она и проверяла что приходит в порт одновременно и с выполнением кода. Помогите, никак не могу разобраться.)
Пример кода:
void Start() {
byte schet = 0;
static uint32_t tmr;
if (PortM == 1 && !Zajig ) // Если в порт пришла 1 и зажигание включено
{
while (1) // Заходит в цикл
{
if (schet == 2) // Если равно двум
{
schet = 0; // Обнуляй счетчик
break; // Выход из цикла
}
if (schet < 2 && millis() - tmr >= 800) {
tmr = millis();
digitalWrite(change, ledOFF = !ledOFF); //Заводка Двигателя
mySerial.println("Change");
schet++;
}
}
}
}
Если я добавляю If вместо цикла вайл, то у меня каждый раз идет проверка и каждый раз в порт надо отправлять 1, чтоб менялось состояние, а мне нужно, чтоб она и проверяла что приходит в порт одновременно и с выполнением кода. Помогите, никак не могу разобраться.)