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

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

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

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

4.8. При работе таймера7счетчика Т1 в режиме ШИМа состояние счетчика меняется от О до значения ТОР, а затем снова до О, после чего цикл повторяется. При равенстве состояния счетчика и содержимого регистра сравнения состояние соответствующего этому регистру вывода микроконтроллера изменяется согласно табл. 4.9 (х обозначает А или В).

Таким образом, длительность ШИМ- сигнала равна 2лlгге 81, где л — содержимое регистра сравнения. Таблица 4.9. Поведение выходов схемы сравнения в режиме ШИМа Таймер/счетчик Т1 отключен от вывода Таймер!счетчик Т1 отключен от вывода Сбрасывается я О при прямом счете и устанав- ливается я 1 при обратном (неинвертирован- ный ШИМ-сигнал) Устанавливается в 1 прн прямом счете и сбра- сывается в О при обратном (инвертированный ШИМ-сигнал) Соответственно если в регистр сравнения записать значение О или ТОР, то при следующем совпадении состояния счетчика и содержимого регистра сравнения выход схемы сравнения переключится в устойчивое состояние согласно табл. 4.10 (х = А или В). !!9 118 4. Таймеры микроконтроллеров АТхВ515 4.3.прагр равание та ера ТО Таблица 4,10.

Устойчивые состояния выхода схемы сравнения Особенностью работы таймера1счетчика Т1 в режиме ШИМа является то, что при записи в регистр сравнения младшие 10 разрядов записываемого числа на самом деле сохраняются в специальном временном регистре. Изменение содержимого регистра сравнения происходит только в момент достижения счетчиком максимального значения ТОР. Благодаря такому решению исключается появление в ШИМ-сигнале импульса со случайной длительностью. Соответственно при чтении регистра сравнения в промежутке между записью в него и действительным изменением возвращается содержимое временного регистра, т.

е. всегда возвращается значение, записанное последним. При работе таймера/счетчика Т1 в режиме ШИМа может генерироваться прерывание по переполнению счетчика, а также прерывание от схемы сравнения. Флаги прерываний устанавливаются в 1 при изменении счетчиком направления счета: флаг ТО'у'! — в точке О, а флаги ОСЕ)А (для регистра ОСК1А) и ОСЕ!В !для регистра ОСК1В) — в точке ТОР. Разрешение и обработка соответствующих прерываний выполняются как обычно. 4.3.

ПРОГРАММИРОВАНИЕ ТАЙМЕРА ТО Режим счетчика Подготовить программу для исследования таймера1счетчика ТО в режиме счетчика событий. Событием в данном случае может быть замыкание одной из кнопок Б%х на плате БТК500. Результат работы программы отобразить средствами индикации. С помощью 10-проводного шлейфа подключим выводы порта РВ к выводам кнопок В%0 — 3%7 св данном случае будет использован только вывод РВΠ— вход внешнего сигнала таймера ТО).

