Использование прерываний для управления процессами в PIC24


Во второй главе для управления светодиодами применялись макросы задержки, они “типа” стопорили работу процессора на пол секунды, после чего, контроллер выполнял необходимые команды по переключению светодиодов  и опять занимался тем что ожидал. в реальной жизни это непозволительная роскошь. Если контроллеру необходимо выполнять обработку информации, то наши задержки будут только стопорить его основную работу.

Для решение этой проблемы можно использовать прерывания, которые формирует аппаратный таймер и который работает независимо от функционирования центрального процессора. Одно из решений задачи, контроллер занимается основной задачей и циклически проверяет флаг который устанавливается когда выполняется прерывание от таймера. Если флаг установлен выполняется процедура “мигания” светодиодами  Если нет выполняется основная задача.

Основные различия от предыдущего проекта это при настройки таймера включение прерывания от таймера TMR1.

Создание функции прерывания от таймера TMR1.

А сам главный цикл программы теперь будет выглядеть так:

Расчет периода прерываний для таймера TMR1 (смотри в описании по работе с таймером).


Загрузка проекта

Значок

Использование прерываний для управления процессами в PIC24 45.72 KB 719 downloads

Использование прерываний для управления процессами...


Это может быть интересно

  • Проект с использованием MCC часть 08Проект с использованием MCC часть 08
    И так создадим проект в котором при помощи двух кнопок мы сможем управлять яркостью светодиодов. При использовании МСС у нас лафа полная, добрые дяди с Microchipa подготовили функции, которыи позволяет …
  • Проект с использованием MCC часть 09Проект с использованием MCC часть 09
      Эта часть будет посвящена созданию практического проекта управления освещение. Тех задание: Два выхода управления ШИМ – светодиодным освещением. Две кнопки управления, каждая кнопка управляет, своим каналом, логика самая простая, нажимаем …
  • LED модуль P10C4V12LED модуль P10C4V12
    LED панели на обычных регистрах типа 74HC595. Они выпускаются как монохромные так двух и полно цветные, особенность, что они предназначены для текстовой информации и имеют один уровень яркости. Общую яркость панелей легко …
  • Интерактивные LedИнтерактивные Led
    Тема проекта   продолжение следует…. Это может быть интересно Метки:LED
  • Мультимедийная сеть – AVC-LAN TOYOTAМультимедийная сеть – AVC-LAN TOYOTA
    AVC LAN – протокол обмена данными мультимедийных систем автомобиля. Кодирование данных. При кодировании различаться три типа данных : преамбула – её назначение, это сообщение устройствам на шине, что начинается передача данных. бит 0 …
  • REFERENCE CLOCK OUTPUT MODULEREFERENCE CLOCK OUTPUT MODULE
    REFERENCE CLOCK OUTPUT MODULE Модуль формирования опорного тактового сигнала Модуль опорного тактового сигнала обеспечивает возможность посылать сигнал синхронизации на тактовый опорный выходной контакт или контакты (CLKR) в зависимости от конфигурации выводов …
  • ch-светомузыка от теории до реализацииch-светомузыка от теории до реализации
    Сразу оговоримся технология или теория ch-светомузыки, это постоянно развивающийся процесс и то что будет сказано сегодня завтра может быть опровергнуто и считаться ошибочным. Назовем само решение проблемы автоматического преобразования или …
  • Проект с использованием MCC часть 10Проект с использованием MCC часть 10
    Алгоритм управления освещением от нажатия кнопки. Обработка удержания кнопки: Мы должны проверить кнопка в настоящий момент нажата и флаг удержания установлен, если да Проверить таймер удержания “отработал” – это значит, …
  • Часы + Календарь + Термометр + …Часы + Календарь + Термометр + …
    Часы + Календарь + Термометр + Индикатор влажности + Секундомер + Дистанционное управление на ИК лучах (пульты на RC-5 протоколе) + Автоматическая регулировка яркости + Возможность вывода данных через USB, на плате ILLISSI_B4_primum …
  • Мониторинг температурыМониторинг температуры
    Настоящий проект создан как обучающий с применением библиотек ds18b20 и LCDHD44780 и компилятора Microchip MPLAB XC8 C Compiler V1.12. Если необходимо иметь информацию по состоянию температуры в помещении или в здании, с количеством до 6 точек (16), то вы сможете …


Translate »