Arduino:Библиотеки/Scheduler/yield(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) м (Замена текста — «<references />» на «<references /> {{Навигационная таблица/Arduino библиотеки}}») |
Нет описания правки |
||
Строка 71: | Строка 71: | ||
<references /> | <references /> | ||
[[Категория:Библиотека Scheduler]] | [[Категория:Библиотека Scheduler]] | ||
[[Категория:Scheduler]] | [[Категория:Scheduler]] | ||
[[Категория:Функция]] | [[Категория:Функция]] |
Версия от 11:15, 8 июля 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция yield()[1]
Будучи вызванной, передает управление другим задачам. В идеале yield() нужно ставить в функции, которым на выполнение требуется некоторое время.
Синтаксис
yield()
Параметры
Нет.
Что возвращает
Ничего.
Пример
#include <Scheduler.h>
int counter = 0;
int counter1 = 0;
void setup()
{
Serial.begin(9600);
Scheduler.startLoop(loop1);
}
void loop () {
analogWrite(9, counter);
counter++;
if (counter > 255){
counter = 0;
}
delay(33);
}
void loop1 () {
if (Serial.available()) {
char c = Serial.read();
if (c=='0') {
digitalWrite(2, LOW);
Serial.println("Led turned off!"); // "Светодиод выключен!"
}
if (c=='1') {
digitalWrite(2, HIGH);
Serial.println("Led turned on!"); // "Светодиод включен!"
}
}
yield();
}