КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Регистры сравнения выхода таймера/счетчика1
Таймер/счетчик1 - TCNT1H и TCNT1L
16-разрядный регистр содержит текущее значение 16-разрядного таймера/счетчика1. С тем, чтобы CPU могло считывать/записывать и старший и младший байты этого регистра одновременно, обращение реализовано посредством 8-разрядного регистра временного хранения(TEMP). Этот регистр используется также при обращении к OCR1A, OCR1B и ICR1. Если основная программа и подпрограммы обработки прерываний используют обращение к регистрам посредством TEMP, то прерывания должны быть запрещены на время обращения из основной программы.
Таймер/счетчик1 выполнен в виде счетчика с нарастанием или реверсивного счетчика (в ШИМ режиме) и возможностью чтения/записи. Если в таймер/счетчик1 занесено некоторое значение и выбран источник тактового сигнала, то таймер/счетчик1 продолжит отсчет через один тактовый цикл после установки в нем записанного значения. Регистры сравнения A выхода таймера/счетчика1 - OCR1AH и OCR1AL - (Timer/Counter1 Output Compare Register)
Регистры сравнения B выхода таймера/счетчика1 - OCR1BH и OCR1BL - (Timer/Counter1 Output Compare Register) 16-разрядные регистры сравнения выхода обеспечивают и чтение и запись. Регистры сравнения выхода таймера/счетчика1 хранят данные постоянно сравниваемые с состоянием таймера/счетчика1. Действие, запускаемое совпадением при сравнении определяется содержимым регистра управления и состояния таймера/счетчика1. Совпадение при сравнении может произойти только если таймер/счетчик1 досчитает до значения содержимого OCR. Если в TCNT1 и OCR1A или OCR1B программно будут записаны одинаковые значения, то значения, то совпадение при сравнении сгенерировано не будет. Совпадение при сравнении устанавливает флаг прерывания по совпадению в тактовом цикле CPU следующем за самим совпадением. Поскольку регистры сравнения выхода OCR1A и OCR1B являются 16-разрядными, то для обеспечения одновременного занесения старшего и младшего байтов данных в регистры OCR1A/B используется регистр временного хранения TEMP. Когда CPU записывает старший байт, то данные временно сохраняются в регистре TEMP. Когда же CPU записывает младший байт в OCR1AL или OCR1BL, то одновременно содержимое регистра OCR1BH переписывается в OCR1AH или OCR1BH. Следовательно, при 16-разрядных операциях старшие байты регистров OCR1A/B должны записываться первыми. Кроме того, регистр TEMP используется при обращении к TCNT1 и ICR1. Если основная программа и подпрограммы обработки прерываний, используют обращение к регистрам посредством TEMP, то прерывания должны быть запрещены на время обращения из основной программы.
Регистр захвата входа таймера/счетчика1 - ICR1H и ICR1L - (Timer/Counter1 Input Capture Register)
16-разрядный регистр захвата входа обеспечивает только чтение содержимого. При обнаружении на выводе захвата входа PD4(IC1) нарастающего или падающего фронта сигнала (определяемого установкой ICES1) текущее состояние таймера/счетчика1 пересылается в регистр захвата входа ICR1. Одновременно устанавливается в состояние 1 флаг захвата входа ICF1. Поскольку регистр захвата входа является 16-разрядным, то для обеспечения одновременного чтения старшего и младшего байтов данных регистра ICR1 используется регистр временного хранения TEMP. При считывании CPU данных младшего байта содержимое ICR1L пересылается в CPU, а содержимое старшего байта ICR1H размещается в регистре TEMP, чтение старшего байта заключается в переносе в CPU содержимого регистра временного хранения TEMP. Следовательно, при чтении всего 16-разрядного регистра операцию чтения необходимо начинать с младшего байта ICR1L. Регистр TEMP используется также при обращении к TCNT1, OCR1A и OCR1B. Если основная программа и подпрограммы обработки прерываний, используют обращение к регистрам посредством TEMP, то прерывания должны быть запрещены на время обращения из основной программы.
Дата добавления: 2015-06-27; Просмотров: 571; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |