Главная » Просмотр файлов » Хартов В.Я. Микроконтроллеры AVR. Практикум для начинающих (2007)

Хартов В.Я. Микроконтроллеры AVR. Практикум для начинающих (2007) (1264222), страница 21

Файл №1264222 Хартов В.Я. Микроконтроллеры AVR. Практикум для начинающих (2007) (Хартов В.Я. Микроконтроллеры AVR. Практикум для начинающих (2007)) 21 страницаХартов В.Я. Микроконтроллеры AVR. Практикум для начинающих (2007) (1264222) страница 212021-07-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 21)

Варианты обработки нажатия кнопок: 1) при нажатии 8%0 на выходах ОС1А и ОС1В устанавливаются значения 0 и 1 соответственно; 2) при нажатии о%1 происходит генерация ШИМ-сигнала со скважностью Р1 (скважность зависит от значения в регистре сравнения); 3) при нажатии о'9(/2 происходит генерация ШИМ-сигнала со скважностью Р2; 4) при нажатии о%3 на выходах ОС1А и ОС1В устанавливаются 1 и 0 соответственно.

Временная диаграмма работы ШИМа приведена на рис. 4.4. Рис. 4.4. Формирование ШИМ-сигнала )Программа 4.5 для МК АТх8515: демонстрация работы таймера Т1 в режтяее ШИМа. для наглядности необходимо установить 131 4.4. Программирование функций таймера Т! 130 4. Таймеры микроконтроллеров АТхВ515 ;.1пс1цбе "8515бег.1пс" .1пс1цбе "в85156ет.тпс" .бег Севр = г16 ;***Выводы порта РП .ес(ц БНОХ 0 = 0 .ес(ц ЯНОМ Р1 = 1 .ес(ц БНОХ Г2 = 2 .епц ЯНОХ 3 = 3 .ого БООО говр ТНтт ;обработка сброса ;***Инициализация МК 1Н1Т: 1ет Севр,1он(ВАМЕНО) ;установка оцг ЯРЬ,Севр указателя стека 161 Севр, Ь19Ь (ВАМЕНР) ! на последнюю оцг БРН,Севр ячейку ОЗУ 161 Севр,ох20 ;инициализация выводов порта Ро: оцС ПОВО,Севр ь 0-3 — на ввод, 5 — на вывод 1б1 Севр,охор ;включение подтягивающих оцг РОВТО,Севр резисторов порта РР 1с(1 Севр,ох04 1///для Атведа8515 инициализация опС ООВЕ,Севр р/// РЕ2 (ОС18) на вывод с11 ) запрещение прерываний 1с(1 севр,охвЗ ;настройка таймера на ШИМ оцг ТССВ1А,Севр с выводами ОС1А и ОС1В с1г Севр ;обнуление оцг ОСВ1АН,Севр 2 регистров оцг ОСВЬЛЬ,Севр р сравнения и оцС ОСВ1ВН,Севр оцС ОСВ1ВЬ,Севр оцС ТСНТ1Н,Севр счетного оцг тСНт1Ь,Севр регистра 1с(1 Севр,ох01 оцС ТССВ1В,Севр ве1 файл определений АТ9088515 файл определений Атведа8515 временный регистр таимер запущен: частота — СК разрешение прерывании частоту тактового генератора = 2048 Гц.

'При нажатии на ЯХО (ЯНОМ 0) на выходах ОС1А и ОС1В ;устанавливаются 0 и 1, БХ1 (ЯНОМ Р1) — генерация ШИМ;сигнала со скважностью Г1, БХ2 (ЯНОМ Г2) — со скважностью ;Р2, ЯХЗ (ЯНОХ 1) — на выходах устанавливаются 1 и О. всвязи:РР5-ЬЕОО, РЕ2-ЬЕР1, РОО:Р01-ЯХО:ЯХ1, Р02:РОЗ-БХ2:ЯХЗ ********* *** * **** ****************к*******я**** хлтт о: звфс РТНП,БНОХ О говр ХАЕТ Р1 ;***Перевод в устойчивые с1г Севр оцг ОСВТЛН,Севр оцг ОСВ1АЬ,Севр оцг ОСВ1ВН,Севр оцг ОСВ1ВЬ,Севр о",кидание нажатия ;запись числа в регистры сравнения, первым записывается старший байт ХА1Т Р1:вЬьс Р1НП,БНОХ Р1;ожидание нажатия совр ХА1Т Р2 кнопки ЯНОХ Р1 — режим ШИМа скважностью Р1 на режим ШИМа со скважностью Р1 ;запись числа в регистры сравнения, первьхч записывается старший байт ХА1Т Р2:зЬТс Р1НО,БНОХ Р2;ожидание нажатия говр ХйтТ 3 кнопки БНОХ Р2-режим ШИМа скважностью Р2 у***настройка таймера на режим ШИМа со скважностью Р2 161 севр,ох02 ;запись числа в оцг ОСР1АН,Севр регистры сравнения, оцС ОСВ1ВН, Севр первым записывается Ьс)1 Сепр,охРР старший байт оцС ОСВ1АЬ,Севр оцг ОСВ1ВЬ,Севр ХА1Т 3:вЬ1с Р1НО,БНОХ 3 совр Хйтт О )***Перевод в устойчивые вег Севр оцг ОСВ1АН,Севр оцг ОСВ1йЬ,Севр оцС ОСВЬВН, Севр оцг ОСВ1ВЬ,Севр совр ХАЕТ ;запись числа в регистры сравнения, первым записывается старший байт ;***Настройка таймера 161 севр,охоо оцС ОСВ1АН,Севр оцС ОСВ1ВН,Сешр 101 Севр,ОхРР оцг ОСВ1АЬ,Севр оцС ОСВЬВЬ,Севр кнопки БНОХ О, состояния 0 и 1 состояния выводов ОС1А=О, ОС1В=1 ;ожидание нажатия кнопки БНОХ 3, состояния 1 и 0 состояния выводов ОС1А=1, ОС1В=О 132 4 5 Сторожевой таймер 133 4.5.

СТОРОЖЕВОЙ ТАЙМЕР № разряда %0Р! %0РО %0Е %0Р2 Имя %0ТОЕ 4. Таймеры микроконтроллеров АТх8515 Результат соответствует диаграммам на рис. 4.4. При нажатии на 5%0 загорается только ЕЕ00, при нажатии 5%3 — только ЕЕ01. При нажатии 3%1 или Я%2 светодиоды попеременно включаются/выключаются со скважностью Г1 или Г2 соответственно. Основная функция сторожевого таймера ()Ра/сЫод Т/тек)— защита устройства от сбоев. Благодаря сторожевому таймеру можно прервать выполнение зациклившейся программы или выйти из МС!5 КЕ5ЕТ Рис. 4.5. Структурная схема сторожевого таймера других непредвиденных ситуаций, препятствующих ее нормальному выполнению. Структурная схема сторожевого таймера приведена на рис.

4.5. Для управления сторожевым таймером предназначен регистр %0ТСК. Формат регистра приведен в табл. 4.11. Таблица 4.П. Формат регистра %ОТСЕ Для включения/выключения сторожевого таймера используют два разряда регистра %0ТСК вЂ” %0Е и %0ТОЕ. Если разряд %0Е установлен в 1, сторожевой таймер включен, если сброшен в О— выключен.

Непосредственно перед включением таймера рекоменс дуется также сбросить его командой %1Ж. Для предотвращения непреднамеренного выключения таймера предназначен разряд %0ТОЕ. Дело в том, что выключение сторожевого таймера (сброс разряда %0Е) можно осуществить только при установленном разряде %0ТОЕ, который через четыре машинных цикла после установки в 1 аппаратно сбрасывается.

Благодаря этому возможность случайного выключения сторожевого таймера практически исключается. Исходя из сказанного, для выключения сторожевого таймера рекомендуем следующий порядок действий: 1) одной командой записать 1 в разряды %0Е н %0ТОЕ; 2) в течении следующих четырех машинных циклов записать О в разряд %0Е. Период наступления тайм-аута сторожевого таймера задается с помощью разрядов %0Р2 — %0РО регистра %0ТСК согласно табл. 4.12. Чтобы избежать непреднамеренного сброса микроконтроллера при изменении периода сторожевого таймера, необходимо перед записью разрядов %0Р2 — %0РО запретить работу таймера либо сбросить его (%1Ж). Таблица 4.!2.

Задание периода сторожевого таймера длн АТ9088515 134 4. ТаймерымикроконтроллеровАТк85!5 Программирование сторожевого таймера Программа 4.6 ;Программа 4.8 для МК АТ9х8515: демонстрация работы ;сторожевого таймера с независимым генератором, ;При нажатии на ЯХО (РЕЕ100 1) наступление тайм-аута ;происходит через 0,49 с (время включения светодиодов), ;ЯХ1 (РКН100 2) — через 1,9 с. ;Соединения: РРО:Р01-ЯХО:ЯХ1, РВ-ЬЕР(10-проводной шлейф) .*** ****я*****я************е** **********а*************** .Тпс1цбе "85156ет.тпс" ;файл определений АТ9088515 1.гпс1цбе "п8515бе1.1псв ;Файл определений АТпеча8515 .бег гепр = г16 ;временный регистр ;***Выводы порта РР .еяц РЕЕ100 1 = 0 .еяц РЕ8100 2 = 1 .ог9 $000 г5пр 1М1Т ;обработка сброса ;***Инициализация МК 141 гепр,1он(ВАМЕНО) ;установка оцг яРЬ,гепр 1с(1 гепр,п19Ь(ПАМЕМО) 1 на последнюю оог ЯРН,гепр ячейку ОЭУ с1г гепр 4ИНИЦИаЛИЗацня порта РО оцг ООВО,гепр 1 на ввод 1с(1 гепр,ОхОЗ ;включение подтягиваюших указателя стека Подготовить программу для исследования сторожевого таймера.

Полагая, что при нажатии на кнопку 8%0 тайм-аут таймера наступает через 0,49 с, а при нажатии на 8%1 — через 1,9 с, выберем из табл. 4.12 (ЧСС = 5 В) значения загружаемых коэффициентов согласно заданному периоду сторожевого таймера. В обоих случаях до наступления тайм-аута светодиоды должны быть включены, после происходит сброс микроконтроллера, и светодиоды гаснут.

Программа для микроконтроллера приведена ниже. (Внимание! Перед программированием микроконтроллера АТшейа8515 в окне БТК500 АЧВ 8шейо 4 на вкладке Рцяея установить флажок 58515С и запрограммировать конфигурационную ячейку.) Коммутация выводов: 8'1)((0 — Р(30, 83Ч! — Р131, ЕЕΠ— РВ 10-проводным шлейфом. 135 4 5 Сторожевой таймер оцг РОЕТЕ,гепр резисторов порта РР вег гепр ;инициализация порта РВ оцг ОСЕВ гепр на вывод оцг РОКТВ,гепр выключение светодиодов 1бт гепр,$18 ;выключение оцг ХОТСЕ,гепр сторожевого 161 гетр,810 1 таймера: оцг ХОТСЕ,гепр ;ХОЕ=О ХА1Т ЯХО: вЬ1с Р1НР,РЕВ100 1 ;ожидание нажатия г5пр хлтт ЯХ1 кнопки РЕЕ100 1 ;***Назначение периода наступления тайм-аута = 0,49 с с1г гепр 1ВКЛЮЧЕНИЕ оцг РОЕТВ,гепр светодиодов 161 гепр,ЯОО ;включение сторожевого таймера, оог Хотсн,гепр р период 0,49 с ХА1Т ЯХ1: вЬТс Р1МР,РКЕ100 2 ;ожидание нажатия гзпр МАТТ ЯХО кнопки РЕЕ100 2 1***назначение периода наступления тайм-аута = 1, 9 с с1т гепр ;включение оцг РОВтВ,гепр светодиодов 14(1 гепр,ЯОР ;включение сторожевого таймера, оцг ХОТСЕ,гепр ; период 1,9 с г3пр Хйтт ЯХО Задания для самостоятельного программирования 1.

Изменить программу 4.1, добавив в нее обработку нажатия кнопки, исключающую влияние дребезга. Для этого запрограммировать линию порта РВО на вывод для программного ввода событий в таймер. Ввод событий выполнять прн условии замыкания кнопки 8!Чх, присоединенной к порту (линию и порт выбрать самостоятельно). Выполняя проверку состояния кнопки 8%х, эмулировать сигнал 1 на выводе РВО при замкнутом состоянии 0 кнопки. Перед загрузкой программы выполнить ее отладку в АЧВ 8(п(1!о и, убедившись в правильности работы программы, проверить ее в 8ТК500. 2.

Изменить программу 4.1 так, чтобы при замыкании кнопки 8ТАмТ (8%1) состоялся вывод на индикаторы числа зарегистрированных событий. 3. Подготовить программу по примеру 4.2 для проверки работы таймера(счетчика Т! в режиме таймера. Время включения светодиодов 1 и 8 с. 136 4 Таймеры микроконтроллеров А Тх85/5 4. Написать программу, которая каждые 50 мс по запросу прерывания от таймера считывает состояние кнопочного регистра Я'й/, при замыкании определяет номер замкнутой кнопки и высвечивает его на линейке светодиодов. 5. Написать программу для электронного секундомера, предусмотрев вывод секундных значений в младшую тетраду, десятков секунд — в старшую тетраду светодиодной линейки 5ТК500.

Характеристики

Список файлов книги

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