MCDIPL (Разработка программной и аппаратной поддержки к методическим указаниям Программирование микроконтроллеров)

2016-07-31СтудИзба

Описание файла

Документ из архива "Разработка программной и аппаратной поддержки к методическим указаниям Программирование микроконтроллеров", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "MCDIPL"

Текст из документа "MCDIPL"

2


Министерство ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Воронежский Государственный Университет

Физический факультет

№______________________

кафедральной регистрации

“К ЗАЩИТЕ ДОПУЩЕНА”

Зав. кафедрой физики полупроводников

и микроэлектроники

проф. __________ Петров Б.К.

“____”__________2002 г.

УДК.681.3 КОРОБКОВ Георгий Николаевич

РАЗРАБОТКА ПРОГРАММНОЙ И АППАРАТНОЙ
ПОДДЕРЖКИ К МЕТОДИЧЕСКИМ УКАЗАНИЯМ
«ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ»

Магистерская диссертация по направлению «Физика»

Научный руководитель

доц. ___________ Клюкин В.И.

ВОРОНЕЖ 2002

РЕФЕРАТ

УДК. 681.3 КОРОБКОВ Георгий Николаевич

РАЗРАБОТКА ПРОГРАММНОЙ И АППАРАТНОЙ ПОДДЕРЖКИ К МЕТОДИЧЕСКИМ УКАЗАНИЯМ «ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ». – Магистерская диссертация по направлению «Физика», Воронеж, ВГУ, 2002. – 93 с., илл. 45, табл. 4, прилож. 5, библ. 21 назв.

В настоящее время микроконтроллеры принимают все большее распространение. Однако, информации по вопросам обучения программированию микроконтроллеров в соединении с внешними исполнительными бывает не достаточно.

В работе рассмотрены архитектура, аппаратные и программные средства распространенных и недорогих микроконтроллеров фирмы ATMEL серии AVR типа AT90S1200, AT90S2313, AT90S4414 и AT90S8515. Анализ методики программирования в интегрированной среде разработке позволил объединить практические рекомендации с некоторыми особенностями обучения программирования микроконтроллеров. На основании этого предложен алгоритм обучения.

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

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

СОДЕРЖАНИЕ

ВВЕДЕНИЕ 4

1. ОСНОВЫ АРХИТЕКТУРЫ МИКРОКОНТРОЛЛЕРОВ 6

1.1. ОСНОВНЫЕ ТИПЫ МИКРОКОНТРОЛЛЕРОВ И ИХ АРХИТЕКТУРА 6

1.2. Аппаратные средства 10

1.2.1. Запуск микроконтроллера 10

1.2.2. Тактирование и командные циклы 10

1.2.3. Программный счетчик и АЛУ 11

1.2.4. Подпрограммы и функции 13

1.2.5. Ввод/вывод данных 17

1.3. Инструментальные и программные средства разработки и отладки 20

1.4. Основные типы интерфейсов МК. 27

1.4.1. Подключение переключателей и подавление «звона» контактов. 27

1.4.2. Световая индикация. 28

1.4.3. Ввод с матричной клавиатуры. 30

2. ОСОБЕННОСТИ ПОСТРОЕНИЯ И ФУНКЦИОНИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ ФИРМЫ ATMEL СЕМЕЙСТВА AVR 32

2.1. Архитектура микропроцессорного ядра AVR-микроконтроллеров 32

2.2. Аппаратные средства AVR. 41

2.3. Система команд микроконтроллера AVR 49

3. ПРОГРАММНОЕ И ИНСТРУМЕНТАЛЬНОЕ ОБЕСПЕЧЕНИЕ ПРОЦЕССА ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ 56

3.1. Написание и отладка программного кода с помощью AVR Studio 56

3.1.1. Обзор AVR Studio 57

3.1.2. Создание нового проекта 58

3.1.3. Исполнение программного кода 62

3.2. Анализ методики реализации разработки программного обеспечения 69

3.2.1. Классификация вариантов заданий 69

3.2.2. Рассмотрение типовых примеров 73

3.3. Описание макета программатора. 77

ЗАКЛЮЧЕНИЕ 80

БИБЛИОГРАФИЧЕСКИЙ СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 81

ПРИЛОЖЕНИЕ 1 Инструкции процессоров AVR. 83

ПРИЛОЖЕНИЕ 2. Таблица регистров микроконтроллера AT90S1200 88

ПРИЛОЖЕНИЕ 3. Программа для измерителя звуковой частоты 89

ПРИЛОЖЕНИЕ 4. Программа для устройства «кодовый замок» 91

ПРИЛОЖЕНИЕ 5. Основные характеристики
микроконтроллеров AVR 93

ВВЕДЕНИЕ

