Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
Шаг 5. Переходим непосредственно к разработке устройств и программ 175 той же фирмой и предназначенным для создания, редактирования, транс ляции и отладки программ для AVR на Ассемблере. Подробнее о про граммной среде «AVR Studio» мы говорили в предыдущем Шаге книги. А сейчас наша задача — научиться создавать программы. Изучение языка будет происходить следующим образом. Я буду приводить гото вый текст программы для каждой конкретной задачи, а затем подробно описывать все его элементы и объяснять, как программа работает. Текст возможного варианта программы, реализующий поставлен ную выше задачу, приведен в листинге 5.1. Прежде, чем мы приступим к описанию данного примера, я хотел бы дать несколько общих понятий о языке Ассемблер. Программа на Ассемблере представляет собой набор команд и ком ментариев (иногда команды называют инструкциями). Каждая команда занимает одну отдельную строку. Их допускается перемежать пустыми строками. Команда обязательно содержит оператор, который выглядит как имя выполняемой операции. Это интересно знать. Некоторые команды состоят только из одного оператора. Другие же команды имеют один или два операнда (параметра). Операнды запи сываются в той же строке сразу после оператора, через пробел. Если операндов два, их записывают через запятую. Так, в строке 6 нашей программы записана команда загрузки кон станты в регистр общего назначения. Она состоит из оператора ldi и двух операндов temp и ramend . В случае необходимости перед командой допускается ставить так называемую метку. Она состоит из имени метки, заканчивающимся двое точием. Метка служит для именования данной строки программы. Затем это имя используется в различных командах для обращения к помечен ной строке. При выборе имени метки необходимо соблюдать следующие пра вила: ♦ имя должно состоять из одного слова, содержащего только латин ские буквы и цифры; ♦ допускается также применять символ подчеркивания; ♦ первым символом метки обязательно должна быть буква или сим вол подчеркивания. Строка 16 нашей программы содержит метку с именем main. Метка не обязательно должна стоять в строке с оператором. Допускается ставить метку в любой строке программы. Кроме команд и меток, программа содержит комментарии.
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==