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

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

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

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

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

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

Каждое следующее нажатие на клавишу IRQ воспринимается только через 0.6 с, причем, если клавишу оставить нажатой, то светодиоды будут мигать с периодичностью 0.6 с. Это объясняется тем, что после возвращения из подпрограммы обработки прерывания, возникает новый запрос, поскольку клавиша IRQ нажата иподдерживает на соответствующем входе низкий уровень.Теперь заменим командуbclr option,x,$20наbset option,x,$20т.е. установим режим обнаружения прерывания по перепаду и запустим заново программу(вместо этого можно просто изменить соответствующим образом состояние регистра option,с помощью команды отладчика “DebugfMemoryfModify”). При работе модифицированной программы инверсия состояния светодиодов также происходит при нажатии на клавишуIRQ, которое воспринимается через 0.6 с после предыдущего нажатия, но если клавишуоставить нажатой, то мигания светодиодов не будет, т.к.

при нажатии клавиши IRQ возникает только один отрицательный перепад.Прерывания.43Лабораторная работа №7Для удобства рассмотрения часть прерываний выделены в отдельную группу - группуисключительных ситуаций. К ней относятся: сброс микроконтроллера - RESET, система защиты от сбоев - COP, система обнаружения падения частоты синхронизации и система обработки неправильного кода команды.Сброс микроконтроллера может быть произведен двумя путями: 1. по перепаду напряжения питания (пока напряжение питания не достигло необходимого уровня, внутри микроконтроллера устанавливается сигнал сброса RESET, который остается установленным еще4064 тактовых цикла после достижения нормы); 2.

подачей низкого уровня на вывод RESETмикроконтроллера. После сброса микроконтроллер инициализирует внутренние регистры иначинает выполнять программу пользователя, начиная с адреса, находящегося по вектору$FFFE, $FFFF.Система защиты от программных сбоев (COP) представляет собой таймер, который поистечении определенного времени передает управление программой по вектору $FFFA,$FFFB (при этом не производится сохранение основных параметров программы в стеке, вотличие от обычных прерываний).

Для того, чтобы этого не произошло программа пользователя должна периодически инициализировать таймер COP, причем период между двумяинициализациями не должен превышать заданного значения (периода COP-таймера). Этозначение определяется частотой внешней тактовой синхронизации и состоянием битов CR1и CR0 (два младших бита) регистра OPTION. Следует иметь ввиду, что в нормальных режимах работы эти биты могут быть запрограммированы только в течение первых 64 E цикловработы микроконтроллера после сброса. В специальных режимах работы доступ к этим битам не ограничен (см. описание на микроконтроллер).

Для внешней тактовой частоты 8 МГцсоответствие между состоянием битов CR1 и CR0 и периодом COP - таймера представлено втабл. 7.3.Таблица 7.3.CR1 CR0 Период COP0016.384 мс0165.536 мс10262.14 мс111.049 сРазрешение работы COP производится путем сброса бита NOCOP (бит 2) регистраCONFIG (правила его программирования смотрите в описании на микроконтроллер). Инициализация COP осуществляется последовательной записью байтов $55 и $AA в регистрCOPRST (адрес $103A).Система обнаружения сбоя частоты синхронизации включается установкой бита CME(бит 3) регистра OPTION.

Срабатывание системы происходит, если внутренняя частота синхронизации E падает ниже 10-200 кГц (при внешней частоте 8 МГц внутренняя составляет2 МГц). После срабатывания управление передается по вектору $FFFC, $FFFD, без сохранения состояния контроллера в стеке (как и в случае с COP).Из трех вышеперечисленных исключительных ситуаций высший приоритет имеетRESET и низший - COP.Если в процессе выполнения программы встретилась команда с несуществующим кодом (например, $41), то происходит прерывание по вектору $FFF8, $FFF9. По процессу выполнения это прерывание аналогично программному прерыванию SWI, за исключением того, что при переходе на подпрограмму обслуживания прерывания в стек записывается адрескоманды, вызвавшей прерывание по неправильному коду, а не адрес следующей команды.Рассмотрим пример программы, которая подсчитывает количество несуществующих командв программе и выводит его в двоичном виде на светодиоды:cpu6811portbequ$1f04; регистр данных порта Btmpequ0; дополнительная ячейкаПрерывания.44org$00f7jmp$d100orgclrnopnopnopnopfcbnopnopnopfcbfcbnopldaastaa$d000tmpbra*org$d100inctmptsyinc8,yЛабораторная работа №7; вектор прерывания по неправильному; коду команды (режим bootstrap); переход на подпрограмму обслуживания; прерывания; Начало основной программы; Обнулить счетчик неправильных команд$41; Код неправильной команды$62$5b; Код неправильной команды; Код неправильной командыtmpportb; вывести состояние счетчика на; светодиоды; замкнутый цикл;;;;Начало подпрограммы обслуживанияпрерыванияИнкрементировать счетчик неправильныхкоманд; Увеличить на 1 адрес возврата (чтобы; возврат был на следующую команду, а; не на вызвавшую прерывание)rti; возврат из прерыванияПримечание.

Программа-отладчик для работы с HC11EVB использует прерывание по неправильному коду команды для организации точек останова и трассировки, поэтому эти функции становятся недоступными при выполнении данной программы.В связи с этим после выполнения программы следует сбросить контроллер и заново восстановить связь.В качестве счетчика неправильных команд используется дополнительная ячейка tmp. Вначале программы он инициализируется, а затем увеличивается на 1 после каждого следующего обнаружения неправильной команды. В качестве “нормальных команд” используютсякоманды NOP.

