Добрый ден. Существует ли какая-нибудь возможность досрочного окончания работы функции delay? Что-то по типу преждевременного return.
Кто или что мешает просто посмотреть на текст функции?
Если речь том, что стоит в IDE по умолчанию, то вот она функция delay, смотрите сами есть там возможность выхода или нет. Я не вижу ничего подобного.
void delay(unsigned long ms)
{
uint32_t start = micros();
while (ms > 0) {
yield();
while ( ms > 0 && (micros() - start) >= 1000) {
ms--;
start += 1000;
}
}
}
Тогда такой вопрос. Как можно реализовать таймер на 3 секунды с возможностью досрочного выхода, чтобы при этом подавались импульсы с мкр секундами. Можно ли это сделать через millis и delay?
Мкр и миллис несовместимы.
Прошу прощения, micros
Вот этого
я не понял
А вот это
Да, хоть как. Можно, например взять этот же текст delay и в условие в пятой строке добавить
... && <проверка, что выходить ещё не пора>
Допустим, мне надо чтобы в течение 3-х секунд мигал светодиод с заданной чистотой, при этом надо по минимому использовать глобальные переменные.
Вполне допускаю. Вопрос в чём?
Судя по всему, нужен банальный блинк без дилей
Промойте изопропанолом до нужной чистоты и пусть мигает на здоровье.
Протирать полезнее этиленом
Частота мигания меняется по ходу программы. Так что не получится
Что вы имеете ввиду под банальным блинком? Использование micros и millis?
У вас каша в голове. Пока она не устаканится, ничего вы сделать не сможете. Поэтому отложите свою задачу и займитесь теорией. И да, если вам кто-то говорил, что " Ардуино - это просто" - он вас жесточайше обманул
Ваша задача должна закрываться этими средствами. Если не закрывается - проблема в постановке задачи
Утарелится.
Или укастрюлится ))
Можете тогда указать хороший источник теории?
Тебе!, ТС.
Их тебя ждала, варум ты не пришёл, их пошла на хаус, с неба вассер шёл.
Дали же источник - блинк без делей.