Можно считать что микроконтроллер (МК) – это компьютер, разместившийся в одной микросхеме. Отсюда и его основные привлекательные качества: малые габариты; высокие производительность, надежность и способность быть адаптированным для выполнения самых различных задач.

Микроконтроллер помимо центрального процессора (ЦП) содержит память и многочисленные устройства ввода/вывода: аналого-цифровые преобразователи, последовательные и параллельные каналы передачи информации, таймеры реального времени, широтно-импульсные модуляторы (ШИМ), генераторы программируемых импульсов и т.д. Его основное назначение – использование в системах автоматического управления, встроенных в самые различные устройства: кредитные карточки, фотоаппараты, сотовые телефоны, музыкальные центры, телевизоры, видеомагнитофоны и видеокамеры, стиральные машины, микроволновые печи, системы охранной сигнализации, системы зажигания бензиновых двигателей, электроприводы локомотивов, ядерные реакторы и многое, многое другое. Встраиваемые системы управления стали настолько массовым явлением, что фактически сформировалась новая отрасль экономики, получившая название Embedded Systems (встраиваемые системы).

Достаточно широкое распространение имеют МК фирмы ATMEL, функциональные возможности которых охватывают все перечисленные задачи [1,2].

Применение МК можно разделить на два этапа: первый – программирование, когда пользователь разрабатывает программу и прошивает ее непосредственно в кристалл, и второй – согласование спроектированных исполнительных устройств с запрограммируемым МК. Значительно облегчают отладку программы на первом этапе – симулятор, который наглядно моделирует работу микропроцессора. На втором этапе для отладки используется внутрисхемный эмулятор, который является сложным и дорогим устройством, зачастую недоступным рядовому пользователю.

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

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

1. ОСНОВЫ АРХИТЕКТУРЫ МИКРОКОНТРОЛЛЕРОВ

1.1. ОСНОВНЫЕ ТИПЫ МИКРОКОНТРОЛЛЕРОВ И ИХ АРХИТЕКТУРА

Если представить все типы современных микроконтроллеров (МК), то можно поразиться огромным количеством разнообразных приборов этого класса, доступных потребителю. Однако все эти приоры можно разделить на следующие основные типы:

  • Встраиваемые (embedded) 8-разрядные МК;

  • 16- и 32-разрядные МК;

  • Цифровые сигнальные процессоры.

Промышленностью выпускаются очень широкая номенклатура встраиваемых МК. В них все необходимые ресурсы (память, устройства ввода-вывода и т.д.) располагаются на одном кристалле с процессорным ядром [3]. Если подать питание и тактовые импульсы на соответствующие входы МК, то можно сказать, что он как бы «оживет» и с ним можно будет работать. Обычно МК содержат значительное число вспомогательных устройств, благодаря чему обеспечивается их включение в реальную систему с использованием минимального количества дополнительных компонентов. В состав этих МК входят:

  • Схема начального запуска процессора (Reset);

  • Генератор тактовых импульсов;

  • Центральный процессор;

  • Память программ (E(E)PROM) и программный интерфейс;

  • Средства ввода/вывода данных;

  • Таймеры, фиксирующие число командных циклов.

Общая структура МК показана на рис. 1.1. Эта структура дает представление о том, как МК связывается с внешним миром.

Более сложные встраиваемые МК могут дополнительно реализовывать следующие возможности:

  • Встроенный монитор/отладчик программ;

  • Внутренние средства программирования памяти программ (ROM);

  • Обработка прерываний от различных источников;

  • Аналоговый ввод/вывод;

  • Последовательный ввод/вывод (синхронный и асинхронный);

  • Параллельный ввод/вывод (включая интерфейс с компьютером);

  • Подключение внешней памяти (микропроцессорный режим).

Все эти возможности значительно увеличивают гибкость применения МК и делают более простым процесс разработки систем на и основе.


Рис. 1.1. Структура микроконтроллера.

Некоторые МК (особенно 16- и 32-разрядные) используют только внешнюю память, которая включает в себя как память программ (ROM), так и некоторый объем памяти данных (RAM), требуемый для данного применения. Они применяются в системах, где требуется большой объем памяти и относительное не большое количество устройств (портов) ввода/вывода. Типичным примером применения такого МК с внешней памятью является котроллер жесткого диска (HDD) с буферной кэш-памятью, который обеспечивает промежуточное хранение и распределение больших объемов данных (порядка нескольких мегабайт). Внешняя память дает возможность такому микроконтроллеру работать с более высокой скоростью, чем встраиваемый МК.

