Есть 4 метода Clock();Data();Temp();Hum();. Кусочек кода надо сделать без delay(). Как это можно реализовать? Не получается. Например сначала срабатывает Clock(),потом Hum(),снова Clock(),потом Temp() и Hum(). Код:
Clock();
delay(5000);
Data();
delay(2000);
Temp();
delay(2000);
Hum();
delay(2000);
Моя 1 попытка:
void loop() {
if (round(millis() / 5000) % 2 == 0) {
Clock();
}
if (round(millis() / 2000) % 2 == 0) {
Data();
}
if (round(millis() / 2000) % 2 == 0) {
Temp();
}
if (round(millis() / 2000) % 2 == 0) {
Hum();
}
}
2 попытка:
if ( millis() - time1 > 5000)
{
Clock();
time1 = millis();
}
if ( millis() - time2 > 2000)
{
Data();
time2 = millis();
}
if ( millis() - time3 > 2000)
{
Temp();
time3 = millis();
}
if ( millis() - time4 > 2000)
{
Hum();
time4 = millis();
}
3 попытка:
if ( millis() - time1 > 5000)
{
Clock();
time1 = millis();
}
else
{
Data();
}
if ( millis() - time2 > 2000)
{
Temp();
time2 = millis();
}
else
{
Hum();
}
Я бы сделал как-то так:
void loop() {
uint8_t cycle = (millis() / 1000) % 11;
if (cycle < 5) { Clock(); }
else if (cycle < 7) { Data(); }
else if (cycle < 9) { Temp(); }
else { Hum(); }
}
round(millis() / 1000)
Здесь деление и так целочисленное. Дополнительно округлять результат не нужно.
Вы можете использовать для каждого метода:
if( millis()-time > 2000) //2 сек к примеру
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
мне необходимо что бы программа(то есть форма) при запуске сразу находилась в правом верхнем углу
Ссылка для поделиться в одноклассники? Подскажите, как правильно сделать ссылку , чтобы поделить постом в одноклассники?
Подскажите можно сделать выборку на уровни запроса например мне нужно вывести все значения которые будут иметь такой вид PO-01202-1454 SELECT model FROM и выводились...