и подключим её к выводу порта В, к нулевому разряду. Откроем мастер Code Wizard AVR, и создадим новый проект:

Внимание! У Вас нет прав для просмотра скрытого текста.
Источник тактовых импульсов по умолчанию установлен системным, частоту таймера устанавливаем равной 3906 кГц, и поставим галочку прерывания по переполнению. Щас я объясню что почём.
Таймер 0 восьмибитный, то есть он считает с 0 до 255, при превышении числа 255 происходит переполнение, вырабатывается прерывание и значение таймера сбрасывается в 0. При генерации прерывания основная программа останавливается и происходит переход на подпрограмму обработчик прерывания по вектору записанному в начале памяти программ. Для каждого события отведён свой вектор. Основная программа не замечает прерываний, но она может ими управлять.
Давайте реализуем это всё на практике.
Внимание! У Вас нет прав для просмотра скрытого текста.
Далее заполним наш бесконечный цикл:

В бесконечном цикле программа проверяет нажатие кнопки, и переключает прерывания, разрешая или запрещая их. обратите внимание на команду #asm("sei")/#asm("cli"), это инструкция компилятору для вставки в данном месте команды ассемблера разрешения/запрещения прерывания. Таким образом мы запускаем/останавливаем бегущие огни.
Подробнее с прерываниями можно ознакомиться в даташите на ATmega8, даташит можно найти в "Справочнике" на нашем сайте.
Продолжение следует...
Александр
Камрад, рассмотри датагорские рекомендации
🌼 Полезные и проверенные железяки, можно брать
Опробовано в лаборатории редакции или читателями.
Начать сначала
Изучить правила
Написать админу
Войти
Зарегистрироваться
RSS
YouTube
Трансформатор R-core 30Ватт 2 x 6V 9V 12V 15V 18V 24V 30V
Паяльная станция 80W SUGON T26, жала и ручки JBC!
Отличная прочная сумочка для инструмента и мелочей
Хороший кабель Display Port для монитора, DP1.4
Конденсаторы WIMA MKP2 полипропилен
Трансформатор-тор 30 Ватт, 12V 15V 18V 24V 28V 30V 36V
SN-390 Держатель для удобной пайки печатных плат
Панельки для электронных ламп 9 пин на плату, керамика
