26
Процедура опроса источников прерываний с целью выделения наиболее
приоритетного (полинг/polling) может быть реализована как на аппаратном, так
и на программном уровнях.
Программный полинг реализуется специальной программой, которая
последовательно опрашивает триггеры запросов, объединенных, как правило, в
единый регистр с целью поиска первого установленного бита.
Аппаратный полинг может быть реализован либо на
основе многотактной
схемы, в основу которой положен двоичный счетчик, либо с помощью
однотактной схемы, которую обычно называют дейзи-цепочка.
Отношение процессора к поступившим запросам прерываний может быть
выражено с помощью одного из двух механизмов:
• механизм масок;
• порог прерываний.
1.2.5 Часы реального времени
Во многих, сравнительно мощных микроконтроллерах есть встроенный
блок часов реального времени (Real-Time Clock, RTC). Часы позволяют
автоматически отслеживать переход через границу минут, часов, суток,
отслеживают високосные года и автоматически переходят на летнее время [5].
Как правило, блок RTC создают на элементной базе, обеспечивающей
пониженное энергопотребление. Для подсчета времени в RTC используются
специальные кварцевые резонаторы с частотой 32,768 кГц. У
микроконтроллера обычно существует возможность подключения
дополнительного электропитания (например, литиевой батарейки или
ионистора). Пример микроконтроллера со встроенным RTC – Philips LPC 2000,
на базе ядра ARM7. На этом контроллере построен учебный стенд SDK-2.0.
Для того, чтобы часы реального времени могли выдавать точное
астрономическое время, должны быть соблюдены следующие условия:
1. У часов должно быть собственное автономное питание, чтобы
кратковременные или длительные перебои с питанием
не приводили к
сбросу астрономического времени.
2. Для обеспечения точности хода, часы должны калиброваться, так как у
кварцевых резонаторов есть некоторый разброс параметров.
3. Точность хода часов зависит от параметров окружающей среды. Больше
всего на точность хода влияет температура, так как при изменении
температуры немного изменяется частота кварцевого резонатора. Для
обеспечения точности хода необходимо предусмотреть калибровочные
значения для различных температурных диапазонов.
Необходимо помнить, что часы реального времени не являются абсолютно
надежным устройством. Проблемы могут возникнуть как на уровне интерфейса
с часами (у большинства RTC нет контроля целостности передаваемых