Категории
Самые читаемые
onlinekniga.com » Компьютеры и Интернет » Программирование » Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - Стивен Барретт

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - Стивен Барретт

Читать онлайн Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - Стивен Барретт

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 54 55 56 57 58 59 60 61 62 ... 150
Перейти на страницу:

4.16.2. Буферированные каналы входного захвата

Четыре буферированных канала входного захвата оснащены вторым регистром данных. В результате, канал может запомнить два момента времени, которые соответствуют двум последовательным событиям на входе канала. Флаг события канала устанавливается после того, как оба регистра данных канала будут заполнены кодами событий.

В приложении к буферированным каналам входного захвата принято использовать следующую терминологию. Первый регистр данных канала считается очищенным, если его значение переписано во второй регистр данных или считано программой. Второй регистр данных канала считается очищенным, если его значение прочитано программой.

Буферированные каналы входного захвата могут работать или в режиме временного хранения, или в режиме очереди. Режим работы назначается битом LATQ в регистре управления режимом входного захвата ICSYS. Если бит LATQ установлен в 1, то буферированные каналы работают в режиме временного хранения. Если же бит LATQ = 0, то для буферированных каналов назначается режим очереди.

В режиме временного хранения (LATQ = 1) текущий код счетчика временной базы запоминается в первом регистре данных при изменении входного сигнала, на которое настроен детектор события. Далее этот код автоматически переписывается во второй регистр данных при наступлении одного из трех событий:

• Код 16-разрядного вычитающего счетчика MCCNT достиг $0000;

• В счетчик MCCNT под управлением программы вписан код $0000;

• Бит ICLAT в регистре управления вычитающим счетчиком MCCTL (рис. 4.50) программно установлен в 1.

Рис. 4.50. Аппаратные средства буферированного канала входного захвата — режим временного хранения

В режиме временного хранения биты управления NOVWn действуют также, как и небуферированных каналах (см. 14.6.1)

В режиме очереди (LATQ = 0) и при NOVWn = 0 событие входного захвата вызывает автоматическую перезапись содержимого первого регистра данных канала во второй регистр данных, а в первый регистр данных загружается текущий код счетчика временной базы (рис. 4.51). Если буферированный канал работает в режиме очереди и бит NOVWn = 1, то и первый и второй регистры данных не запоминают момента наступления события, если они не очищены, т.е. не были считаны программой до наступления события.

Рис. 4.51. Аппаратные средства буферированного канала входного захвата — режим очереди

4.16.3. Особенности счетчиков событий

Модуль таймера EST оснащен четырьмя 8-разрядными счетчиками событий (рис. 4.52). Счетчики событий могут быть объединены попарно, тогда они образуют два 16-разрядных счетчика события. Так же, как и каналы захвата, счетчики событий могут работать или в режиме временного хранения, или в режиме очереди (рис. 4.52).

Рис. 4.52. Аппаратные средства счетчика внешних событий в составе таймера ECT

4.16.4. Регистры управления модуля EST

На рис. 4.53 приведен формат регистров модуля таймера EST, которые отсутствуют в рассмотренном ранее модуле TIM. Адреса регистров указаны как для МК BE32 семейства 68HC12, так и для микроконтроллеров семейства HCS12. Приведенные адреса можно рассматривать как абсолютный адрес, если в проекте используется настоящий физический адрес начала блока регистров $0000. Если же блок регистров перемещен в другое, виртуальное адресное пространство, то указанные адреса следует рассматривать как смещение адреса регистра относительно адреса начала регистрового блока.

Рис. 4.53. Формат регистров модуля ECT

Регистр управления порядком перезаписи

Регистр управления порядком перезаписи ICOVW (Input Control Overwrite Register) располагается в памяти МК по адресу $00AA/$002A. Формат регистра представлен на рис. 4.53. Регистр содержит восемь битов NOVWn (n — номер канала). Если бит NOVWn = 0, то первый и второй регистры данных канала входного захвата с номером n могут быть автоматически перезаписаны при наступлении очередного события входного захвата. Если же бит NOVWn = 1, то регистры данных канала не могут быть перезаписаны, если они предварительно не были очищены, т.е. считаны под управлением программы.