С помощью второго 10-проводного шлейфа соединяем выводы порта РР с выводами светодиодов 1.ЕПΠ— ).ЕО7. Программируем вывод РВО на ввод, все выводы порта РГ) — на вывод. Настраиваем тай- ;Программа 4.1 для МК АТх8515. ;демонстрация работы таймера ТО в режиме счетчика событий; ;событие — нажатие кнопки ЯХО. ;Светодиоды включаются после четвертого нажатия на кнопку ;ЯИО. Соединения шлейфами: порт РВ-ЯХ, порт РР-ЬЕР * * * *** ************* ;.Тпс1цбе "8515бет.тпс" ;файл определений АТ9088515 .1пс1цбе "ш8515с(е1.1пс" ;файл определений Атшеча8515 .с(ег Сешр = г18 ;временный регистр ;***Таблица векторов прерываний .огч 5000 гзшр 1МТТ ;обработка сброса .осч 8007 г5шр ТО ОУР ;"**Инициализация МК 1М1Т.

"1бь Сешр,1ои(В)ИЕМР) ;установка оцС ЯРЬ,Сеш 1 указателя стека 161 Сешр,П19Л(НАМЕМР) ; на последнюю оцС ЯРН,Сешр ячейку ОЗУ с1г Секр ;инициализация порта РВ оцС РРВВ,Сешр на ввод 161 Секр,Ох01 ;включение оцС РОНТВ,Сешр подтягиваюшего резистора РВО вег сешр ;инициализация порта РР оцС РРНР,Сепр на вывод оцС РОЕТР,Сешр ;выключение светодиодов 161 Сешр,Ох20 ;ЯЕ=1 — разрешение перехода оцС МСОСВ,Секр > в режим 161е ;***Настройка таймера ТО на режим счетчика событий 1с(1 Сешр,Ох02 ;разрешение прерывания по ооС ттМЯК,Сешр переполнению таймера 161 ешр,Ох07 ;переключение таймера обработка переполнения таимера мер на режим счета внешних событий !нажатие кнопки В%0).

После нескольких, например четырех, нажатий должно произойти переполнение таймера (следовательно, начальное значение счетчика ТСХТΠ— $РС) н вызов обработчика прерываний. Обработчик должен включить светодиоды, показывая, что программа выполнена корректно, и заново инициализировать счетчик таймера для продолжения работы, если планируется неоднократное повторение программы. Время включения светодиодов установим, используя подпрограмму задержки. Программа 4.1 !20 !2! 4.3. Программирование таймера ТО Режим таймера задержка Программа 4.2 с.тпс1цбе "8515бет.тпс" .Тпс1цбе "п8515бет.тпс" .бег Гепр = г16 ;Файл определений АТ90Я8515 ;файл определений Атпеда8515 свременный регистр 4.

Тайиврм микроконтроллеровАТгВ5!5 оцт ТССНО,Гепр ; по положительному фронту зет ~разрежение прерываний 1б1 Гепр,ОхРС ;ЯРС=-04 для оцс ТСИТО,тепр ; отсчета четырех нажатий ЬООР: втеер ;переход в режим пониженного пор энергопотребления тзпр ЬООР с***Обработка прерывания при переполнении таймера ТО ТО Оугс с1т Гепр оцс Ровто,сепр !включение светодиодов гса11 ОЕЬАТ вег сеп|р оцг Ровто,сепр ;выключение светодиодов 1бф Гепр,ОхРС ;ЯРО= † для оцг ТСНТО,Гепр ; отсчета четырех нажатий гег1 ;"** Задержка *** ОЕЬАтс тбь г19,10 1бь т20,255 1б1 г21,255 ббс бес г21 Ьгпе бб бес г20 Ьгпе бб бес т19 Ьгпе бб гег Результат работы программы будет таков. При четвертом нажатии на кнопку 8%0 загораются все светодиоды (в случае дребезга контактов светодиоды могут включиться раньше).

Длительность времени, в течение которого они горят, определяется задержкой ПЕЬА т'. Далее действия могут быть повторены. Как уже было сказано в теоретической части, события для таймера/счетчика ТО можно генерировать программно. Для этого необходимо настроить вывод РВО как выход. В данном случае инкремент счетчика будет происходить после выполнения команд программы, эмулирующих положительный или отрицательный фронт, как этого требует настройка таймера: ;положительный фронт сигнала на РВО сЬ1 РОНТВ,О вЬТ РОНТВ,О ;отрицательный фронт сигнала на РВО вЬт РОНТВ,О сЬ1 РОНТВ,О Подготовить программу для исследования таймера/счетчика ТО в режиме таймера. Дяя наглядности работы таймера в этом режиме можно запрограммировать следующие действия: при нажатии на первую кнопку на вход таймера поступают сигналы с частотой, равной частоте тактового генератора СК, при нажатии на вторую кнопку на вход таймера поступают сигналы с частотой, например, СК/8.

В обоих случаях сразу после нажатия загораются светодиоды, а после переполнения таймера и обработки соответствующего прерывания светодиоды гаснут. Таким образом, во втором случае время свечения светодиодов будет в восемь раз больше, чем в первом, что и означает правильность выполнения программы.

Если установить частоту тактового генератора микроконтроллера равной 512 Гц, то время включения светодиодов в первом случае 0,5 с, во втором — 4 с (0,5. 8). (Внимание! Частоту тактового генератора необходимо изменять после программированиямикроконтроллера.) На плате БТК500 необходимо соединить выводы порта РП с кнопками 8%0 — 8%7, выводы порта Р — со светодиодами ЬЕ1)0 — ЬЕ1)7. Для обработки нажатия кнопок используем метод последовательного опроса состояния кнопок. *** ********+*+****************************************** ;Программа 4.2 для МК АТх8515с демонстрация работы таймера ;ТО в режиме таймера. для наблюдений необходимо установить ;частоту тактового генератора СЕ=512 Гц.

