Arduino:Библиотеки/Scheduler/yield(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
м (Замена текста — «<references />» на «<references /> {{Навигационная таблица/Arduino библиотеки}}»)
 
Нет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 70: Строка 70:


<references />
<references />
{{Навигационная таблица/Портал/Arduino}}


{{Навигационная таблица/Arduino библиотеки}}
[[Категория:Библиотека Scheduler]]
[[Категория:Библиотека Scheduler]]
[[Категория:Scheduler]]
[[Категория:Scheduler]]
[[Категория:Функция]]
[[Категория:Функция]]

Текущая версия от 12:26, 8 июля 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция 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();
}

См.также

Внешние ссылки