Методические указания к лабораторным
работам со стендом STK500 и МК ATMega16
Содержание
Введение | 3 |
Особенности микроконтроллера ATmega16 (ATmega16L) | 4 |
Работа со стендом | 6 |
Пример загрузки программы в стенд | 8 |
Лабораторная работа №1. «Изучение структуры стенда STK500 и системы команд микроконтроллера ATmega16» | 10 |
Лабораторная работа №2. «Система прерываний. Работа с таймером/счетчиком 0» | 18 |
Лабораторная работа №3. «Изучение 16 – разрядного Таймера/счетчика 1» | 28 |
Введение
Стенд STK500 представляет собой лабораторный макет с микроконтроллером, памятью программ, памятью данных и разнообразными периферийными устройствами. Он позволяет разрабатывать и отлаживать программы, написанные на языках Си и Ассемблер.
Загрузка программы производится с персонального компьютера через последовательный порт RS-232. Макет работает от источника напряжения - 10-15 Вольт.
В лабораторных работах будет использоваться микроконтроллер фирмы ATMEL - ATmega 16.
Условные обозначения:
Особенности микроконтроллера ATmega16 (ATmega16L)
· 8-разрядный высокопроизводительный AVR микроконтроллер с малым потреблением.
· Прогрессивная RISC архитектура:
- 130 высокопроизводительных команд, большинство команд выполняется за один тактовый цикл;
- 32 8-разрядных рабочих регистра общего назначения;
- полностью статическая работа;
- производительность приближается к 16 MIPS (при тактовой частоте 16 МГц);
- встроенный 2-цикловый переумножитель.
· Энергонезависимая память программ и данных:
- 16 Кбайт внутренней программируемой Flash памяти (In-System Self-Programmable Flash);
- обеспечивает 1000 циклов стирания/записи;
- дополнительный сектор загрузочных кодов с независимыми битами блокировки;
- внутрисистемное программирование встроенной программой загрузки;
- обеспечен режим одновременного чтения/записи (Read-While-Write);
- 512 байт EEPROM;
- обеспечивает 100000 циклов стирания/записи;
- 1 Кбайт встроенной SRAM;
- программируемая блокировка, обеспечивающая защиту программных средств пользователя.
· Интерфейс JTAG (совместимый с IEEE 1149.1):
- возможность сканирования периферии, соответствующая стандарту JTAG;
- расширенная поддержка встроенной отладки;
- программирование через JTAG интерфейс: Flash, EEPROM памяти, перемычек и битов блокировки.
· Встроенная периферия:
- два 8-разрядных таймера/счетчика с отдельным предварительным делителем, один с режимом сравнения;
- один 16-разрядный таймер/счетчик с отдельным предварительным делителем и режимами захвата и сравнения;
- счетчик реального времени с отдельным генератором;
- четыре канала широтно-импульсного модулятора PWM;
- 8-канальный 10-разрядный аналого-цифровой преобразователь;
- 8 несимметричных каналов;
- 7 дифференциальных каналов (только в корпусе TQFP);
- 2 дифференциальных канала с программируемым усилением в 1, 10 или 200 раз (только в корпусе TQFP);
- байт-ориентированный 2-проводный последовательный интерфейс;
- программируемый последовательный USART;
- последовательный интерфейс SPI (ведущий/ведомый);
- программируемый сторожевой таймер с отдельным встроенным генератором;
- встроенный аналоговый компаратор.
· Специальные микроконтроллерные функции:
- сброс при подаче питания и программируемый детектор кратковременного снижения напряжения питания;
- встроенный калиброванный RC-генератор;
- внутренние и внешние источники прерываний;
- шесть режимов пониженного потребления: Idle, Power-save, Power-down, Standby, Extended Standby и снижения шумов ADC.
· Выводы I/O и корпуса:
- 32 программируемые линии ввода/вывода;
- 40-выводной корпус PDIP и 44-выводной корпус TQFP.
· Рабочие напряжения
2,7 - 5,5 В (ATmega16L)
4,5 - 5,5 В (ATmega16)
· Рабочая частота
0 - 8 МГц (ATmega16L)
0 - 16 МГц (ATmega16)
Блок- схема ATmega16:
Рисунок 1. Блок схема ATMega16
Работа со стендом STK500
Минимальные программные и аппаратные требования для работы с STK500
Рисунок.2. Схема подключения к ПК
Описание установки
Рисунок 3. Описание STK500
Описание работы светодиодов
Рисунок 4. Схема включения светодиода
В STK500 используются транзистор и два резистора для поддержания постоянной яркости свечения светодиодов при любом значении напряжения питания микроконтроллера (VTG), а также для выключения светодиодов, когда VTG отсутствует. Напряжение, подаваемое на светодиод, 1.8 – 6 Вольт. Для подключения светодиодов к МК нужен 10 – жильный кабель, которым соединяются разъем панели светодиодов и разъем ввода/вывода МК.
Описание работы кнопок
Рисунок 5. Схема кнопки
На линиях портов ввода-вывода AVR-микроконтроллеров имеется возможность активизации встроенных подтягивающих резисторов к плюсу питания. Это свойство можно использовать в целях исключения внешнего подтягивающего резистора. В STK500 добавлены внешние подтягивающие резисторы 10 кОм для формирования лог. «1» на выводах SWn при отжатом состоянии кнопок. Резистор 150 Ом выполняет функцию защитного токоограничения, например, в случае ошибочной настройки линий ввода-вывода, связанных с кнопками, на вывод.
Загрузка программы в стенд. Работа с программным обеспечением AVRStudio
Загрузка программы в стенд.
1. На персональном компьютере загрузить «Пуск->Atmel AVR Tools->AVRStudio».
Ввести имя проекта, нажать Finish.
Рисунок 6. AVR Studio