Главная страница

Методические указания для практических занятий по дисциплине мдк. 02. 01


Скачать 7.37 Mb.
НазваниеМетодические указания для практических занятий по дисциплине мдк. 02. 01
Дата09.09.2022
Размер7.37 Mb.
Формат файлаpdf
Имя файлаMetod_Mikroprocessornye-sistemy_PZ_09.02.01_2020.pdf
ТипМетодические указания
#669073
страница22 из 43
1   ...   18   19   20   21   22   23   24   25   ...   43
AVR-микроконтроллеров. Создание исходного текста программы, трансляция и отладка выполняются в интегрированной среде разработки (Integrated Development Environment - IDE)
AVR Studio.
Практическая работа №32. Тестирование и отладка микропроцессорных систем при
работе с данными.
Цель работы: изучение этапов разработки ПО для встраиваемых микропроцессоров; приобретение навыков работы в среде AVR Studio.
Теоретические сведения
Работа в среде AVR Studio. В состав среды AVR Studio входит редактор исходных текстов, транслятор с языка ассемблера, отладчик и симулятор.

173
Транслятор работает с исходными программами на языке ассемблера, содержащими метки, директивы, команды и комментарии. Метка представляет собой символическое обозначение адреса (последовательность символов, заканчивающаяся двоеточием). Метки используются для указания места в программе, в которое передаётся управление при переходах, а также для задания имён переменных. Директивы являются инструкциями для транслятора и не заносятся в исполняемый код программы. Директивы могут иметь один или несколько параметров. Команды записываются в программе в виде мнемонического обозначения выполняемой операции и могут иметь один или несколько операндов, т. е. аргументов, с которыми они вызываются. Транслятор позволяет указывать операнды в различных системах счисления: десятичной (по умолчанию, например, 15, 15 4), шестнадцатеричной (префикс 0х или $, например, 0x0f, $0f, 0x9a, $9a), восьмеричной (префикс - нуль, например, 017, 02 32) и двоичной (префикс 0b, например,
0b00001111, 0b10011010). Строка программы должна быть не длиннее 120 символов и может иметь одну из четырёх форм:
[метка:] .директива [параметры] [;Комментарий]
[метка:] команда [операнды] [;Комментарий]
[;Комментарий]
[Пустая строка]
Позиции в квадратных скобках необязательны. Текст после точки с запятой и до конца строки является комментарием и транслятором игнорируется. Включение в текст программы комментариев является признаком хорошего стиля программирования и облегчает её сопровождение. Кроме того, улучшению читаемости также способствует форматирование текста программы. При программировании на ассемблере выполнение этих правил особенно важно, т. к. программы на языке ассемблера отличаются существенной неудобочитаемостью.
Указать тип микроконтроллера, для которого транслируется программа, позволяет директива . device, например:
.device ATmega8535
; программа для микроконтроллера ATmega8535
При наличии в программе команд, не поддерживаемых указанным в директиве микроконтроллером, транслятор выдаёт соответствующее предупреждение.
Входным для транслятора является файл <имя_файла>.asm с текстом программы на языке ассемблера. Транслятор создаёт четыре новых файла: файл листинга (<имя_файла>.^^, объектный файл (<имя_файла>.obj), файл- прошивку памяти программ (<имя_файла>.hex) и файл-прошивку энергонезависимой памяти данных (<имя_файла>.eep).
Файл листинга - это отчёт транслятора о своей работе. На рис. 6 приведена часть листинга трансляции программы, в которой числа 2, 5 и 19 заносятся соответственно в регистры R17, R18 и R19; вычисляется произведение и сумма содержимого регистров R17 и R18; из суммы содержимого регистров R17 и R18 вычитается содержимое регистра R19. Листинг содержит исходный текст транслируемой программы, каждой команде которой поставлены в соответствие машинные коды (правый столбец чисел) и адреса ячеек памяти программ, в которых они будут размещены (левый столбец чисел). Машинные коды и адреса приводятся в шестнадцатеричной системе счисления. Например, строка листинга с командой add содержит следующую информацию: 0f12 - машинный код команды; 0 0 0 0 0 4 - адрес размещения данной команды в памяти программ.

174
Объектный файл имеет специальный формат и используется для отладки программы с помощью симулятора-отладчика среды AVR Studio. Файл прошивки памяти программ служит для занесения отлаженной программы в память программ микроконтроллера. Файл прошивки
EEPROM-памяти данных предназначен для загрузки информации в энергонезависимую память данных. Операции загрузки памяти программ и энергонезависимой памяти данных выполняются с помощью специальных аппаратных средств (программаторов).
Практическая часть
Составить программу вычисления произведения и суммы двух чисел А и В, находящихся в
РОН. Из суммы А и В вычесть число С. За основу взять программу, приведённую на рис. 6.
Числа изменить в соответствии с заданным вариантом (табл. 1). В начало программы поместить директиву . device для микроконтроллера ATmega8535 (здесь и далее предполагается использование микроконтроллера ATmega8535). В комментариях указать фамилию и номер группы.
Выполнить разработку программы в среде AVR Studio
1
, проделав следующие операции.
Создать новый проект, воспользовавшись командой New Project меню Project. В появившемся диалоговом окне в поле Project Name ввести имя создаваемого проекта без расширения (информация о проекте сохраняется в файле с расширением .aps). В поле Location указать место размещения файлов проекта на диске (путь); в поле Project type выбрать пункт
AVR Assembler (исходные тексты программ разрабатываются на языке ассемблера). Для создания файла исходной программы установить флажок Create initial File. Задать имя файла программы, отличающееся от имени проекта, можно в поле Initial File (расширение .asm файлов программ на ассемблере устанавливается автоматически). Создание каталога для хранения файлов проекта обеспечивается установкой флажка Create Folder. Рекомендуется каждый проект размещать в отдельном каталоге. Нажать кнопку «Next»
2.
В группе Select debug platform and device в поле Debug Platform указать способ отладки создаваемого проекта - AVR Simulator (симулятор- отладчик), в поле Device выбрать тип микроконтроллера, для которого создаётся программа (ATmega8535). Нажать кнопку
«Finish». На экране появится дерево иерархии проекта (окно Workspace, закладка Project) и окно редактора исходных текстов программ.
Если при создании проекта не был установлен флажок Create initial file, создать файл исходного текста программы можно командой New File меню File.
3.
Ввести и отредактировать текст программы. Сохранить файл, воспользовавшись командой Save меню File. Если файл с исходным текстом программы уже существует, его можно включить в проект командой Add existing File меню Project или контекстного меню окна иерархии проекта при выделенной группе Assembler.
4.
Провести трансляцию созданной программы, воспользовавшись командой Build and run меню Project (или сочетанием клавиш Ctrl+F7 на клавиатуре). Перед трансляцией убедиться, что
1
Запуск программы
AVR Studio
производится из группы
ATMEL AVR Tools
меню
Пуск Программы.

175
установлен флажок List file в диалоговом окне AVR Assembler, вызов которого осуществляется командой AVR Assembler Setup меню Project (это необходимо для создания листинга трансляции). По окончании трансляции в окне Output на закладке Build появится информация о результатах трансляции. Открыть файл листинга можно из дерева иерархии проекта (окно
Workspace, закладка Project). После этого с помощью команды Save Project меню Project сохранить изменения в файле проекта.
1.
Некоторые команды меню программы AVR Studio доступны из панели инструментов
(см. Приложение 4).
3. Распечатку программ и листингов трансляции обеспечивает команда Print меню File, предварительный просмотр - команда Print Preview меню File, настройку параметров печати - команда Print Setup меню File.
Содержание отчета
Отчёт должен содержать: титульный лист с указанием номера и названия практической работы, номера группы и фамилий выполнивших работу; цель работы; схему программной модели AVR-микроконтроллера; перечень этапов разработки прикладного ПО для встраиваемых
МП (МК); распечатку листинга трансляции созданной программы с расшифровкой одной из строк.
Контрольные вопросы
1.
Назначение однокристальных микроконтроллеров.
2.
Особенности архитектуры однокристальных микроконтроллеров.
3.
Архитектура и программная модель AVR-микроконтроллеров.
4.
Этапы разработки ПО для встраиваемых микропроцессоров.
5.
Формат строки программы на ассемблере для AVR-микроконтроллеров.
Состав листинга трансляции.
Практическая работа №33. Тестирование и отладка микропроцессорных систем при
работе с операторами.
Цель работы: изучение команд отладчика среды AVR Studio; приобретение навыков отладки программ под управлением отладчика.
Теоретические сведения.
Особенность отладки ПО устройств на базе встраиваемых МП (в том числе однокристальных микроконтроллеров) состоит в отсутствии в их составе развитых средств для реализации пользовательского интерфейса и ограниченных возможностях системного ПО . В то же время, именно для встраиваемых микропроцессорных систем этап отладки является чрезвычайно ответственным, так как для них характерна тесная взаимосвязь работы ПО и аппаратных средств.
Взаимодействие микропроцессора (микроконтроллера) с датчиками и исполнительными устройствами происходит путём передачи данных через регистры периферийных устройств
(регистры ввода-вывода). Отдельные разряды таких регистров задают режимы работы периферийных устройств, имеют смысл готовности к обмену, завершения передачи данных и т. п. Состояние этих разрядов может устанавливаться как программно, так и аппаратно. При отладке ПО часто приходится переходить на уровень межрегистровых передач и проверять правильность установки отдельных разрядов. Кроме того, на этапе отладки может производиться оптимизация алгоритма, нахождение критических участков кода и проверка надёжности разработанного ПО.
Для решения указанных задач применяются аппаратные и программные средства отладки
ПО (рис. 33.1).

176
К аппаратным средствам отладки относятся аппаратные эмуляторы и проверочные модули.
Аппаратные эмуляторы предназначены для отладки программного и аппаратного обеспечения микропроцессорных систем в режиме реального времени. Они работают под управлением «ведущего» компьютера, оснащённого специальным ПО - программами- отладчиками (см. ниже). Основными видами аппаратных эмуляторов являются:
- внутрисхемные эмуляторы или эмуляторы-приставки, замещающие микропроцессор в отлаживаемой системе;
- внутрикристальные эмуляторы, представляющие собой одно из внутренних устройств микропроцессора.
Внутрисхемный эмулятор (In-Circuit Emulator, ICE) - это устройство, содержащее аппаратный имитатор процессора и схемы управления имитатором. При отладке с помощью эмулятора микропроцессор извлекается из отлаживаемой системы, на его место подключается контактная колодка, количество и назначение контактов которой идентично выводам замещаемого микропроцессора (рис. 8). С помощью гибкого кабеля контактная колодка соединятся с эмулятором. Управление процессом отладки осуществляется с персонального ком- пьютера. Эмуляторам-приставкам присущи следующие недостатки: высокая стоимость, недостаточная надёжность, высокое энергопотребление, влияние на электрические характеристики цепей, к которым подключается эмулятор.
Внутрикристальные эмуляторы (On-Chip Emulator) позволяют проводить отладку программ без извлечения микропроцессора из системы. При этом осуществляется непосредственный контроль за выполнением программы, так как средства внутрикристальной отладки обеспечивают прямой доступ к регистрам, памяти и периферии микропроцессора.
Наиболее распространённым средством внутрикристальной отладки является последовательный интерфейс IEEE 1149.1, известный как JTAG (Joint Test Action Group -
Объединённая рабочая группа по автоматизации тестирования). Последовательный отладочный порт JTAG микропроцессора с помощью специального устройства сопряжения подключается к компьютеру, чем обеспечивается доступ к отладочным средствам процессора (рис. 33.3). Такой способ отладки также называют сканирующей эмуляцией. Достоинствами этого способа является возможность выполнения различных действий на процессоре без его изъятия из системы, использование малого числа выводов процессора и поддержка его максимальной производительности без изменения электрических характеристик системы.
Рис. 33.2. Отладка с помощью внутрисхемного эмулятора N - количество выводов
процессора

177
Проверочные модули предназначены для быстрой отладки программного обеспечения в реальном масштабе времени. Проверочные модули бывают двух видов: стартовые наборы и отладочные платы.
Стартовые наборы (Starter Kit) предназначены для обучения работе с конкретным микропроцессором. Стартовый набор позволяет изучить характеристики микропроцессора, отладить не слишком сложные программы, выполнить несложное макетирование, проверить возможность применения микропроцессора для решения конкретной задачи. В состав стартового набора входит плата, ПО и комплект документации. На плате устанавливается микропроцессор, устройство загрузки программ, последовательные или параллельные порты, разъёмы для связи с внешними устройствами и другие элементы. Плата подключается к компьютеру через параллельный или последовательный порт. Стартовые наборы удобны на начальном этапе работы с микропроцессором.
Отладочные платы (Evaluation Board) предназначены для проверки разработанного алгоритма в реальных условиях. Они позволяют проводить отладку и оптимизацию алгоритма с использованием установленной на плате периферии, а также изготовить на базе платы законченное устройство. Обычно на плате размещается микропроцессор, схемы синхронизации, интерфейсы расширения памяти и периферии, схема электропитания и др. Плата подключается к компьютеру через параллельный или последовательный порт или непосредственно устанавливается в слот PCI.
Основными программными средствами отладки являются симуляторы и отладчики.
Симуляторы (simulator) или симуляторы системы команд представляют собой программы, имитирующие работу того или иного процессора на уровне его команд. Симуляторы обычно используются для проверки программ или её отдельных частей перед испытанием на аппаратных средствах.
Отладчики (debugger) представляют собой программы, предназначенные для анализа работы созданного программного обеспечения. Можно указать следующие возможности отладчиков.
1.
Пошаговое выполнение. Программа выполняется последовательно команда за командой с возвратом управления отладчику после каждого шага.
2.
Прогон. Выполнение программы начинается с указанной команды и осуществляется без остановки до конца программы.
3.
Прогон с контрольными точками. При выполнении программы происходит останов и передача управления отладчику после выполнения команд с адресами, указанными в списке контрольных точек.
4.
Просмотр и изменение содержимого регистров и ячеек памяти. Пользователь имеет возможность выводить на экран и изменять (модифицировать) содержимое регистров и ячеек памяти.
Отладчики ПО встраиваемых микропроцессоров обычно используются совместно с внутрисхемными или внутрикристальными эмуляторами, а также могут работать в режиме симулятора. Некоторые отладчики позволяют также выполнять профилирование, т. е. определять действительное время выполнения некоторого участка программы. Иногда функцию профилирования выполняет специальная программа - профилировщик (profiler).
Средства отладки ПО AVR-микроконтроллеров. Аппаратные средства отладки программного обеспечения AVR-микроконтроллеров представлены внутрисхемным эмулятором
ICE50, внутрикристальным эмулятором JTAG ICE, а также стартовым набором STK500.
Рис. 33.3. Отладка с помощью внутрикристального эмулятора

178
К программным средствам отладки ПО AVR-микроконтроллеров относятся отладчик и симулятор, входящие в состав среды AVR Studio. Отладчик среды AVR Studio позволяет проводить отладку программ как в исходных кодах (например, ассемблера), так и в кодах дизассемблера (оттранслированной или скомпилированной программы, записанной с помощью мнемоник ассемблера). Вызов окна с кодом дизассемблера производится командой Disassembler меню View или командой Goto Disassembly контекстного меню редактора исходного текста.
Обратное переключение в окно исходного текста осуществляется командой Goto Source контекстного меню окна Disassembler.
Отладчик среды AVR Studio может использоваться с внутрисхемным эмулятором ICE50, внутрикристальным эмулятором JTAG ICE, отладочной платой STK500 или симулятором.
Указание способа отладки производится при создании проекта. Симулятор среды AVR Studio предназначен для предварительной отладки программ без применения аппаратных средств. В дальнейшем в настоящем лабораторном практикуме для отладки создаваемых программ предполагается применение отладчика среды AVR Studio в режиме симулятора.
Отладка ПО в среде AVR Studio. Команды отладчика в программе AVR Studio находятся в меню Debug.
Переход в режим отладчика в среде AVR Studio осуществляется автоматически при использовании для трансляции программы команды Build and Run или командой Start Debugging меню Debug при использовании для трансляции команды Build. Выход из режима отладчика производится командой Stop Debugging меню Debug.
Пошаговое выполнение программы задаётся командами Step Into, Step Over меню Debug.
Команда Step Into позволяет выполнить одну команду программы (в т. ч. команду вызова подпрограммы). Для завершения выполнения подпрограммы может использоваться команда Step
Out. Команда Step Over также выполняет одну команду программы, но если это команда вызова подпрограммы, последняя полностью выполняется за один шаг. Следующая выполняемая ко- манда (команда, адрес которой содержится в программном счётчике) обозначается символом
■=[> в окне исходного текста программы. Сброс выполнения программы осуществляется с помощью команды Reset.
Прогон (запуск или продолжение выполнения) программы осуществляется командой Run.
Для остановки выполнения программы служит команда Break.
Контрольные точки представляют собой специальные маркеры для программы-отладчика и могут быть трёх типов: точки останова, точки трассировки и точки наблюдения.
Точки останова задаются командой Toggle Breakpoint меню Debug или контекстного меню редактора исходного текста программы. Точка останова обозначается в редакторе исходного текста символом О слева от помечаемой строки. Просмотреть заданные точки останова можно на закладке
1   ...   18   19   20   21   22   23   24   25   ...   43


написать администратору сайта