Регистр режима счётчика РСА (CMOD)
Содержит биты выбора источника входного сигнала таймера/счётчика CPS1 и CPS0, бит разрешения прерывания по переполнению счётчикаECF, а также биты CIDL - отключения таймер/счётчика во время режима холостого хода и WDTE (Watchdog Timer Enable) - разрешение сторожевого таймера для модуля 4. На рис. 2.17 эти биты описаны более подробно. Байтный адрес данного регистра - 0D9h, значение по сбросу - 00ххх000b.
MSB LSB
Рис. 2.17. Регистр режима РСА – CMOD
Регистр управления счётчика РСА (CON) Этот регистр содержит 2 бита, связанные с таймером/счётчиком РСА. Бит CF - устанавливается аппаратно - по переполнению счётчика. Бит CR включает или выключает счётчик. Остальные 5 бит данного регистра - флаги событий модулей сравнения/фиксации РСА. На рис. 2.18 эти биты описаны более подробно. Байтный адрес данного регистра - 0D8h, значение по сбросу - 00х00000b. MSB LSB
Рис. 2.18. Регистр управления счетчика PCA2.6.4. Модули сравнения/фиксации. · Каждый из 5 модулей сравнения/фиксации может быть запрограммирован на выполнение одной из 6-ти функций: · 16-битная фиксация, запускаемая по положительному фронту; · 16-битная фиксация, запускаемая по отрицательному фронту; · 16-битная фиксация, запускаемая по положительному и отрицательному фронту; · 16-битный программный таймер; · 16-битный высокоскоростной выход; · 8-битный широтно-импульсный модулятор. Дополнительно модуль 4 может использоваться как сторожевой таймер. Все модули могут быть запрограммированы в любых комбинациях вышеперечисленных режимов. Каждый модуль имеет регистр режима, именуемый ССАРМn (где n=0,1,2,3,4) и используемый для выбора функции конкретного модуля. Структура данных регистров показана на рис. 2.19. Адрес регистров ССАРМ0-ССАРМ4 равен, соответственно, 0DAh- 0DEh, значение по сбросу – х0000000b. Регистр управления РСА - CCON MSB LSB
Рис. 2.19. Регистр управления PCA Каждый модуль имеет пару байтных регистров сравнения/фиксации - ССАРnН (старший байт) и CCAPnL (младший байт). В данных регистрах происходит фиксация значения счётчика при наступлении события, соответствующего режиму работы модуля. В режиме "широтно-импульсного модулятора" (PWM) регистр ССАРпН управляет циклом выдачи импульсов. PCA имеет 5 режимов работы модулей (табл. 2.6). Режимы работы модулей сравнения/фиксации Таблица 2.6
16-битный режим фиксации. Фиксация содержимого РСА может происходить как по отрицательному, так и по положительному фронту (рис. 2.20), что делает РСА весьма гибким средством для измерения периодов, ширины импульсов, разности фаз и многого другого - сразу по 5-ти каналам. Установка битов CAPPn и/или CAPNn в соответствующем регистре ССАРМn влияет на выбор типа перепада (положительного или отрицательного) сигнала на входе СЕХ0n, по которому происходит фиксация значения счётчика. При определении на вышеуказанном выводе модуля РСА заданного перепада (отрицательного, положительного, либо и того и другого), 16-битное значение счётчика РСА (регистры CH/CL) аппаратно загружается в регистр хранения/фиксации CCAPnH/CCAPnL. Оно отражает состояние таймера/счётчика РСА в момент перепада. Рис. 2.20. 16-битный режим фиксации РСА После фиксации значения таймера в регистре происходит установка флага события модуля CCFn. Если установлен бит ECCFn регистра ССАРМn, то данный флаг может использоваться для генерации прерывания от РСА (если разрешено регистром IЕ). Произошедшее прерывание не очищает данный флаг, это должно делаться программно. В процессе обработки прерывания по фиксации значения, оно, естественно, должно быть сохранено в ОЗУ до прихода следующего момента "фиксации". Режим 16-битного программного таймера В режиме сравнения 16-битное значение таймера РСА сравнивается с 16-битным значением, предварительно загруженным в регистры хранения/фиксации ССАРnН и CCAPnL. Это сравнение производится 3 раза за машинный цикл (с частотой, эквивалентной максимальной входной, т.е 1/4 частоты тактового генератора). Данная функция включается установкой бита ЕСОМn в регистре режима. Функциональная схема работы модуля РСА в этом режиме изображена на рис. 2.21. Для режима программного таймера необходимо также установить и бит МАТn. При достижении равенства между таймером РСА и соответствующими регистрами CCAPnH/CCAPnL генерируется флаг события CCFn. При установлении флага прерывания ECCFn производится генерация прерывания от РСА. Флаг CCFn должен очищаться программно до возможного наступления следующего активного события. Во время процедуры обработки прерывания в регистры CCAPnH/CCAPnL могут быть записаны новые значения. Отметим, однако, что запись нового значения в регистр CCAPnL очищает бит ЕСОМn, временно запрещая функцию сравнения с целью недопущения неверного результата сравнения при обновлении этого регистра. Запись значения снова устанавливает данный бит и разрешает сравнение. На основании вышесказанного, пользовательское программное обеспечение должно вначале производить запись в регистр CCAPnL, а затем - в ССАРnН. Рис. 2.21. 16-битный режим сравнения: программный таймер и высокоскоростной выход Высокоскоростной выход - HSO В случае равенства значений таймера РСА и соответствующего регистра хранения/фиксации происходит изменение состояния СЕХn. Для переключения модуля в этот режим, помимо битов МАТn и ЕСОМn, должен быть установлен бит TOGn (Рис. 27). Как и в предыдущем режиме установка флага прерывания может быть разрешена установкой в "1" бита ECCFn. Инициирование прерывания происходит только после изменения состояния вывода СЕХn. Поэтому продолжительность выполнения процедуры обработки прерывания не влияет на точность выходного сигнала. Если пользовательская программа не изменяла значение регистров CCAPnH/CCAPnL во время обработки прерывания новое переключение произойдет после переполнения таймера РСА и достижения нового равенства со старым значением регистров хранения/фиксации. Режим сторожевого таймера (рис. 2.22) Сторожевой таймер предназначен для автоматического сброса системы в случае, если она не производит регулярных обращений к нему с целью изменения его значения. Эта функция применяется в программах, функционирующих в условиях электрических помех, электростатических наводок и требующих повышенной надёжности работы микроконтроллера. Данный режим доступен лишь для модуля 4. В этом режиме каждый раз, когда значения таймера РСА и регистра хранения/фиксации модуля 4 достигают равенства, генерируется сигнал внутреннего сброса процессора. Для включения режима WDT необходимо установить бит WDTE CMOD.6. Модуль 4 может быть сконфигурирован как программный таймер или HSO. Когда сторожевой таймер достигает своего граничного значения, он сбрасывает микроконтроллер точно так же, как и сигнал аппаратного сброса, за исключением того, что вывод RST остаётся в состоянии логической "1". Для недопущения сброса микроконтроллера требуется произвести одно из следующих 3-х действий: периодически менять значение регистров хранения/фиксации модуля 4, чтобы оно не стало равно значению таймера РСА; периодически изменять значение таймера РСА, чтобы оно не стало равно значению регистров хранения/фиксации модуля 4; запретить WDT путём очистки бита WDTE непосредственно перед наступлением события равенства значений, а позже - вновь разрешить данную функцию. Рис. 2.22. Режим сторожевого таймера Первые 2 способа - предпочтительные по сравнению с 3-м способом. Второй способ не рекомендуется в том случае, если в работе используются остальные модули РСА (поскольку в этом случае для всех модулей существует единственный таймер, значение которого не должно изменяться произвольно). Таким образом, в большинстве случаев наиболее пригоден 1-й способ. В случае, когда режим WDT не используется, 4-й модуль может работать в любом другом режиме. Широтно-импульсный модулятор — PWM (рис.2.23, рис.2.24) Любой модуль РСА из 5-ти имеющихся может быть запрограммирован как "широтно-импульсный модулятор". Этот режим может использоваться для преобразования дискретного выходного значения в аналоговый сигнал посредством какого-либо внешнего преобразователя (например, интегрирующей цепи). Частота выходного сигнала зависит от частоты тактирования таймера/счётчика РСА, т.е., для тактовой частоты 16КГц, максимально возможная выходная частота составит 15.6 Кгц. РСА генерирует частотно-модулированный сигнал путём сравнения младшего байта счётчика/таймера CL с младшим байтом соответствующего регистра фиксации/хранения CCAPnL (Рис.2-23). Когда CL меньше CCAPnL, выход СЕХn имеет низкий уровень; при CL большем или равном CCAPnL - выход СЕХn имеет высокий уровень. Таким образом, значение регистра CCAPnL управляет длительностью импульсов, поступающих на вход СЕХn. Для изменения значения CCAPnL "на лету", без сопровождающих это действие выбросов выходного сигнала, пользователь должен производить запись этого значения в регистр ССАРnН. Значение старшего байта регистра фиксации/хранения сдвигается в младший байт аппаратно в момент перехода значения счётчика/таймера из 0FFh в 00h - начала следующего периода выходного сигнала. Регистр ССАРnН может содержать любое значение от 0 до 255, что варьирует ширину отрицательного импульса от 100 до 0.4%. Рис. 2.23. Регистр CCAOMn Рис. 2.24. Режим широтно-импульсного модулятора PCA1 Однако описываемая микросхема, содержит и второй набор РСА, аналогичный первому, названный РСА1. Отличия РСА1 от РСА заключаются в следующем: · модуль 4 РСА1 не поддерживает сторожевой таймер; · внешними выводами РСА1 являются ножки Р4.2-Р4.7 (все альтернативные функции портов микросхемы перечислены при описании её выводов); · названия всех регистров РСА1 и их битов содержат символ "1" в своём имени; · в регистре управления РСА1 СICON, в 5-й позиции имеется дополнительный бит CRE (битовый адрес 0EDh). При установке данного бита в "1", разрешение работы РСА1 происходит посредством совместной установки битов CR и CR 1. Соответствие имён регистров и битов узлов РСА и РСА1
Популярное: Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1024)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |