Лабораторные МС 68HC11 (Описание микроконтроллера MC68HC11), страница 11

PDF-файл Лабораторные МС 68HC11 (Описание микроконтроллера MC68HC11), страница 11 Радиоприёмные устройства (18236): Другое - 7 семестрЛабораторные МС 68HC11 (Описание микроконтроллера MC68HC11) - PDF, страница 11 (18236) - СтудИзба2018-01-12СтудИзба

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

Файл "Лабораторные МС 68HC11" внутри архива находится в папке "Описание микроконтроллера MC68HC11". PDF-файл из архива "Описание микроконтроллера MC68HC11", который расположен в категории "". Всё это находится в предмете "радиоприёмные устройства" из 7 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "радиоприёмные устройства" в общих файлах.

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

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

рис. 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 происходит входная фиксация, вычисляется разностьмежду старшими байтами конечного и начального содержимого счетчика таймера. При этомкаждый разряд результата соответствует 256/125000 C 0.002 с. Результат делится на 5 и выводится на светодиоды.

Программа запускается с адреса $D000.Система таймера.52Лабораторная работа №84. Функция выходного сравненияКаждый канал выходного сравнения также имеет связанный с ним 16-битовый регистр,доступный для чтения и записи. При совпадении значения, записанного в этот регистр созначением счетчика таймера устанавливается соответствующий флаг (OCxF) в регистреTFLG1 (рис. 8.1) и происходит изменение состояния соответствующей выходной линии.

Этоизменение для линий 2 - 5 выходного сравнения кодируется в регистре TCTL1 (см. рис. 8.6).Соответствие между битами OMx и OLx и изменением на соответствующей линии представлено в табл. 8.3.Таблица 8.3.OMx OLxДействие при совпадении00Таймер отключен от выходных линий01Инверсия состояния соответствующей выходной линии OCx10Установить в “0” соответствующую линию OCx11Установить в “1” соответствующую линию OCx$10207OM26OL25OM34OL33OM42OL41OM50OL5Состояниепосле сброса00000000TCTL1Рис.

8.6. Регистр управления таймером TCTL1.$100B7FOC16FOC25FOC34FOC43FOC5201000Состояниепосле сброса00000000CFORCРис. 8.7. Регистр форсирования выходного сравнения CFORC.$100CСостояниепосле сброса76543OC1M7 OC1M6 OC1M5 OC1M4 OC1M300000201000000OC1MРис. 8.8. Регистр маскирования выходного сравнения 1 OC1M.$100DСостояниепосле сброса76543OC1D7 OC1D6 OC1D5 OC1D4 OC1D300000201000000OC1DРис.

8.9. Регистр маскирования выходного сравнения 1 OC1D.При успешном сравнении также может генерироваться прерывание, если установленсоответствующий бит OCxI в регистре TMSK1 (рис. 8.2). Запрограммированное действие налинии выходного сравнения можно форсировать, если записать “1” в соответствующий битрегистра CFORC (рис. 8.7).Система таймера.53Лабораторная работа №8В отличие от остальных каналов выходного сравнения, выходное сравнение 1 может автоматически влиять на любую из пяти выходных линий выходного сравнения (линии 3-7порта A).

При этом задействуются регистры OC1M (рис. 8.8) и OC1D (рис. 8.9). РегистрOC1M определяет какая линия порта A будет подвержена изменению в результате успешногоOC1 сравнения. В регистр OC1D записываются данные, передаваемые на соответствующиелинии в результате успешного сравнения. В случае одновременного воздействия на одну линию двух выходных сравнений выходное сравнение OC1 имеет высший приоритет.Рассмотрим пример программы, реализующей управление скважностью мигания светодиодов.

Задание скважности производится на старшей тетраде переключателей. Период мигания синхронизирован с переполнением таймера. При этом в момент переполнения таймера (происходит с частотой приблизительно 0.5 с) происходит зажигание светодиода PB3, а вмомент совпадения содержимого таймера с содержимым регистра выходного сравнения OC3(старшая тетрада которого совпадает с состоянием старшей тетрады переключателей, амладшие равны 0) светодиод гаснет. И таким образом чем больше число набрано на старшейтетраде переключателей, тем выше длительность вспышки светодиода (за исключением комбинации $00-в этом случае свечение непрерывное).

В данной программе не используютсялинии выходного сравнения, а работа осуществляется по прерыванию. Запуск программыдолжен производиться с адреса $D000.cpu6811tmsk1equ$22; регистр маскирования прерываний от; таймера 1tmsk2equ$24; регистр маскирования прерываний от; таймера 2tflg1equ$23; регистр флагов таймера 1tflg2equ$25; регистр флагов таймера 2toc3equ$1a; регистр выходного сравнения 3toorg$00d0jmptoorg$00d9jmpoc3orgldyldaastaa$d000#$1000#%00100001tmsk1,yldaastaa#%10000011tmsk2,yclibrabsetldaastaarti;;;;;;;;;вектор прерывания по переполнениютаймерапереход на подпрограмму обслуживанияпрерываниявектор прерывания по выходномусравнению 3переход на подпрограмму обслуживанияпрерыванияначало основной программы; разрешить прерывания по выходному; сравнению 3; разрешить прерывания по переполнению; таймера; установить входной; коэффициент деления для таймера 16; разрешить I-прерывания*; замкнутый циклtflg2,y,#%10000000; сброс флага переполнения; таймера#$ff$1f04; зажечь светодиоды; возвратСистема таймера.54oc3bsetldaaandastaaclrastaaclrrtiЛабораторная работа №8tflg1,y,#%00100000; сброс флага выходного; сравнения 3$1f03; ввести новое значение; выходного сравнения#$f0; с переключателей (старшая; тетрада)toc3,ytoc3+1,y$1f04; погасить светодиоды; возврат5.

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