Главная » Просмотр файлов » Кочегаров И.И. Микроконтроллеры AVR. Лабораторный практикум (2012)

Кочегаров И.И. Микроконтроллеры AVR. Лабораторный практикум (2012) (1264221), страница 9

Файл №1264221 Кочегаров И.И. Микроконтроллеры AVR. Лабораторный практикум (2012) (Кочегаров И.И. Микроконтроллеры AVR. Лабораторный практикум (2012)) 9 страницаКочегаров И.И. Микроконтроллеры AVR. Лабораторный практикум (2012) (1264221) страница 92021-07-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 9)

В состав среды AVR Studio входитредактор исходных текстов, транслятор с языка ассемблера, отладчики симулятор.Транслятор работает с исходными программами на языке ассемблера, содержащими метки, директивы, команды и комментарии.Метка представляет собой символическое обозначение адреса (последовательность символов, заканчивающаяся двоеточием). Меткииспользуются для указания места в программе, в которое передаетсяуправление при переходах, а также для задания имен переменных.Директивы являются инструкциями для транслятора и не заносятся висполняемый код программы. Директивы могут иметь один или несколько параметров. Команды записываются в программе в видемнемонического обозначения выполняемой операции и могут иметьодин или несколько операндов, т.е.

аргументов, с которыми они вызываются. Транслятор позволяет указывать операнды в различныхсистемах счисления: десятичной (по умолчанию, например, 15, 154),шестнадцатеричной (префикс 0х или $, например, 0x0f, $0f, 0x9a,$9a), восьмеричной (префикс – нуль, например, 017, 0232) и двоичной (префикс 0b, например, 0b00001111, 0b10011010). Строка программы должна быть не длиннее 120 символов и может иметь однуиз четырех форм:[метка:] .директива [параметры] [;Комментарий][метка:] команда [операнды] [;Комментарий][;Комментарий][Пустая строка]Позиции в квадратных скобках необязательны.

Текст после точки с запятой и до конца строки является комментарием и транслятором игнорируется. Включение в текст программы комментариев является признаком хорошего стиля программирования и облегчает еесопровождение. Кроме того, улучшению читаемости также способствует форматирование текста программы. При программировании наассемблере выполнение этих правил особенно важно, так как программы на языке ассемблера неудобочитаемы.Указать тип микроконтроллера, для которого транслируетсяпрограмма, позволяет директива .device, например:.device ATmega16; программа для микроконтроллераATmega1654При наличии в программе команд, не поддерживаемых указанным в директиве микроконтроллером, транслятор выдает соответствующее предупреждение.Входным для транслятора является файл <имя_файла>.asm стекстом программы на языке ассемблера.

Транслятор создает четыреновых файла: файл листинга (<имя_файла>.lst), объектный файл(<имя_файла>.obj), файл-прошивку памяти программ (<имя_файла>.hex) и файл-прошивку энергонезависимой памяти данных(<имя_файла>.eep).Файл листинга – это отчет транслятора о своей работе.На рис. 5 приведена часть листинга трансляции программы, в которой числа 2, 5 и 19 заносятся соответственно в регистры R17, R18 иR19; вычисляются произведение и сумма содержимого регистровR17 и R18; из суммы содержимого регистров R17 и R18 вычитаетсясодержимое регистра R19.

Листинг содержит исходный текст транслируемой программы, каждой команде которой поставлены в соответствие машинные коды (правый столбец чисел) и адреса ячеек памяти программ, в которых они будут размещены (левый столбец чисел). Машинные коды и адреса приводятся в шестнадцатеричнойсистеме счисления. Например, строка листинга с командой ADD содержит следующую информацию: 0f12 – машинный код команды;000004 – адрес размещения данной команды в памяти программ.000000 e012000001 e025000002 e133000003 9f12в R1:R0000004 0f12R17000005 1b31в R19LDI R17, 2 ; загрузка числа 2 в регистр R17LDI R18, 5 ; загрузка числа 5 в регистр R18LDI R19, 19 ; загрузка числа 13 в регистр R19MUL R17, R18 ; умножение R17 на R18, результатADD R17, R18 ; сложение R17 и R18, результат вSUB R19, R17 ; вычитание R17 из R19, результат000006 cfff met: RJMP met ; бесконечный цикл (для отладки)Рис.

5. Пример листинга трансляцииОбъектный файл имеет специальный формат и используетсядля отладки программы с помощью симулятора-отладчика среды55AVR Studio. Файл прошивки памяти программ служит для занесенияотлаженной программы в память программ микроконтроллера. Файлпрошивки EEPROM-памяти данных предназначен для загрузки информации в энергонезависимую память данных.

Операции загрузкипамяти программ и энергонезависимой памяти данных выполняютсяс помощью специальных аппаратных средств (программаторов).AVR Studio позволяет отслеживать выполнение программы врежиме симуляции или эмуляции, поддерживает программированиенизкого уровня на ассемблерах Atmel Corporation’s AVR и IARSystems, а также программ, написаных на языке Си, в том числеи с ассемблерными вставками IAR Systems и поддерживает ICCA90 –Cи-компилятор для AVR-микроконтроллеров. AVR Studio также поддерживает COFF как выходной формат для символьной отладки ипрограммные пакеты от производителей Imagecraft C и E-lab pascal.AVR Studio работает под управлением Windows XP и более новыхоперационных систем корпорации Microsoft.Вся система команд AVR поддерживается AVR Studio, в обоихрежимах просмотра (дизассемблера и исходного программного кода).Можно выполнять программу пошагово или до достижения определенного условия.

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

