- •Вступление
- •1 Программная среда avr Studio
- •1.1 Общие сведения
- •1.1.1 Отладка программы
- •1.1.2 Программный отладчик
- •1.1.3 Аппаратный отладчик
- •1.1.4 Полнофункциональные программные имитаторы электронных устройств
- •1.1.5 Внутренний отладчик микроконтроллеров avr
- •1.1.6 Программная среда «avr Studio»
- •1.2 Описание интерфейса. Главная панель программы «avr Studio»
- •1.3 Создание проекта
- •1.4 Трансляция программы
- •1.4.1 Форматы файлов
- •1.4.2 Формат нех-файла
- •1.4.3 Процедура трансляции
- •1.5 Отладка разрабатываемой программы
- •1.5.1 Ошибки алгоритма и его реализации
- •1.5.2 Этапы процесса отладки
- •1.5.3 Применение точек останова
- •1.5.4 Просмотр и изменение содержимого введенных переменных
- •1.6 Исправление ошибок
- •2. Лабораторные работы
- •2.1 Лабораторная работа №1
- •1 Принципиальная электрическая схема
- •2 Алгоритм
- •3 Программа на Ассемблере
- •4 Директивы
- •5 Операторы
- •6 Описание программы (листинг 1.1)
- •7 Задания для самостоятельной работы
- •8 Задания к лабораторной работе
- •9 Содержание отчета
- •2.2 Лабораторная работа №2
- •1 Принципиальная электрическая схема
- •2 Алгоритм
- •Программа на Ассемблере
- •3 Описание программы (листинг 2.1)
- •4 Задания для самостоятельной работы
- •1 Постановка задачи
- •2 Схема
- •3 Алгоритм
- •4 Программа на Ассемблере
- •5 Описание программы (листинг 3.1)
- •6 Задания для самостоятельной работы
- •7 Задания к лабораторной работе
- •8 Содержание отчета
- •9 Контрольные вопросы
- •3. Сводная таблица команд Ассемблера микроконтроллеров avr
- •Проектирование микропроцессорных систем
- •65044, Украина, Одесса, пр. Шевченко, 1
- •65044, Украина, г.Одесса, пр. Шевченко, 1, корп. 5
1.4.3 Процедура трансляции
Но вернемся к процедуре трансляции. Для того, чтобы запустить процесс трансляции текущего проекта, нужно выбрать в меню «Build» пункт, который тоже называется «Build», или нажать кнопку . Длительность процесса трансляции зависит от размеров программы. Сразу же после начала процесса вкладка «Build» в окне 2 выходит на передний план. В процессе трансляции сюда выводятся служебные сообщения. К таким сообщениям относятся: сообщения о завершении различных этапов трансляции, сообщения об ошибках (Error), а также предупреждения (Warning).
В готовой отлаженной программе ошибок и предупреждений быть не должно. Если программа обнаружит критическую ошибку (Error), то процесс трансляции будет приостановлен, и результирующие файлы созданы не будут. В этом случае необходимо устранить ошибки и повторить трансляцию.
Естественно, транслятор не в состоянии найти все виды ошибок. Он находит только явные ошибки, которые можно найти автоматически. К таким ошибкам относятся:
ошибки синтаксиса (неправильное написание имени команды);
неверное количество параметров у оператора;
попытка использования неописанных переменных и т. п.
Например, сообщение «Unknown instruction or macro» означает, что найдена «Неизвестная инструкция или макрокоманда».
Предупреждения – это тоже ошибки, но не критические. При возникновении некритической ошибки процесс трансляции завершается как обычно. Все результирующие файлы создаются в полном объеме. Однако прежде чем зашивать такую программу в микроконтроллер, тщательно проанализируйте сообщение и постарайтесь определить, как оно повлияет на результаты работы. В любом случае, лучше изменить программу таким образом, чтобы устранить все предупреждения.
Все сообщения во вкладке «Build» появляются по мере их поступления. Для наглядности каждое сообщение помечено цветным кружочком в начале строки:
сообщения об ошибках помечаются кружочком красного цвета;
предупреждения — желтым кружочком;
сообщения об успешном выполнении каждого очередного этапа трансляции помечаются зеленым кружочком.
Если сообщения не вмещаются в окно, то они скрываются в верхней его части. Однако, используя полосу прокрутки, их всегда можно просмотреть. В случае успешного завершения процесса трансляции в качестве последнего сообщения выводится статистическая информация (см. раздел 1.2).
Каждое сообщение об ошибке во вкладке «Build» содержит точное указание места в программе, где произошла эта ошибка. При этом указывается
имя файла;
номер строки;
фрагмент текста программы, содержащий ошибку;
ее расшифровка.
Для того, чтобы быстро перейти к фрагменту программы, содержащему эту ошибку, достаточно двойного щелчка по сообщению об ошибке. Окно с текстом программы выйдет на передний план, и в этом окне автоматически отобразится нужный участок текста. На левой границе окна напротив строки, содержащей ошибку, вы увидите синюю стрелочку – указатель ошибки.
Иногда программа неверно определяет место, где возникла ошибка. Это происходит из-за несовершенства анализатора синтаксиса. Дело в том, что очень сложно разработать идеальный алгоритм анализа ошибок. Если в какой-либо строке транслятор показывает ошибку, а вы ошибок не наблюдаете, посмотрите на предыдущие строки. Возможно, ошибка где-то там.