
- •Конспект лекций по дисциплине Микропроцессоры и микропроцессорные системы управления
- •Раздел 1 Основы микропроцессорной техники Тема 1.1 Принцип программного управления – основной принцип работы мп
- •Тема 1.2 Принцип централизации управления мпс. Шинная связь
- •Урок №5
- •Тема 1.3 Регистровая модель микропроцессора
- •1.3.1 Классификация внутренних регистров мп
- •1.3.2 Две архитектуры мп: аккумуляторная и регистровая
- •1.3.4* Внутренняя структура мп i8080
- •1.3.5* Регистровая модель мп i8080
- •Урок № 6
- •Урок №7 Лабораторная работа №1 Ввод, компиляция и отладка программ в avr Studio
- •Урок №8 Лабораторная работа №2 Анализ работы ядра микроконтроллера
- •Тема 1.4 Режимы работы микропроцессорной системы
- •Урок №11 Тема: Упражнения. Подготовка к лабораторным работам №3, 4
- •Урок №12 Лабораторная работа №3 Анализ работы микропроцессора в программном режиме и в режиме вызова подпрограмм
- •1 Практические задания и методические указания по их выполнению
- •3 Контрольные вопросы:
- •Урок №13 Лабораторная работа №4 Анализ работы микропроцессора в режиме прерывания программы
- •2 Практические задания и методические указания по их выполнению
- •3 Оформление отчета
- •4 Контрольные вопросы:
- •Урок №14
- •Тема 1.5 Микроконтроллеры
- •Раздел 2 микроконтроллеры семейства avr
- •Тема 2.1 История создания, классификация микроконтроллеров семейства avr
- •Тема 2.2 Типы корпусов микроконтроллеров семейства avr
- •Урок №17
- •Тема 2.3 Основные параметры, назначение выводов мк aTtiny2313
- •Урок №18
- •Тема 2.4 Основные параметры, назначение выводов мк aTmega8535
- •Урок №17
- •Тема 2.3 Основные параметры, назначение выводов мк aTtiny2313
- •Урок №18
- •Тема 2.4 Основные параметры, назначение выводов мк aTmega8535
- •Урок №19
- •Тема 2.5 Синхронизация работы мк avr
- •Урок №20
- •Тема 2.6 Система сброса
- •Урок №21
- •Тема 2.7 Параллельные порты микроконтроллеров семейства avr
- •Урок №22
- •Тема 2.8 Команды обращения к параллельным портам микроконтроллеров семейства avr
- •Урок №27 Лабораторная работа № 5 Методика отладки программ на лабораторном стенде «Программирование мк aTmega8535»
- •Урок №28 Лабораторная работа № 6 Разработка и отладка программы «Copy»
- •Урок № 29
- •Тема 2.9 Типичные схемы подключения светодиодов к выходам мк
- •Урок №30
- •Урок №31
- •Тема 2.10 Типичные схемы подключения семисегментных индикаторов к выходам мк
- •Урок №32
- •Урок №33
- •Урок №34 Лабораторная работа № 7 Исследование работы схемы статической индикации на лабораторном стенде «Программирование мк aTmega8535
- •2 Практические задания и методические указания по их выполнению.
- •Урок № 35
- •Тема 2.11 Типичные схемы подключения двоичных датчиков
- •Урок № 36
- •Урок №37
- •Тема 2.12 Программирование микроконтроллеров
- •Урок № 38 Подготовка к лабораторным работам № 8, 9
- •Урок № 39 Лабораторная работа №8 Программирование микроконтроллера с помощью программатора Phyton
- •Урок № 40 Лабораторная работа №9 Отладка программ на стенде «Цифровые микросхемы»
- •Урок № 41
- •Тема 2.13 Система прерываний
- •Урок №42
- •Урок №43
- •Урок №45 Лабораторная работа №10 Исследование логики прерывания от внешнего устройства
- •1 Краткие сведения из теории
- •2 Практические задания и методические указания по их выполнению
- •3 Оформление отчета
- •Урок № 46
- •Урок № 47
- •Тема 2.14 Таймеры
- •Урок № 49
- •Урок № 50
- •Урок № 51 Лабораторная работа № 11 Исследование работы таймера-счетчика t/c0
- •1 Краткие сведения из теории
- •3 Оформление отчета
- •Тема 2.12 Лабораторный комплекс «Микроконтроллеры и автоматизация»
- •Тема 2.13 Примеры программ ввода-вывода
- •Раздел 4 специальные возможности микроконтроллеров семейства avr Тема 4.1 Система прерываний
3 Оформление отчета
Отчет должен содержать:
1 Название, цель работы
2 Выводы
Контрольные вопросы
1 Как можно изменять частоту тиков таймера-счетчика Т/C0
2 Перечислите регистры таймера Т/C0
3 Назовите основные операции по настройке таймера
Тема 2.12 Лабораторный комплекс «Микроконтроллеры и автоматизация»
2.12.1 Назначение, состав комплекса, основные режимы работы
2.12.2 Электрическая принципиальная схема комплекса
2.12.3 Общие принципы работы с комплексом
2.12.4 Режим набора программы
2.12.5 Запись программы в микроконтроллер
2.12.6 Проверка функционирования программы
2.12.1 Назначение, состав комплекса, основные режимы работы
Лабораторный комплекс «Микроконтроллеры и автоматизация» предназначен для изучения программирования микроконтроллеров ATmega8535 семейства AVR. В состав комплекса входит ПК, блок связи с ПК, блок питания, 8 рабочих мест.
Рисунок 1 – Состав комплекса «Микроконтроллеры и автоматизация»
Программное обеспечение работы комплекса работает в среде Windows 98 и представляет собой 2 программы «SERVER» и «PK&MK». Связь комплекса с ПК осуществляется через последовательный порт CОM2.
Блок питания обеспечивает питание комплекса от напряжения 5В.
Блок связи с ПК обеспечивает поочередное подключение к ПК рабочих мест.
Каждое рабочее место содержит микроконтроллер ATmega8535, набор периферии: 5 кнопок, 5 тумблеров, 3 светодиода, два 7-сегментных индикатора, пьезоизлучатель, задатчик напряжения для АЦП.
Основные режимы работы комплекса:
1 Ввод программы
2 Запись программы в память МК
3 Проверка функционирования программы
4 Вывод листинга программы на печать
5 Работа с виртуальными объектами автоматизации
В режимах 1и 3 рабочие места работают автономно, в остальных режимах к ПК может быть подключено только одно рабочее место, остальные места блокируются. В режиме работы с виртуальными объектами автоматизации кабели всех рабочих мест отключаются от блока связи, и к разъему
«Управление виртуальным объектом» подключается только одно рабочее место.
2.12.2 Электрическая принципиальная схема комплекса
На рисунке 2 изображена электрическая принципиальная схема лабораторного стенда «Микроконтроллеры и автоматизации».
Схема стенда содержит минимум коммутационной и сигнальной аппаратуры, необходимой для программирования ввода-вывода данных через параллельные порты A, B, C, D:
пять кнопок SB1-SB5;
пять тумблеров SA1-SA5;
кнопку «Сброс» SB6;
три светодиода VD4-VD6;
звуковой пъезоизлучатель HA1;
два семисегментных индикатора HG1,HG2.
Рисунок 2 - Электрическая принципиальная схема лабораторного стенда «Микроконтроллеры и автоматизации»
Кнопки SB1-SB5 и тумблеры SA1-SA5 подключены так, чтобы при нажатой кнопке и включенном тумблере на входах портов формировались лог.1.
Светодиоды VD4-VD6 подключены непосредственно к выходам порта D. Чтобы зажечь светодиод, необходимо выдать через выход порта лог.1.
В схеме используются два семисегментных индикатора с ОА. Чтобы подключить ОА индикатора HG1 к источнику питания Vcc, необходимо выдать через выход PB.2 лог.1. Для подключения питания к ОА HG2 необходимо выдать PB.3=1. Используется прямое управление свечением сегментов через выходы порта С: лог.1 зажигает сегмент, лог.0 гасит.
Рассмотрим несколько примеров простейших программ для схемы стенда.
Пример 1. Составить фрагмент программы, выполняющий следующие действия: включить светодиоды VD4, VD6 и выключить светодиод VD5.
ldi r16,$ff ;настроим порт D на вывод
out ddrd,r16
;==============================
ldi r16,$0b01010000 ;сформируем код для порта D
out portd,r16 ;вывести код в порт D
Пример 2. Составить фрагмент программы, выполняющий следующие действия: при нажатии на кнопку SB1 включается светодиод VD4
ldi r16,$ff ;настроим порт D на вывод
out ddrd,r16
ldi r16,$0 ;настроим порт А на ввод
out ddrа,r16
;==============================
start:
sbis pina,1 ;пропустить следующую команду, если
;кнопка SB1 нажата
rjmp start ;повторить опрос кнопки
sbi portd,2 ;включить VD4
Пример 3. Составить фрагмент программы, выполняющий следующие действия: светодиод VD4 включается при нажатии на кнопку SB1 и выключается при нажатии на кнопку SB2
ldi r16,$ff ;настроим порт D на вывод
out ddrd,r16
ldi r16,$0 ;настроим порт А на ввод
out ddrа,r16
;==============================
start:
sbis pina,1 ;пропустить следующую команду, если
;кнопка SB1 нажата
rjmp start ;повторить опрос кнопки SB1
sbi portd,2 ;включить VD4
off:
sbis pina,2 ;пропустить следующую команду, если
;кнопка SB2 нажата
rjmp off ;повторить опрос кнопки SB2
cbi portd,2 ;выключить VD4
rjmp snart ;бесконечный цикл
Пример 4. Высветить на индикаторе HG2 символ «0». Индикатор HG1 должен быть погашен.
;конфигурация портов В и С на вывод
ldi r16,$ff
out ddrb,r16
out ddrс,r16
;==============================
cbi portb,2 ;выключить HG1
sbi portb,3 ;включить HG2
ldi r16,$3f ;код символа «0»
out portc,r16 ;вывести код символа «0» в порт С
Урок 28 Продолжение темы 2.12
2.12.3 Общие принципы работы с комплексом «Микроконтроллеры и автоматизация»
Выбор режима работы и коммутация рабочих мест осуществляется в блоке связи с ПК. На рисунке 3 изображена лицевая панель блока.
Рисунок 3 - Лицевая панель блока связи с ПК
Тумблер выбора режимы работы «Программирование - Управление объектом» должен находиться в верхнем положении во всех режимах, кроме режима работы с виртуальными объектами автоматизации. Переключатель «Запись – Работа» переключается в положение «Запись» в режиме записи программы в микроконтроллер, в остальных режимах работы должен находиться в положении «Работа». Переключатель выбора рабочего места устанавливает номер места, в микрококнтроллер которого записывается программа и действует только в режиме записи программы.
Светодиоды «SPI» индицируют запись программы в МК через последовательный порт микроконтроллера SPI.
Светодиоды «Rх», «Tx» индицируют связь МК с последовательным портом ПК в режиме управления виртуальным объектом.
На рисунке 4 изображена лицевая панель блока рабочего места.
Рисунок 4 - Лицевая панель блока рабочего места
В нижней части лицевой панели находится жидкокристаллический индикатор, тумблер выбора режима работы «Набор программы - Управление объектом» и индикатор «Запрет обмена».
2.12.4 Режим набора программы
В режиме набора программы выполняется набор текста программы с клавиатуры рабочего места, все рабочие места связаны с ПК, тест программы отображается на ЖКИ рабочего места и на экране ПК.
Таблица 1 - Порядок набора программы
№ |
Действия студента (рабочее место) |
Действия преподавателя (блок связи с ПК, ПК) |
1 |
|
Убедиться, что к блоку связи с ПК подключены соединительные кабели всех рабочих мест, тумблер находится в положении «Программирование», а переключатель в положении «Работа». Включить тумблер «Питание» на БП. |
2 |
Убедиться, что к блоку рабочего места подключен соединительные кабели ПК и клавиатуры, тумблер находится в положении «Набор программы». Нажать кнопку «Сброс». Убедиться, что на ЖКИ высветилась надпись Место с соответствующим номером. Если надпись не появилась, сообщить об этом преподавателю. |
|
3 |
|
Запустить программу SERVER. На экране появится диалог: 1- удалить старые файлы 2- загрузить старые файлы (созданные в предыдущем сеансе связи) 3 – не удалять, не загружать Открывается рабочее окно программы, которое представляет собой 8-оконный интерфейс связи с каждым рабочем местом. |
4 |
Нажать кнопку «Сброс» и клавишу «Пробел». Убедиться, что светодиод «Запрет обмена» выключен. Изображение на ЖКИ начинает дублировать изображение окна рабочего места на экране. Начать набор текста программы. Так как количество знаков на экране ЖКИ ограниченно числом 16, директиву .include “m8535def.inc” вводить не нужно, она добавится к тексту программы автоматически. Сообщить преподавателю о завершении набора программы. |
|
5 |
|
Предупредить студентов о временном прекращении работы. Выбрать окно рабочего места одновременным нажатием клавиш ALT+ цифра номера места. Распахнуть окно - F5, просмотреть и при необходимости отредактировать тест программы - F4. Запустить компиляцию программы F9. Если в программе нет ошибок, можно приступить к записи программы в МК. Если при компиляции появились сообщения об ошибках, необходимо приступить к редактированию программы – нажать Esc. |
6 |
Редактирование программы начинается с нажатия на клавишу F6. Появляется сообщение о первой ошибке. Вновь нажмите на клавишу F6, при этом произойдет возврат в режим редактирования, и курсор будет находится на строке с ошибкой. После исправления ошибки еще раз нажмите F6, опять высвечивается исправленная ошибка (сообщение будет удалено в процессе компиляции), нажмите стрелку , чтобы перейти к следующей ошибке. Исправив очередную ошибку, нажимайте F6 и стрелку . После исправления всех ошибок попросите преподавателя повторить компиляцию программы. |
|
Таблица 2 – Горячие клавиши программы SERVER
Alt+x |
Выход |
Alt+номер |
Номер рабочего места |
F2 |
Запись программы места на винчестер |
F4 |
Редактирование программы на экране ПК |
F5 |
Распахнуть окно |
F6 |
Просмотр ошибок в режиме редактирования |
F8 |
Очистить буфер текста |
F9 |
Компиляция |
2.12.5 Запись программы в микроконтроллер
Запись программы в МК выполняется преподавателем по подсказкам на экране ПК. После компиляции программы нажимается клавиша 1. Появляется надпись «Прошивка микроконтроллера. Нажмите любую клавишу…».
После этого необходимо выполнить следующие действия:
установить переключатель рабочего места;
установить переключатель «Запись-Работа» в положение «Запись»;
нажать любую клавишу, дождаться сообщения «Запись окончена!!! Нажмите любую клавишу»;
вернувшись к 8-оконному интерфейсу, установить переключатель «Запись-Работа» в положение «Работа»
2.12.6 Проверка функционирования программы
Проверка функционирования программы выполняется каждым студентом на своем рабочем месте. Для этого связь с ПК не нужна. Необходимо только подать питание от БП. После нажатия кнопки «Сброс» начинается выполнение программы с нулевого адреса. Если при проверке выявляются логические ошибки, в программу вносятся коррективы и повторяется процесс компиляции и записи программы в МК.
Контрольные вопросы и задания:
1 Перечислите все устройства, подключенные к микроконтроллеру в схеме, изображенной на рисунке 1.
2 Для чего нужен кварцевый резонатор?
3 Как работает цепь сброса?
4 Как следует конфигурировать порты?
5 Как включить светодиоды VD4-VD6?
6 Как зажечь сегменты индикатора HG1?
7 Как зажечь сегменты индикатора HG2?
8 Можно ли включить оба семисегментных индикатора одновременно?
Урок 29