Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Организация таймеров/счетчик
Таймеры/счетчики (Т/C0 и T/C1) предназначены для подсчета внешних событий (выводы Т0 и Т1), организации программно-управляемых временных задержек и измерения временных интервалов. Таймер 1 может также служить генератором скорости передачи для последовательного порта. Таймер/счетчик, работая в режиме таймера, ведет подсчет тактов деленной системной частоты (запрограммированный промежуток времени) и выдает запрос прерывания. Регистр таймера инкрементируется один раз в каждом периферийном цикле. Поскольку цикл состоит из 12 тактов, то скорость счета таймера равна FOSC/12. В режиме счетчика регистр таймера ведет подсчет (предустановленного числа событий) отрицательных перепадов сигнала на внешнем входе и по окончании счета выдает запрос прерывания. Поскольку распознавание отрицательного перехода внешнего сигнала занимает 24 периода тактовой частоты (2 цикла), то максимальная скорость счета равна FOSC/24. Ограничений на рабочий цикл не накладывается, но чтобы гарантировать опрос конкретного уровня сигнала хотя бы один раз до момента его смены, он должен удерживаться на входе хотя бы в течение одного полного цикла. Программное управление функционированием Т/С0 и Т/С1 обеспечивают SFR-регистры TMOD и TCON. Возможны 4 режима работы Т/С микроконтроллера, которые определяются установкой соответствующих битов регистра TMOD. Режимы 0 (13-битовый таймер), 1 (16-битовый таймер) и 2 (8-битовый таймер с автоперезагрузкой) полностью идентичны для обоих Т/С. В режиме 3 (два 8-битовых регистра) работает только Т/С0, T/C1 в этом режиме заблокирован ("лишен" бита управления запуском TR1 и флага переполнения TF1) и сохраняет содержимое своих регистров TL1 и TH1. Путем соответствующего программирования регистров TMOD и TCON осуществляется включение и выключение таймеров/счетчиков, выбор источника их тактирования и установка определенного режима их работы. Регистр TMOD управляет режимом таймеров, а TCON содержит биты, для работы с прерываниями.
Организация прерываний Система управления прерываниями I-8051 показана на рис.7.4.
Рис.7.6. Система управления прерываниями i-8051
Каждый вид прерывания индивидуально разрешается или запрещается установкой или очисткой соответствующих бит SFR-регистра IE (Interrupt Enable). Регистр содержит также бит общего запрещения, при котором блокируются все прерывания. Назначение битов регистра IE следующее:
Вид воспринимаемого внешнего сигнала (Interrupt Type) по входам , задается программированием соответствующих бит в регистре TCON, а разряды TCON.1, TCON.3 (Interrupt Edge) выполняют роль флагов, фиксирующих поступившие запросы. Прерывание по последовательному порту вырабатывается функцией логического "ИЛИ" битов RI и TI в регистре SCON. Каждому типу прерывания может быть программно присвоен высокий или низкий приоритетный уровень путем установки или очистки соответствующего бита в SFR-регистре IP (Interrupt Priority), который имеет следующее назначение битов: IP.7, IP.6, IP.5 - reserved, зарезервированы для дальнейшего использования; IP.4 - (PS), приоритет последовательного порта; IP.3 - (PT1), приоритет Т/С1; IP.2 - (PX1), приоритет внешнего прерывания ; IP.1 - (PT0), приоритет Т/С0; IP.0 - (PX0), приоритет внешнего прерывания . Низкоприоритетное прерывание может прерываться высокоприоритетным, но никогда не прерывается запросом того же уровня приоритета. Поэтому, если одновременно возникают два прерывания с различным уровнем приоритета, то сначала выполняется высокоприоритетное. Если же подобная ситуация складывается для прерываний с одинаковым уровнем приоритета, то последовательность их обработки определяется специальной последовательностью опроса флагов прерываний. В процессе работы "фиксация" всех флагов прерываний происходит в состоянии S5 каждого машинного цикла, а опрос - во время следующего машинного цикла.
|
||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 174; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.58.82.79 (0.004 с.) |