logo
HCS12 с применением языка С - royallib

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. Аппаратные средства буферированного канала входного захвата — режим очереди