В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > ARM
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


16.3 Функциональное описание

Интервальный таймер позволяет формировать сигналы прерывания через строго определенные интервалы времени с целью обеспечения полноценной работы встраиваемых операционных систем реального времени (RTOS).

В составе интервального таймера имеет счетчик с очисткой при достижении заданного значения и автоматическим обнулением счетчика при его чтении. Таймер построен на основе одного основного 20-битного счетчика CPIV и одного дополнительного 12-битного счетчика PICNT. Оба счетчика тактируются от сигнала MCK/16.

Основной 20-битный счетчик CPIV производит счет от нуля и до определенного программируемого значения (переполнение), указываемого в поле PIV регистра режима PIT_MR. Как только содержимое этого счетчика достигает значения в поле PIV, то счетчик сбрасывается в ноль и производится инкрементирование основного счетчика интервального таймера PICNT. Флаг состояния PITS в регистре PIT_SR вызывает формирование сигнала прерывания, если разрешено прерывание от интервального таймера (флаг PITIEN в регистре PIT_MR).

Запись нового значения в поле PIV регистра PIT_MR не вызывает сброс/перезапуск ни одного из счетчиков интервального таймера.

Как только при чтении регистра значения интервального таймера (Periodic Interval Value Register - PIT_PIVR) получены текущие значения полей CPIV и PICNT, то происходит сброс счетчика переполнения PICNT и очистка флага PITS, таким образом, подтверждая прерывание. Поле PICNT дополнительного 12-битного счетчика содержит число интервалов времени, прошедших с момента последнего прочтения регистра PIT_PIVR.

При чтении (для получения текущих значений полей CPIV и PICNT) регистра отображения интервального таймера (Periodic Interval Image Register - PIT_PIIR) не происходит ни сброс дополнительного счетчика (PICNT) и ни очистка флага PITS. Например, это удобно при отладке приложения: чтение регистра PIT_PIIR позволит избежать вызова прерывания от интервального таймера, так как это прерывание возникает только при чтении регистра PIT_PIVR.

С помощью флага PITEN в регистре PIT_MR может быть остановлена (разрешена) работа интервального таймера (сразу после сброса работа интервального таймера запрещена). Флаг PITEN становится активным только при CPIV = 0. На рис. 16-2 изображен механизм разрешения/запрета работы интервального таймера с помощью флага PITEN. Как только флаг PITEN сброшен, то работа интервального таймера по-прежнему продолжается до тех пор, пока содержимое счетчика CPIV не достигнет значения PIV. После чего произойдет очистка таймера и его остановка до то момента, пока не будет установлен флаг PITEN.

При переходе ядра в режим отладки интервальный таймер останавливается.

Механизм разрешения/запрета работы интервального таймера с помощью флага PITEN
Рисунок 16-2. Механизм разрешения/запрета работы интервального таймера с помощью флага PITEN



<--Предыдущая страница Оглавление Следующая страница -->