При нажатии на ;ях2 на вход счетчика поступают сигналы с частотой ск, ;при нажатии на ЯНЗ вЂ” СК/8. В первом случае время с начала ;счета до переполнения (выключения светодиодов) — 0,5 с, сво втором — 4 с. ;Соелинения: пара Р02сРОЗ-пара ЯЖ2:ЯЫЗ, РВ-ЬЕО .***************я*******ь********* **** ь** ** * ** !гг 123 4.

Таймеры микроконтроллеров А ТхВ515 4.4. Программирование функций тайиера Т! .еЧц ЯХ2 = 2 ;2-й вывод порта Ро .еЧц яХЗ = З :3-й вывод порта Ро ;"""Таблица векторов прерываний .огц ЯООО гзвр тиП ;обработка сброса .огЧ БООТ гзвр ТО Оуг ;обработка переполнения таймера ТО ;***Инициализация МК 1НТТ: 161 Гевр,1он(ВАМЕН0) ;установка оцс Яро,севр указателя стека 161 Гевр,ЬТЧЬ(КАМЕН0) ; на последнюю оцс ЯРН,Гевр ячейку оэу с1г Гевр ;инициализация порта Ро опГ 00но,хевр на ввод 1бг Гевр,охОС )включение подтягиваювих оцс РОКТО,Гевр резисторов порта Ро вег гевр ;инициализация порта РВ опГ 00ВВ,Гевр на вывод оцГ РОКТВ,Севр ;выключение светодиодов 1***настройка таймера ТО на режим таймера 1б1 гевр,ох02 ;разрешение прерывания по оцГ Т1МЯК,Гевр переполнению таймера ТО с1г Гевр ;таймер ТО оцг тссно,гевр остановлен включение светодиодов зеь разрешение прерываний с1г гевр ;отсчет оцг тснто,гевр начинается с 0 ;***Ожидание нажатия кнопок ХАТТЯЕТ 0: вЬТс Р1НО,ЯХ2 гпроверка нажатия гзвр Ххттаят кнопки ЯХ2 ;***Обработка нажатия кнопки ЯХ2 1оь Гевр,ох01 ;частота тактовых сигналов- СК гса11 ЬЕО ОН ;включение светодиодов ХАТТЯЕТ 1: зЬТс Ртио,БХЗ ;проверка нажатия гЗвр ХАТТЯЕТ 0 кнопки БХЗ ;***Обработка нажатия кнопки ЯХЗ 1аь Гавр,Ох02 ;частота сигналов — СК/8 гса11 ЬЕО ОН гэвр ХйттЯЕт О ;***Обработка прерывания при переполнении таймера ТО ТО ОЧР: вег Гевр оцс РОКТВ,Гевр с1г Гевр оцг тсско,гавр с1г гевр оцГ ТСНТО,Гевр гЕГ1 г***Включение светодиодов ЬЕ0 ОН:оцс ТССКО,Гевр ;выключение светодиодов ;останов г таймера ТО густановка 0 ;настройка источника тактового сигнала ;включение светодиодов с1г Гевр оцс РОКТВ,Гевр гег Результат работы программы: нажатие кнопки 8%2 приводит к тому, что все светодиоды светятся в течение 0,5 с; при нажатии 8%3 — в течение 4 с.

!Примечание. Новое нажатие будет обрабатываться сразу, т. е. при нажатии сначала на 8ЖЗ, а затем на 8%'2, не дожидаясь отключения светодиодов, они погаснут через 0,5 с после второго нажатия). Работа таймера)счетчика Т1 в режимах счетчика событий и таймера аналогична работе таймера)счетчика '1'О.

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

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

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