КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Директивы транслятора ассемблера
Транслятор ассемблера поддерживает достаточно много директив. Директивы не транслируются в программу для микроконтроллера. Они используются для указания транслятору ассемблера данных о расположении программы в памяти микроконтроллера, определения макросов и т.д. Ниже приведен перечень директив транслятора ассемблера: .BYTE – резервирует место (или несколько мест) размером 1 байт для переменной. Синтаксис: Метка:.BYTE числовое выражение Пример: .DSEG;Сегмент данных (см. ниже) var1:.BYTE 1;Резервируем 1 байт для переменной var1 table:.BYTE tab_size;Резервируем tab_size байт
.CSEG;сегмент кода (см. ниже) ldi r30, low(var1);Загружаем младший байт Z-регистра ldi r31, high(var1);Загружаем старший байт Z-регистра ld r1,Z;Загрузить содержимое переменной var1 в r1
.CSEG – сегмент кода. Синтаксис: .CSEG Пример: .DSEG;Начало сегмента данных vartab:.BYTE 4;Резервируем 4 байта в SRAM .CSEG;Начало сегмента кода const:.DW 2;Запишем число 0x00002 в память программ mov r1,r0 .DB – определить байты-константы в памяти программ или EEPROM. Синтаксис: Метка:.DB список выражений Пример: .CSEG const:.DB 0, 255, 0b01001101, -128, 0xD5 .ESEG eeconst:.DB 0x45 .DEF – назначить регистру символьное имя. Синтаксис: .DEF символьное имя = регистр Пример: .DEF temp=r16 .DEF iro=r0
.DEVICE – определяет тип целевого микроконтроллера. Синтаксис: .DEVICE AT90S1200
.DSEG – сегмент данных. Синтаксис: .DSEG Пример: .DSEG;Начало сегмента данных var1:.BYTE 1;Резервируем 1 байт для переменной var1 table:.BYTE tab_size;Резервируем tab_size байт
.DW – определение слов-констант в памяти программ или EEPROM. Синтаксис: Метка:.DW список выражений Пример: .CSEG varlist:.DW 0, 56255, 0b0101100110, -12128, 0xaaff .ESEG eevar:.DW 0xff17
.ENDMACRO – конец описания макрокоманды. Синтаксис: .ENDMACRO
Пример: .MACRO SUBI 16;Начало определения макрокоманды subi r16,low(@0);Вычитаем младший байт sbci r17,high(@0);Вычитаем старший байт .ENDMACRO;Конец определения макрокоманды
.EQU – присвоить символьному обозначению выражение. Синтаксис: .EQU <символьное обозначение> = <выражение> Пример: .EQU io_offset = 0x23 .EQU porta = io_offset + 2 .ESEG – EEPROM сегмент. Синтаксис: .ESEG Пример: .ESEG eevar:.DW 0xff67;Инициализируем одно слово в EEPROM .EXIT – конец текста программы. Синтаксис: .EXIT
.INCLUDE – вставить файл. Синтаксис: .INCLUDE ”имя файла”
.LIST – включить генерацию листинга. Синтаксис: .LIST
.NOLIST – выключение генерации листинга. Синтаксис: .NOLIST
.ORG – установка значения счетчика расположения. Синтаксис: .ORG выражение 2.5. Средства разработки программ AVR – MK
Для разработки прикладных программ целесообразно использовать комплекс, состоящий из программного обеспечения, программатора и двух макетных плат. В качестве программного обеспечения для разработки прикладных программ был использован ассемблер-симулятор «AVR Studio» (рис. 2.1), который является улучшенной версией «wavrsim». Он может показывать содержимое регистров ввода-вывода, что является большим преимуществом при отладке программ.
Рис. 2.1 Вид экрана AVR Studio фирмы Atmel
Выводы: · Рассмотрены особенности системы команд АVR- MK · Проведен анализ средств разработки программ для АVR- MK, на основании которого делается вывод о целесообразности применения ассемблера- симулятора «АVR Studio».
Дата добавления: 2014-01-04; Просмотров: 645; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |