Прекъсване на AVR контролер в Atmel AVR Studio, blablacode

Първото нещо, за това, което такова прекъсване.
Прекъсване (прекъсване) - е един вид функция, за да бъде изпълнена, когато сигналът за който контрольора.
Когато работите в AVR Studio са създадени с помощта на прекъсване ISR () макро. СИГНАЛ () и INTERRUPT (). Те отбелязаха функция като прекъсне треньор. Разликата между тях е, че прекъсва () и манипулатор функцията ISR () се определя за случая, когато общото разрешено прекъсване (процесора може да бъде прекъснато) и сигнал () за случая, когато общият прекъсването е забранено.

На тази над с и преминете към теорията на практика (въпреки че още ще бъде по-ниска от теорията).
Подобна схема ще се съберат в ISIS:

Прекъсване на AVR контролер в Atmel AVR Studio, blablacode

Както може би се досещате, че ще пиша за прекъсване (което се генерира от бутона), която ще се запали и да гасят диод.
Така че, отворен студио и да се създаде стандарт проект.
За да използвате прекъсва включват заглавния файл:

Съгласни сме, че прекратяването на (физически), няма да включват силата върху педала (както се прави погледнах), но само при смяна на знамето. При определени стойности, които ще се включва и изключва диод.
Нека да зададете този флаг в световен мащаб:

Сега декларира прекъсване:

Както можете да видите в макро скобите се наричат ​​прекъсне вектор. Този вектор показва, ще бъде генериран компилатора за всеки вход прекъсване. За INT1 - това SIG_INTERRUPT1. За ADCs (ADC) например е - SIG_ADC. (Пълен списък на перфектно описано в книгата "Юрий Shpak програмиране в C език за AVR и PIC микроконтролери.")
Сега към основната функция на нашата "програма".
Ние трябва да решим целия прекъсване INT1 и по-специално:

Прекъсване на AVR контролер в Atmel AVR Studio, blablacode

Мисля, че как да го преведе, и така ще разбереш.
Установяване на състоянието на прекъсване поколение на всеки "логична промяна на INT1".

Сега поставете цялото пристанище C като изход:

Е, това вече трябва да е ясно:

За да се изчака не е необходимо. Още повече, че тя намалява производителността. Но бих искал да.
Програмата е изцяло:

Ние събира и събира шестнадесетичен верига в Протей. Насладете се на прекъсване на работа при смяна на позицията на бутона.