ПРЕДОСТОРОЖНОСТИ ПРИ РАБОТЕ СО СЧЕТЧИКАМИ

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

Будьте осторожны при записи в регистры счетчиков TIMER1 и TIMER2.

Изменение значения TIMER1 после инициализации HSI модуля может разрушить относительные ссылки между HSI событиями. Кроме того, изменение значений соответствующих регистров таймеров (TIMER1 или TIMER2) после инициализации HSO модуля может заставить HSO пропускать запрограммированные события или выполнять их в неправильном порядке.

Конфигурируйте счетчик 2 для функционирования в нормальном режиме (не в быстром режиме приращения).

Так как для полного сканирования CAM HSO требуется восемь временных состояний, счетчик 2, когда он используется как датчик времени для HSO, должен функционировать в нормальном режиме приращения (не в быстром режиме приращения).

Очистите бит FAST_T2_ENA(IOC2.0) для выбора нормального режима работы счетчика.

Конфигурируйте счетчик 2 для счета только в одном направлении.

Счетчик 2, когда он используется как датчик времени для модуля HSO, должен считать только в одном направлении, поскольку, если счетчик колеблется вокруг отметки времени выполнения команды, блокировка входов может происходить несколько раз.

Очистите бит T2UD_ENA(IOC2.1), чтобы сконфигурировать счетчик 2 как суммирующий счетчик.

Будьте осторожны при сбросе счетчика 2.

Не сбрасывайте счетчик 2 до того, как его значение достигнет наибольшего времени, запрограммированного в CAM. CAM задерживает ожидание события до соответствующего времени. Если запрограммированное значение счетчика никогда не достигается, событие будет оставаться отложенным, пока устройство не сбросится или CAM не очистится.

Когда счетчик 2 запрограммирован для сброса внешним источником, события программы должны происходить, когда счетчик равен единице, а не нулю.

Когда счетчик 2 сконфигурирован, чтобы сбрасываться внешним сигналом на счетном входе (IOC0.3=1), программные события не должны происходить, когда счетчик равен нулю. Если внешние источники - HSI.0 или T2RST (P2.3) сбрасывают счетчик 2, событие может не произойти. Внешние выводы сбрасывают счетчик 2 асинхронно, и счетчик может увеличиться до 1, прежде чем HSO сможет сравнить и распознать CAM запись. Программируйте события так, чтобы они происходили, когда счетчик 2 равен 1; это гарантирует, что HSO будет иметь достаточное время, чтобы распознать команду, записанную в CAM.

ФРАГМЕНТ ПРОГРАММЫ

;***Исследование пpoгpаммных задеpжек с использованием счетчика 1 ***

ldb WSR,#15 ; Пеpеключиться в HWindow 15

ld TIMER1,#0c000h; Загpузить значение счетчика в регистр TIMER1

ldb WSR,#0 ; Пеpеключиться в HWindow 0

jbc IOS1, 5, $ ; Ожидание пеpеполнения счетчика (тестирование бита)

********************************************************************

<<< Содержание >>>