[257]Лабораторные_МС_68HC11 (8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola), страница 11

PDF-файл [257]Лабораторные_МС_68HC11 (8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola), страница 11 Цифровые устройства и микропроцессоры (ЦУиМП) (18287): Книга - 8 семестр[257]Лабораторные_МС_68HC11 (8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola) - PDF, страница 11 (18287) - СтудИзба2018-01-12СтудИзба

Описание файла

Файл "[257]Лабораторные_МС_68HC11" внутри архива находится в папке "8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola". PDF-файл из архива "8-разрядные микроконтроллеры семейства M68HC11 фирмы Motorola", который расположен в категории "". Всё это находится в предмете "цифровые устройства и микропроцессоры (цуимп)" из 8 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "цифровые устройства и микропроцессоры" в общих файлах.

Просмотр PDF-файла онлайн

Текст 11 страницы из PDF

ВведениеВ данной работе изучается таймер микроконтроллера MC68HC11E1 и функциональносвязанные с ним устройства.2. Система таймераВстроенный таймер обеспечивает работу нескольких внутренних систем микроконтроллера, в число которых входят:- система обеспечения функции входного захвата;- система обеспечения функции выходного сравнения;- прерывания реального времени;- счетчик пульсаций.Основу таймера составляет 16-разрядный счетчик, источником синхронизации которого является выход предделителя частоты E (эта частота в 4 раза меньше внешней частотысинхронизации и в отладочном модуле HC11EVB составляет 2 МГц).

В предделителе можнопрограммно задать один из четырех коэффициентов деления: 1, 4, 8 или 16. Установка нужного коэффициента производится посредством битов PR1 и PR0 регистра TMSK2 (см.рис. 8.4). Соответствие между состоянием этих битов и коэффициентом деления приведено втабл. 8.1.Таблица 8.1.PR1 PR0 Коэффициент деления001*0141081116* Автоматически устанавливается после сброса.В нормальных режимах работы микроконтроллера модификация этих битов возможнатолько в течение первых 64 циклов E после сброса. В специальных режимах работы этогоограничения нет.Состояние счетчика инкрементируется на 1 с каждым импульсом синхронизации.

Этосостояние можно прочитать из 16-битного регистра TCNT, представленного в виде двух8-битных регистров, находящихся по адресу $100E (старший байт) и $100F (младший байт).Регистр TCNT не доступен для модификации (исключение составляет режим теста) и такимобразом пользователь может только считывать его состояние. При переходе состояния таймера от $FFFF к $0000 устанавливается флаг переполнения таймера TOF (бит 7) регистрафлагов таймера TFLG2 (см. рис.

8.3.). Прерывание по установке этого бита можно разрешитьустановкой бита TOI регистра маскирования прерываний TMSK2.Рассмотрим пример использования прерывания по переполнению таймера для реализации программы динамического управления светодиодами - бегущих огней. Запишите в память следующую подпрограмму:cpu6811tflg2equ$25; регистр флагов таймера 2org$00d0jmpto;;;;вектор прерывания по переполнениютаймерапереход на подпрограмму обслуживанияпрерыванияСистема таймера.48toj1Лабораторная работа №8; начало подпрограммы обслуживания; прерыванияorg$d100ldybset#$1000tflg2,y,#%10000000ldaalslabccoraastaa$1f04; сброс флага переполнения; таймера; циклический сдвиг влево; состояния светодиодовj1#1$1f04rti; возврат из прерыванияЗапишите в регистр порта B (адрес $1f04) какое-либо число, например, $49.