6. Окно сообщений проекта56Окна и режимы AVR StudioОкно Source. Одно из основных окон диалога AVR Studio – окно Source (рис. 7). При открытии файла автоматически создается окно Source. По умолчанию считается, что программа представлена наязыке ассемблера и происходит запуск симуляции именно в этомформате. Можно переключать вид представления программы из формата дизассемблера в формат ассемблера и обратно при условии, чтопрограмма в настоящий момент не выполняется. Окно Source отражает программу, выполняемую в настоящий момент на микроконтроллере.

Маркер команды всегда указывает на следующую за выполняемой команду. При этом панель Status отображает работу эмулятора или симулятора.Рис. 7. Основное окно отладки (Sourсe)Окно Source создается при загрузке объектного файла на выполнение и присутствует на протяжении всего процесса отладки.Если закрыть окно Source, процесс отладки будет прерван. Отметкина левом поле указывают позицию программного счетчика, программных меток, точек останова и трассировку выполняющихся операторов.Желтая стрелка указывает на текущее положение счетчика команд (Program Counter) и отображает следующую за выполняемойкоманду.

Коричневый квадрат обозначает точку останова (Breakpoint). Выполнение программы прекращается при достижении этойточки. Незакрашенный коричневый квадрат обозначает отключенную точку останова (Disabled Breakpoint). Выполнение программыв этом месте не будет прервано, и точка используется как метка.57Зеленая буква Т – включение буфера трассировки (Trace On).При достижении этой метки будет включен буфер трассировки.Запись в буфер будет продолжаться до тех пор, пока не встретитсякоричневая буква Т – точка окончания записи Trace Off.Окно Source поддерживает буфер обмена Windows. Можно выбрать часть или весь текст в окне Source и скопировать его в буферобмена Windows.

Также поддерживаются функции поиска текста втекущем модуле или во всех модулях. Первый случай совпадениявыделяется. Выберите find next (или Ctrl-N) для дальнейшего поискапо тексту. Точки остановки, точки трассировки и переключения, текущие позиции выполнения и функция копирования также доступнычерез нажатие правой кнопки мыши в окне Source.Режимы отладки.

Объектный файл может состоять из нескольких модулей. Одновременно можно просматривать не более одного модуля, но можно выбирать другие модули в окне, расположенном в верхней левой части окна Source, что очень удобно для просмотра и установки контрольных точек в различных модулях однойпрограммы.Исходный отлаживаемый текст можно просматривать различными способами. В зависимости от того, какой из способов просмотра выбран, отладка будет производиться в выбранном режиме.Отображение в исходном коде (Source Mode).

По умолчаниюокно открывается в данном режиме при загрузке объектного файла наотладку, при этом доступны все опции отладки.П р и м е ч а н и е. При открытии объектного файла, не содержащего информации для отладки, опции отладки недоступны. Для возврата на первоначальную позицию отладки в этом режиме выполните операцию Step Into.Режим смешанного отображения (Mixed Mode). Находящаясяв памяти программа дизассемблируется и отображается вместе с текстовой информацией в исходном коде.

Все операции отладки происходят через дизассемблер.Окно Processor. Окно процессора содержит текущую информацию о ядре контроллера и имеет следующие поля.Программный счетчик (Program Counter). Программный счетчик всегда указывает на следующий адрес команды относительновыполняющейся в данный момент. Содержимое программного счетчика отображается в шестнадцатеричной системе счисления и можетбыть изменено в режиме остановки программы. Если изменить содержимое программного счетчика, то будет отменена та команда, на58которую он прежде указывал. После того как программный счетчикизменен, необходимо нажать кнопку F11 режима пошагового выполнения для перехода по новому адресу.Указатель стека (Stack Pointer).Указатель стека содержит адресвершины стека.

Если в микроконтроллере присутствует аппаратныйстек, а не стек, расположенный в SRAM, то он отражается в областиуказателя стека. Содержимое указателя стека можно изменять в режиме останова программы.Счетчик циклов (Cycle Counter). Счетчик циклов содержит информацию о количестве пройденных тактовых циклов с момента последнего сброса. Содержимое счетчика циклов отображается в десятичной форме и не может быть изменено в процессе выполненияпрограммы.Частота (Frequency).

В области «частота» отображена текущаяэмулируемая опорная частота процессора.Флаги (Flags). В окне «флаги» отображается содержимое регистра флагов (Status register). В режиме остановки программы эти биты могут быть изменены, если щелкнуть мышкой на флаге. Тестирование регистра статуса устанавливает соответствующие флаги в 1.Окно сообщений Message. В окне сообщений отображаетсятекущая информация пользователю от AVR Studio.

Характеристики

Список файлов книги

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