noInterrupts()

Описание

Отключает прерывания (можно повторно включить их с помощью interrupts()). Прерывания позволяют выполнять определённые важные задачи в фоновом режиме и включены по умолчанию. Некоторые функции не будут работать при отключённых прерываниях, а входящие данные могут быть проигнорированы. Прерывания могут немного нарушить тайминг кода, однако их можно отключить для особо критических участков кода.

Синтаксис

Используйте следующую функцию для отключения прерываний в программе:

noInterrupts()

Параметры

Функция не принимает параметров.

Возвращаемое значение

Функция ничего не возвращает.

Пример кода

Код показывает, как отключить и включить прерывания.

void setup() {}

void loop() {
  noInterrupts();
  // критический, чувствительный ко времени код здесь
  interrupts();
  // остальной код здесь
}

Примечания и предупреждения

Примечание

Обратите внимание, что отключение прерываний на платах Arduino с нативными USB-возможностями (например, Leonardo) приведёт к тому, что плата не будет отображаться в меню порта, поскольку это отключает её USB-функциональность.

См. также