Студопедия

КАТЕГОРИИ:


Архитектура-(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)

CONSTANT- Определить символьную константу




5.10.1 Синтаксис

constant <label>[=<expr>,...,<label>[=<expr>] ]

5. 10.2 Описание

Создает символьную константу для использования в выражениях MPASM. Существующая константа не может быть определена повторно, а выражения используемые при определении константы должны быть полностью разрешимы. Это основное отличие между константами определенными директивой CONSTANT и VARIABLE, SET. Иначе, константы и переменные могут поочередно использоваться в выражениях.

5.10.3 Пример

variable RecLength=64

constant BufLength=512

constant MaxMem=RecLength+BufLength

5.10.4 См. также VARIABLE, SET

5.11 DA- Сохранение строки в памяти программ

5.11.1 Синтаксис

[<label>] da <expr> [, <expr2>,..., <exprn>]

5.11.2 Описание

Упаковывает в 14-битный формат два 7-битных символа ASCII. Используется для сохранения символьной строки в FLASH памяти программ микроконтроллера.

5.11.3 Пример

da "abodef" В памяти программ - ЗОЕ2 31Е4 32Е6 3380

da "12345678",0 В памяти программ - 18В2 19В4 1АВб оооо

da OxFFFF В памяти программ - 0х3 fff


5.12 DATA - Сохранение значений или текста в памяти программ

5.12.1 Синтаксис

[<label>] data <ехрг>,[,<ехрг>,...,<ехрг>]

[<label>] data "<text_string>"[,"<text_Btring>",...]

5.12.2 Описание

Инициализирует одно или более слов памяти программ. Данные могут быть в виде констант, внутренних/внешних меток или их выражений. Данные также могут состоять из цепочки (одного) символов ASCII <text_string>. Один символ сохраняется в младшем байте памяти программ, в случае сохранения нескольких символов они упаковываются в слова по два знака. Если сохраняется нечетное число символов, то заключительный байт равен нулю. Во всех семействах микроконтроллеров, кроме Р1С18СХХХ, первый символ сохраняется в старшем байте слова. Для Р1С18СХХХ первый символ сохраняется в младшем байте слова.

Эта директива может использоваться при генерации объектного файла. Дополнительную информацию смотрите в описании директивы IDATA.

5.12.3 Пример

data reloc_label+10 data 1,2,ext_label data "testing 1,2,3" data 'N' data start_of_program

5.12.4 См. также

DB, DE, DT, DW, IDATA

5.13 DB - Побайтное сохранение данных в памяти программ

5.13.1 Синтаксис

[<label>] db <ехрг>[,<ехрг>,...,<ехрг>]

5.13.2 Описание

Резервирует слово в памяти программ с сохранением 8-битного значения. Многозначные выражения последовательно заполняют слова памяти программ. В случае нечетного числа значений последний байт будет равен нулю.

Эта директива может использоваться при генерации объектного файла. Дополнительную информацию смотрите в описании директивы IDATA.

5. 13.3 Пример

db 't', OxOf, 'e', OxOf, 's', OxOf, 't', '\n'

5.13.4 См. также

DATA, DE, DT, DW, IDATA

5.14 DE - Резервирует 8-разрядное значение в EEPROM памяти

5.14.1 Синтаксис

[<label>] de <expr>[,<expr>,...,<expr>]

5.14.2 Описание

Резервирует слово в EEPROM памяти для сохранения 8-битное значения <ехрг>. Старшие биты слова равны нулю. Каждое 8-разрядное значение сохраняется в отдельном слове.

Директива была разработана для PIC16F8X, но может быть использована и в других микроконтроллерах.

5.14.3 Пример

org H'2l00'; Инициализация EEPROM de "My Program, vl.O", 0

5. 14.4 См. также DATA, DB, DT, DW


5.15 #DEFINE - Определить замену текста

5.15.1 Синтаксис

ftdefine <name> [<string>] ftdefine <name> [<arg>,...,<arg>] <string>

5.^5.2 Описание

Данная директива определяет правила замены текста. В тексте программы строка <name> будет заменена последовательностью символов <string>. В случае использования директивы без указания параметра <string> последовательность <name> отмечается MPASM для последующей проверки IFDEF.

Эта директива подражает директиве #define стандарта ANSI 'С'. Символы, определенные данным методом не доступны для просмотра в среде MPLAB IDE.


length 20 control 0х19,7 position(X,Y,Z) (Y-(2 * Z +X))

 

5.15.3 Пример

ftdefine ftdefine ftdefine

teBt_label dw positiond, length, 512)

bsf control; установка бита 7 в регистре 0х19

5.15.4 См. также #UNDEFINE, IFDEF, IFNDEF

5.16 DT- Определяет таблицу данных

5.16.1 Синтаксис

[<label>] dt <expr>[,<expr>,...,<expr>] [<label>] dt "<text_string>"[,"<text_string>",...]

5.16.2 Описание

Генерирует серию команд RETLW для 8-разрядных значений <ехрг>. Каждое значение <ехрг> сохраняется в отдельной команде RETLW.

5.16.3 Пример

dt "A Message", О dt FirstValue, SecondValue, EndOfValues

5. 16.4 См. также DATA, DB, DE, DW




Поделиться с друзьями:


Дата добавления: 2014-11-29; Просмотров: 734; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.