Цифровые сигнальные процессоры (DSP) – относительно новая категория процессоров. Назначение DSP состоит в том, чтобы получать текущие данные от аналоговой системы, обрабатывать данные и формировать соответствующий отклик в реальном масштабе времени. Они обычно входят в состав систем, используясь в качестве устройств управления внешним оборудованием, и не предназначены для автономного применения.

Система команд.

В зависимости от числа используемых кодов операций системы команд МК можно разделить на две группы: CISC и RISC. Термин CISC означает сложную систему команд и является аббревиатурой английского определения Complex Instruction Set Computer. Аналогично термин RISC означает сокращенную систему команд и происходит от английского Reduce Instruction Set Computer. Систему команд МК 8051 можно отнести к типу CISC. Однако, не смотря на широкую распространенность этих понятий, необходимо признать, что сами названия не отражают главного различия между системами команд CISC и RISC. Основная идея RISC архитектуры – это тщательный подбор таких комбинаций кодов операций, которые можно было бы выполнить за один такт тактового генератора. Основной выигрыш от такого подхода – резкое упрощение аппаратной реализации ЦП и возможность значительно повысить его производительность.

Очевидно, что в общем случае одной команде CISC соответствует несколько команд RISC. Однако обычно выигрыш от повышения быстродействия в рамках RISC перекрывает потери от менее эффективной системы команд, что приводит к более высокой эффективности RISC систем в целом по сравнению с CISC.

Однако в настоящее время грань между CISC и RISC архитектурой стремительно стирается. Например, МК семейства AVR фирмы Atmel имеют систему команд из 120 инструкций, что соответствует типу CISC. Однако большинство из них выполняется за один такт, что является признаком RISC архитектуры. Сегодня принято считать, что признаком RISC архитектуры является выполнение команд за один такт тактового генератора. Число команд само по себе значения уже не имеет.

Типы памяти МК.

Можно выделить три основных вида памяти, используемой в МК:

а) память программ;

б) память данных;

в) регистры МК.

Память программ представляет собой постоянную память, предназначенную для хранения программного кода и констант. Эта память не изменяет содержимого в процессе выполнения программы. Память данных предназначена для хранения переменных в ходе выполнения программы. Регистры МК – этот вид памяти включает внутренние регистры процессора и регистры, которые служат для управления периферийными устройствами.

Для хранения программ обычно служит один из видов постоянной памяти: ROM (масочные ПЗУ), PROM (однократно программируемые ПЗУ), EPROM (электрически программируемые ПЗУ с ультрафиолетовым стиранием) или EEPROM (ПЗУ с электрической записью и стиранием, к этому виду также относятся современные микросхемы Flash-памяти). Все эти виды памяти являются энергонезависимыми – это означает, что содержимое памяти сохраняется после выключения питания МК.

Многократно программируемые ПЗУ – EPROM и EEPROM (Electrically Erasable Programmable Memory) подразделяются на ПЗУ со стиранием ультрафиолетовым (УФ) облучением (выпускаются в корпусах с окном), и МК с электрически перепрограммируемой памятью, соответственно.

В настоящее время протоколы программирования современной EEPROM памяти позволяют выполнять программирование МК непосредственно в составе системы, где он работает. Такой способ программирования получил название – ISP (In System Programming). И теперь можно периодически обновлять программное обеспечение МК без удаления из платы. Это дает огромный выигрыш на начальных этапах разработки систем на базе МК или в процессе их изучения, когда масса времени уходит на многократный поиск причин неработоспособности системы и выполнение последующих циклов стирания-программирования памяти программ.

Функционально Flash-память мало отличается от EEPROM. Основное различие состоит в способности стирания записанной информации. В памяти EEPROM стирание производится отдельно для каждой ячейки, а во Flash-памяти стирание осуществляется целыми блоками.

ОЗУ (RAM) – оперативное запоминающее устройство, используется для хранения данных. Эту память называют еще памятью данных. Число циклов чтения и записи в ОЗУ неограниченно, но при отключение питания вся информация теряется.

1.2. Аппаратные средства

1.2.1. Запуск микроконтроллера

Во многих приложениях используется батарейное питание МК, а в некоторых случаях применяются даже конденсаторы большой емкости, которые обеспечивают сохранение работоспособности при кратковременных отключеньях питания. Поэтому проблема энергопотребления (энергосбережения) весьма актуальна для МК. Так как практически все современные МК производятся по КМОП технологии, то они потребляют значительно меньше мощности, чем ранее выпускавшиеся биполярные или n-МОП – микроконтроллеры.

Сброс в начальное состояние.

На рис. 1.3. изображена схема сброса. Эту схему лучшего всего использовать в случаях, когда гарантированно поддержание напряжения питания в рабочем диапазоне. Кнопка RESET используется в процессе разработки устройств для сброса МК в начальное состояние. (См. рис. 1.2. )


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