При этом онодолжно отобразиться на светодиодах. Запишите по адресу $1024 (регистр TMSK2) число $83(%10000011), установив таким образом коэффициент деления для таймера 16 (при этом частота переполнений таймера будет составлять 2000000/(65535(16) C 1.9 Гц) и разрешив прерывания по переполнению таймера. При этом на светодиодах будет происходить циклическое перемещение исходного состояния влево.

Попробуйте изменить коэффициент предделителя, обратите внимание на изменение скорости переполнения таймера.Примечание. В предлагаемой лабораторной работе после выполнения каждого примеражелательно производить сброс микроконтроллера с последующим восстановлением связидля инициализации состояния внутренних регистров.3. Функция входной фиксацииФункцию входной фиксации обеспечивают 16-битовые регистры, доступные толькодля чтения. При обнаружении заданного перепада на входной линии одного из каналоввходной фиксации, происходит запись содержимого счетчика таймера в соответствующийрегистр входной фиксации.

Также при этом устанавливается соответствующий флаг в регистре флагов TFLG1 (первому каналу входной фиксации соответствует бит 2, второму - бит1, третьему - бит 0 и четвертому - бит 3, см. рис. 8.1.) и происходит генерация прерывания,если установлен соответствующий бит регистра TMSK1 (см. рис. 8.2.).$10237OC1F6OC2F5OC3F4OC4F3I4O5F2IC1F1IC2F0IC3FСостояниепосле сброса00000000TFLG1Рис. 8.1.

Регистр флагов прерывания TFLG1.$10227OC1I6OC2I5OC3I4OC4I3I4O5I2IC1I1IC2I0IC3IСостояниепосле сброса00000000TMSK1Рис. 8.2. Регистр маскирования прерывания TMSK1.Система таймера.49Лабораторная работа №8$10257TOF6RTIF5PAOVF4PAIF30201000Состояниепосле сброса00000000TFLG2Рис. 8.3.

Регистр флагов прерывания TFLG2.$10247TOI6RTII5PAOVI4PAII30201PR10PR0Состояниепосле сброса00000000TMSK2Рис. 8.4. Регистр маскирования прерывания TMSK2.$1021Состояниепосле сброса76543210EDG4B EDG4A EDG1B EDG1A EDG2B EDG2A EDG3B EDG3A TCTL200000000Рис. 8.5. Регистр управления таймером TCTL2.Входами четырех каналов входной фиксации могут служить линии 0-3 порта A. Первыетри линии порта A (PA0-PA2) соответствуют каналам IC3, IC2 и IC1 входной фиксации, линия PA3 , в зависимости от состояния бита I4/O5 регистра PACTL (см.

рис. 8.10), может использоваться для обеспечения функции входной фиксации IC4 (I4/O5 = “1”) или выходногосравнения OC5 (I4/O5 = “0”).Перепад, вызывающий активизацию функции входной фиксации для заданного каналакодируется в регистре управления TCTL2 (см. рис. 8.5). Каждая пара линий EDGxB иEDGxA соответствует каналу входной фиксации x.

В табл. 8.2 представлено соответствиемежду состоянием пары и видом активного перепада на соответствующей линии.Таблица 8.2EDGxB EDGxAКонфигурация00Функция вводного захвата запрещена01Захват только по положительному фронту входного сигнала10Захват только по отрицательному фронту входного сигнала11Захват только по любому фронту входного сигналаРассмотрим пример программы, использующей функцию входной фиксации для определения быстроты реакции человека.

Правила работы с программой следующие: после запуска программы необходимо дождаться зажигания светодиода B0 и затем, как можнобыстрее нажать на кнопку PA0. После этого на светодиодах появится (в двоичном коде) время реакции в сотых долях секунды. В случае фальшстарта загорятся все светодиоды.cpu6811portaequ$00; регистр порта Atic3equ$14; регистр входной фиксации 3tflg1equ$23; регистр флагов таймера 1tflg2equ$25; регистр флагов таймера 2tctl2equ$21; регистр управления таймера 2tmsk2equ$24; регистр маскирования прерываний от; таймера 2tcntequ$0e; регистр счетчика таймераСистема таймера.50tmpj1j2Лабораторная работа №8; дополнительная ячейкаequ$00org$00d0jmptoorgldyclr$d000#$1000$1f04; начало основной программыlddtcnt,y; определить псевдослучайную величину; начальной задержкиandborabstab#$1f#$40tmpldaastaa#%10000000tmsk2,y;;;;вектор прерывания по переполнениютаймерапереход на подпрограмму обслуживанияпрерывания; погасить светодиоды; разрешить прерывания по переполнению; таймера, входной коэффициент деления; для таймера - 1cli; разрешить I-прерыванияbrclr porta,y,1,j3; Задержка на 2...3 секунды с проверкой; на фальшстартldabbnetmpj1ldaastaa#%00000011tmsk2,yldaastaastaaincastaa#$1tflg1,y$1f04tctl2,y; разрешить входной захват 3 по; отрицательному фронтуlddstdtcnt,ytmp; записать текущее состояние таймера; в ячейке tmpbrsetlddincacmpabnetflg1,y,#%00000001,j4 ; выход, если произошел захватtcnt,y; цикл на обнаружения превышения 0.5 с;;;;;;установить входной коэффициентделения для таймера 16 (следует иметьв виду, что установка коэффициентаделения в нормальных режимах работыдолжна производится в течение 64первых циклов E после сброса); сброс флага входного захвата 3; зажечь светодиод B0tmpj2Система таймера.51Лабораторная работа №8j3j4toldaa#$ffstaabra$1f04*lddsubatabclraldxidivxgdxstabbratic3,ytmp#5ldaastaadecbneclr#$80tflg2,ytmpto_1tmsk2,y$1f04*; зажечь все светодиоды в случае; фальшстарта или при превышении 0.5 с; расчет задержки; отобразить задержку на светодиоды; сброс флага переполнения таймера; уменьшить счетчик на 1; запретить прерывания по переполнению; таймераto_1rti; возвратРассмотрим более подробно работу программы.

Для осуществления задержки на 2...3секунды используются прерывания по переполнению таймера, которые происходят с частотой 2000000/65536 C 30.51Гц (коэффициент деления устанавливается равным 1). Следовательно для задержки C на 1 сек требуется возникновение 31 прерывания по переполнению.Исходное число требуемых прерываний определяется следующим образом: после стартапрограммы считывается состояние регистра счетчика таймера (TCNT). Поскольку это значение непрерывно меняется с момента аппаратного сброса, на момент старта программы тамнаходится некоторое псевдослучайное значение.

У младшего байта счетчика, записанного ваккумуляторе B, обнуляются старшие три бита, таким образом в аккумуляторе B содержитсяпсевдослучайная величина задержки на 0 ... 32 цикла, или на 0 ... 1.05 секунды. Для смещения этой величины на C 2 секунды, к содержимому B добавляется 64 (%01000000). Содержимое регистра B сохраняется в ячейке tmp, после чего разрешаются прерывания по переполнению таймера. В подпрограмме обслуживания прерывания (to) значение tmp уменьшаетсяна 1 и проверяется на 0. Если значение tmp обнулилось (т.е. произошло заданное количествопрерываний), то прерывания по переполнению запрещаются. В цикле ожидания задержки j1постоянно проверяется не нажата ли кнопка PA0; в этом случае индицируется фальшстарт.Далее после определения и разрешения входного захвата 3 (соответствует линии PA0) зажигается светодиод B0, частота синхронизации таймера уменьшается в 16 раз (т.е.

становитсяравной 2000000/16 = 125000Гц) и запускается цикл ожидания до возникновения входногозахвата 3 (по анализу бита 0 регистра TFLG1). Кроме этого, перед началом цикла запоминается старшая тетрада счетчика таймера, которая сравнивается в цикле с текущим значением старшей тетрады счетчика для определения превышения допустимого времени, котороеопределяется как 16 ( 65536/2000000 C 0.524 с (для того, чтобы исключить срабатывание индикатора превышения сразу после входа в цикл текущее значение счетчика увеличиваетсяна 1). После нажатия на клавишу PA0 происходит входная фиксация, вычисляется разностьмежду старшими байтами конечного и начального содержимого счетчика таймера.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5259
Авторов
на СтудИзбе
421
Средний доход
с одного платного файла
Обучение Подробнее