Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

AttachInterrupt(interrupt, function, mode)

Unsigned char | Область действия переменной и квалификаторы | Volatile | Утилиты | Цифровой ввод вывод | AnalogReference(type) | AnalogWrite() | ShiftOut() | PulseIn() | Delay(ms) |


Читайте также:
  1. Цветовой M-модальный допплер (Color M-mode)

Описание:

Определяет функцию, которая будет вызвана при срабатывании внешнего прерывания. Заменяет привязанную ранее функию. Большинство платформ имеют два внешних прерывания: с номерами 0 (на цифровом пине 2) и 1(на цифровом пине 3). Arduino Mega дополнительно содержит еще 4 внешних прерыванияhas: номер 2 (вывод 21), 3 (вывод 20), 4 (вывод 19), and 5 (вывод 18).

Параметры

interrupt: номер прерывания (int)

function: функция вызываемся при срабатывании прерывания. Следует учесть, что функция не должна иметь параметров и ничего не возвращать. Такая функция называется обработчиком прерывания.

 

mode определяет, на что должно срабатывать прерывание. Четыре константы устанавливают определеное действие:

LOW срабатывание прерывания, когда на выводе низкий уровень напряжения,

CHANGE срабатывание прерывания каждый раз прис менене уровня напряжения на выводе

RISING срабатывание прерывания по фронту - когда состояние вывода изменяется от LOW к HIGH,

FALLING срабатывание прерывания по спаду - когда состояние вывода изменяется от HIGH к LOW

 

Примечание:

Внутри функций прерывания delay() не работает, и значение,возвращаемое фнукцией millis() не инкрементируется. Передаваемые по последовательному порту данные могут быть потеряны. Следует объявить как volatile любые перемены, модифицируемые в обработчике прерывания.

Использование прерываний:

Прерывания отлично подходят для создания автоматических действий в программах и могут решать некоторые временные проблемы. Отличной задачей с использованием прерываний является программа управления енкодером. Чтобы быть уверенным, что ни один импульс от енкодера не будет потерян, будет сложно написать программу, выполняющую кроме слежения что-то еще. Повесив выход енкодера на внешнее прерывание можно с легкостью решить эту проблему.

 


Дата добавления: 2015-08-20; просмотров: 74 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Map(value, fromLow, fromHigh, toLow, toHigh)| DetachInterrupt(interrupt)

mybiblioteka.su - 2015-2024 год. (0.005 сек.)