- •Конспект лекций по дисциплине Микропроцессоры и микропроцессорные системы управления
- •Раздел 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 Какие уровни сигнала внешнего прерывания способны вызвать прерывание?
2 Как задать уровень сигнала прерывания INT0?
3 Как разрешить прерывание от INT0?
4 Почему при вхождении в подпрограмму обработки прерывания сбрасывается флаг глобального прерывания, как это влияет на прерывания более высокого уровня?
Урок № 46
Тема: Закрепление материала. Подготовка к контрольной работе
Задание 1 Конфигурирование портов
Выполните настройку портов B и D: В – на ввод, D – на вывод
Выполните настройку порта B на ввод с внутренним подтягивающим резистором
В схеме, изображенной на рисунке 1 выполните настройку линий PB.7 и PD.0
Рисунок 1
Задание 2
Составьте фрагмент программы, выполняющий следующие действия: включить светодиод HL1
Задание 3
Составьте фрагмент программы, выполняющий следующие действия: выключить светодиод HL1
Задание 4
Составьте фрагмент программы, выполняющий следующие действия: выполнить опрос входа PD.0: если тумблер находится в верхнем положении, включить светодиод HL1, в противном случае ждать, пока тумблер включат
Задание 5
Составьте фрагмент программы, выполняющий следующие действия:
Организовать опрос тумблера в режиме прерывания программы. В момент выключения тумблера SA2 включается светодиод HL1.
Рисунок 1
Задание 6 Составьте схему подключения к порту С микроконтроллера ATmega8535 четырех замыкающих контактов и четырех светодиодов. Составьте фрагмент конфигурирования порта С.
Задание 7 Составьте схему подключения к порту А микроконтроллера ATmega8535 семисегментного индикатора с общим анодом.
Задание 8 Расчитайте величину токоограничивающего резистора для светодиода HL1. Тип светодиода АЛ307ЛМ
Задание 9 Объясните, как сконфигурированы порты в следующем фрагменте:
ldi r16,0
out ddra,r16
ldi r16,$ff
out porta,r16
out ddrс,r16
Задание 10 Объясните, какие прерывания разрешены в следующем фрагменте и уровень сигнала прерывания:
ldi r16,0b00000011
out mcucr,r16
ldi r16,0b01000000
out gicr,r16
Урок № 47
Тема 2.14 Таймеры
Вопросы темы:
2.14.1 Назначение, основные режимы работы таймера
2.14.2 Таймер-счетчик T/C0 МК АТmega8535
2.14.3 Регистры таймера-счетчика T/C0
2.14.4 Примеры программ формирования пауз с помощью таймера-счетчика T/C0
2.14.1 Назначение, основные режимы работы таймера
В микропроцессорах таймеры используются для оценки временных интервалов. С помощью таймера микропроцессор «обретает» чувство времени. Таймер вырабатывает сигналы на выходе, которые называют «тиками» через заданные промежутки времени. Например, если задать величину промежутка длительностью 1 сек, таймер работает как секундомер. Формировать «тики» - основная задача любого таймера, но современные таймеры выполняют еще множество других функций, наиболее важными являются следующие:
счет внешних импульсов, поступающих на вход микропроцессора;
генерация импульсов с настраиваемым соотношением длительности импульса и паузы (режим ШИМ);
Основой любого таймера является накапливающий регистр, на вход которого поступают импульсы определенной частоты. С каждым импульсом к содержимому регистра прибавляется 1. При переполнении регистра вырабатывается импульс переполнения, который является «тиком».
Интервалы между «тиками» зависят от двух параметров:
частоты входных импульсов;
разрядности накапливающего регистра.
Рисунок 1
Пример 1. Определите интервал между тиками, если частота входных импульсов суммирующего регистра F= 250 Гц, разрядность регистра n=8.
Чтобы определить интервал между тиками, необходимо определить, сколько времени пройдет до переполнения регистра:
t = N∙T (1)
N - количество входных импульсов до переполнения регистра,
Т - интервал между импульсами
Количество входных импульсов до переполнения регистра определяется по формуле:
N = 2n, (2)
n – разрядность регистра
n = 8, N=256
Интервал между импульсами – это период входной частоты, который определяется по формуле:
T = 1/F (3)
F – частота входных импульсов
F = 250 Гц, T = 0,004(сек)
Подставляя результаты расчетов по формулам (2) и (3) в (1), получим:
t = 256∙0,004 ≈ 1(сек)
Контрольные вопросы:
1 Для чего предназначены таймеры?
2 Что составляет основу таймера?
3 От чего зависит частота «тиков» таймера?
4 Определите интервал между «тиками» таймера, если частота входных импульсов F = 1МГц, разрядность накопительного регистра 16 бит?
Урок № 48
2.14.2 Таймер-счетчик T/C0 МК АТmega8535
В состав МК АТmega8535 входят 3 таймера-счетчика: 2 восьмиразрядных и 1 шестнадцатиразрядных. Все модели микроконтроллеров семейства AVR имеют восьмиразрядный таймер-счетчик T/C0. Рассмотрим принцип его работы.
Рисунок 2 Таймер T/C0
Основу таймера составляет 8-разрядный накапливающий регистр TCNT0, на его вход поступают импульсы Ф, частота которых зависит от частоты синхронизации МК и определяется по формуле:
Ф = Fq/Кдел, (1)
где Fq – частота синхронизации МК
Кдел – коэффициент деления
Величина коэффициента деления Кдел задается в регистре управления таймера TCCR0.
CS2 |
CS1 |
CS0 |
|
0 |
0 |
0 |
Таймер остановлен |
0 |
0 |
1 |
Кдел=1 |
0 |
1 |
0 |
Кдел=8 |
0 |
1 |
1 |
Кдел=64 |
1 |
0 |
0 |
Кдел=256 |
1 |
0 |
1 |
Кдел=1024 |
Рисунок 3- Формат регистра управления таймера
По сигналу переполнения накопительного регистра формируется флаг прерывания по переполнению таймера TOV0. Если прерывание по переполнению таймера разрешено, то вырабатывается сигнал требования прерывания по переполнению таймера и переход к подпрограмме обслуживания прерывания (адрес вектора $0009).
Контрольные вопросы:
1 Объясните принцип работы таймера-счетчика Т/C0
2 Как можно изменять частоту тиков таймера-счетчика Т/C0