Регистр управления режимом входного захвата

Регистр управления режимом входного захвата ICSYS (Input Control System Control Register) содержит бит разрешения буферированного режима в каналах BUFEN и бит выбора режима работы буферированных каналов LATQ (временного хранения или очереди). Если бит BUFEN установлен, то работа второго регистра данных и буферного регистра счетчика событий буферированных каналов модуля таймера разрешена. Если бит LATQ равен 1, то буферированные каналы входного захвата работают в режиме временного хранения, при LATQ = 0 эти каналы работают в режиме очереди.

Регистр управления счетчиком задержки

Регистр управления счетчиком задержки DLYCT (Delay Counter Control Register) разрешает вставку регулируемого временного интервала между моментом распознавания детектором события изменения входного сигнала и интерпретацией этого изменения как события входного захвата со всеми последующими действиями аппаратных средств канала таймера. Событие входного захвата будет распознано, если логический уровень сигнала по истечении временной задержки будет противоположен уровню сигнала перед запуском счетчика задержки. Такое решение позволяет повысить устойчивость входов к шумам на фронтах переключения. Длительность задержки определяется битами DLY1:DLY0. При DLY1:DLY0 = 00 задержка не вставляется. При DLY1:DLY0 = 01 задержка равна 256 периодам сигнала P clock системы тактирования, при DLY1:DLY0 = 10 задержка составляет 512 периодов, при DLY1:DLY0 = 11 — 1024 периода того же сигнала.

Регистр управления 16-разрядным вычитающим счетчиком

Регистр управления вычитающим счетчиком MCCTL (Modulus Down-Counter Control Register) предназначен для задания режима работы 16-разрядным вычитающим счетчиком с изменяемым коэффициентом счета. Если бит MODMC установлен в 0, то счетчик уменьшает код, начиная с предварительно записанного значения до 0, затем останавливается. Если бит MODMC равен 1, счетчик считает непрерывно. При достижении кода $0000, он автоматически перезагружается кодом, записанным в регистр коэффициента счета MCCNT.

Регистр коэффициента счета вычитающего счетчика

Регистр коэффициента счета вычитающего счетчика MCCNT (Modulus Down-Counter Register) содержит изменяемый программно коэффициент счета 16-разрядного вычитающего счетчика.

Регистр флагов вычитающего счетчика

Регистр флагов вычитающего счетчика MCFLG (Modulus Down-Counter Flag Register) содержит флаг обнуления счетчика MCZF. Этот флаг устанавливается в 1, когда код счетчика становится равным $0000. Флаг MCZF сбрасывается посредством записи в его разряд 1.

4.17. Обмен информацией в последовательном коде: многофункциональный последовательный интерфейс 

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

В МК семейства 68HC12/HCS12 обмен в последовательном коде обеспечивает модуль многофункционального последовательного интерфейса (MSI — Multiple Serial Interface). Этот модуль содержит в себе две независимых подсистемы последовательного обмена: контроллер асинхронного обмена SCI (Serial Communication Interface) и контроллер синхронного обмена SPI (Serial Peripheral Interface). Каждый из контроллеров обслуживают линии порта S, для которых эта функция является альтернативной.

Рис. 4.54. Два наиболее распространенных типа последовательных интерфейсов

Контроллер SCI поддерживает полнодуплексный обмен в асинхронном режиме с форматом кадра, который совместим с последовательным интерфейсом персонального компьютера RS-232. Термин полнодуплексный означает, что в один и тот же момент времени один и тот же контроллер SCI может как принимать, так и передавать информацию. Термин асинхронный характеризует способ передачи данных, при котором дополнительный сигнал синхронизации, подтверждающий наличие очередного бита данных на линии, не используется. Следовательно, синхронизация между обменивающимися устройствами отсутствует. Для однонаправленной асинхронной передачи информации между двумя устройствами потребуется всего линия связи, что отражено на рис. 4.54.

1 ... 54 55 56 57 58 59 60 61 62 ... 150
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - Стивен Барретт.
Комментарии