В конце программы содержимое счетчика выводится на светодиоды. Запустите программу с адреса $D000. На светодиодах должно появится двоичное число 00000011 (т.е.десятичное 3). Проверьте работоспособность программы меняя число неправильных команд.Прерывания.45Лабораторная работа №73.

Контрольные вопросы.1. Назовите все основные источники прерывания микроконтроллера MC68HC11E1.2. Что такое вектор прерывания?3. Какие отличия между обработками прерывания в нормальных и специальных режимах работы?4. Что такое программное прерывание SWI?5. Как происходит обработка двух и более одновременно поступивших запросов на прерывание?6. Какое из аппаратных прерываний имеет высший приоритет?7. Как его можно запретить ? Разрешить?8.

Что такое группа I-прерываний?9. Опишите структуру приоритетов в этой группе.10.Какие два источника вызывают прерывание IRQ?11.В чем отличие обнаружения прерывания по уровню и по перепаду? Каким образом задается метод обнаружения перепада для IRQ?12.Что такое группа исключительных ситуаций?13.Какие два сброса микроконтроллера вам известны?14.Что такое COP? Как его разрешить?15.Как задается период COP - таймера?16.Как производится инициализация COP?17.Как работает система обнаружения сбоя частоты синхронизации? Как ее разрешить?18.Какое основное отличие существует при обработке исключительных ситуаций по RESET,COP и сбою частоты синхронизации и при обработке обычных прерываний?19.Что происходит, если при выполнении программы встретилась команда с неправильнымкодом?20.Является ли прерывание по неправильному коду команды аналогом программного прерывания SWI? Объясните почему.21.Назовите примеры неправильных кодов команды?4.

Задания.1. Напишите программу увеличивающую на 1 двоичное число на светодиодах при каждом,сколь угодно быстром нажатии на клавишу IRQ.2. Напишите программу, которая с частотой 1 Гц инкрементирует состояние на светодиодахпри нажатой клавише IRQ.3. Модернизируйте предыдущую программу так, чтобы состояние светодиодов не изменялось при кратковременном нажатии (нажатиях) на IRQ.4. Напишите программу - генератор случайных чисел. При нажатой кнопке IRQ в некоторойячейке памяти должен происходить быстрый перебор значений (например, путем инкрементирования содержимого ячейки), и после отпускания это значение должно выводитсяна светодиоды.5. Напишите программу - определитель скорость реакции.

Через некоторое время после запуска программы (1-3 с) должен загореться старший светодиод. После этого запускаетсясчетчик, останавливающийся после нажатия на кнопку IRQ. После этого на светодиоды вдвоичном виде должно выводится его содержимое. Период счета следует сделать 1 мс. Таким образом на светодиодах отобразится двоичное время реакции в микросекундах.Фальшстарт индицируется миганием светодиодов.6. Напишите программу, которая по нажатии на кнопку PA0 увеличивала бы состояние насветодиодах на 1, а по нажатию на IRQ - уменьшала бы.7. Напишите программу, выводящую на светодиоды состояние переключателей при нажатиина IRQ.Прерывания.46Лабораторная работа №78.

Модернизируйте предыдущую программу так, чтобы при удерживаемой кнопке IRQ происходил циклический сдвиг состояния светодиодов с периодом 0.6 с.9. Напишите программу, которая определяла бы определяла бы из двух игроков одного - случшей реакцией. Через некоторое время после запуска программы (1-3 с) должен загореться старший светодиод B7. Далее один человек нажимает кнопку PA0, а другой IRQ.Если первой была нажата PA0, загорается старшая тетрада светодиодов, если IRQ - младшая.

Фальшстарт индицируется миганием светодиода B6 для игрока на PA0, и B1 - для игрока на IRQ.10.Модернизируйте предыдущую программу так, чтобы на светодиоды выводилось разностное время реакции игроков (на семь младших светодиодов) в микросекундах. Старшийсветодиод указывает на победителя (зажженный светодиод означает, что победил участникна PA0).11.Напишите программу, которая зажигала бы все светодиоды, если одновременно нажатыкнопки PA0 и IRQ и гасила бы их в противном случае.12.Напишите программу состоящую из команд NOP с кодами неправильных команд. Приобнаружении неправильной команды программа должна выводить на светодиоды старший и младший байты адреса по которому находится неправильная команда.

Первымдолжен отображаться старший байт. После нажатия на кнопку PA0 - младший, и послеследующего нажатия на PA0 - программа должна продолжить выполнение.13.Модернизируйте предыдущую программу так, чтобы переключение байтов и выход восновную программу производился при нажатии кнопки IRQ.14.Модернизируйте предыдущую программу так, чтобы переключение байтов и выход восновную программу производился только при одновременном нажатии кнопок IRQ иPA0.15.Используя обработчик прерывания от программы 11. Модернизируйте любую из программ 1 ... 10, так, чтобы при появлении в ней неправильного кода, он индицировался бы,как в программе 11.16.Напишите программу, которая просчитывала бы количество всех возможных неправильных команд для микроконтроллера M68HC11.Прерывания.47Лабораторная работа №8Лабораторная работа №8Система таймера.1.

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