рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

IF - Початок блоку умови

IF - Початок блоку умови - раздел Образование, Руководство пользователя 5.34.1 Синтаксис If <expr> 5.34.2 Опис Почат...

5.34.1 Синтаксис

if <expr>

5.34.2 Опис

Початок виконання умовного блоку. Якщо вираження <ехрг> оцінюється істинним, то виконується код програми після директиви IF. Інакше подальший текст програми ігнорується, поки не зустрінеться директива ELSE або ENDIF.

Вираження, яке має значення нуль, розглядається як логічна БРЕХНЯ. Вираження, що має будь-яке інше значення, розглядається як логічна ІСТИНА. Директиви IF і WHILE працюють з логічним значенням вираження. Логічна ІСТИНА гарантує не нульовий результат вираження, а логічна БРЕХНЯ нульовий результат.

5.34.3 Приклад

if version == 100

movlw OxOa

movwf io_l else

movlw 0х0 la

movwf io_2 endif

5.34.4 Див. також ELSE, ENDIF

 

5.35 IFDEF- Виконання, якщо визначена символьна мітка

5.35.1 Синтаксис

ifdef <label>

5.35.2 Опис

Якщо <label> була заздалегідь визначена (#DEFINE), то виконується текст програми що йде безпосередньо за директивою IFDEF. У іншому випадку подальший текст програми пропускається поки не зустрінеться директива ELSE або ENDIF.

5.35.3 Приклад

ftdefine testing 1; встановити "testing on"

ifdef testing

<execute test code>; КОД, що виконується endif

5.35.4 Див. також

#DEFINE, ELSE, ENDIF, IFNDEF, #UNDEFINE

5.36 IFNDEF - Виконання, якщо символьна мітка не визначена

5.36.1 Синтаксис

ifndef <label>

5.36.2 Опис

Якщо <label> не була заздалегідь визначена або визначення мітки було відмінено #UNDEFINE, то виконується текст програми що йде безпосередньо за директивою IFNDEF. У іншому випадку подальший текст програми пропускається поки не зустрінеться директива ELSE або ENDIF.

5.36.3 Приклад

ftdefine testing!; встановити "testing on"

ftundefine testingi; встановити "testing off ifndef testing: ; код, що виконується

endif end; кінець умови

5.36.4 Див. також

#DEFINE, ELSE, ENDIF, IFDEF, #UNDEFINE

5.37 INCLUDE - Підключення додаткового початкового файла

5.37.1 Синтаксис

include «include_file» include "<inelude_file>"

5.37.2 Опис

Вказаний файл читається як початковий текст програми. Ефект аналогічний копіювання повного тексту програми вказаного файла в місце розташування директиви. Після закінчення компіляції підключеного модуля, компіляція продовжується в початковій програмі. Допускається до шести рівнів вкладення файлів.

<include_file> може бути вказаний в лапки або кутових дужках. Якщо вказаний повний шлях до файла, то пошук файла буде відбуватися тільки у вказаній директорії. Якщо шлях до файла, що підключається не вказаний, то пошук файла буде виконуватися в поточній робочій директорії, директорії початкового файла і директорії MPASM, що виконується.

5.37.3 Приклад

include "з:syssysdefs.inc"; системні параметри include <regs.h>; список регістрів

 

5.38 LIST - Список параметрів

5.38.1 Синтаксис

list [<list_option>,...,<list_option>]

5.38.2 Опис

Директива LIST повинна бути розміщена на окремому рядку. Вона змінює параметри компіляції початкового файла і генерації файла лістинг. Один або декілька наступних параметрів може бути вказаний в директиві LIST:

Параметр   Значення за умовчанням   Опис  
b=nnn     Число пропусків при табуляції  
з=nnn     Число символів в рядку  
f=<format>   INHX8M   Формат вихідного HEX файла <format>: INHX32, INHX8M, INHX8S  
free   FIXED   Використання вільного формату друку  
fixed   FIXED   Використання фіксованого формату друку  
mm={ON¦OFF}   On   Включати карту пам'яті в файл лістинг програми  
n=nnn     Число рядків на однієї сторінки  
р=<type>   НЕМАЄ   Тип мікроконтроллера. Наприклад, Р1С16С54  
r=<radix>   hex   Система числення за умовчанням: hex, dec, oct  
st={ON¦OFF}   On   Включати таблицю символів в файл лістинг програми  
t={ON¦OFF}   Off   Усікання довгих рядків  
w={0¦1¦2}     Установка рівня повідомлень. ДИВ. ERRORLEVEL  
х={ON¦OFF}   On   Включати повний текст макроса  

 

5.38.3 Приклад

list р=17c42, f=INHX32, r=DEC

5.38.4 Див. також

ERRORLEVEL, EXPAND, NOEXPAND, NOLIST, PROCESSOR, RADIX

5.39 LOCAL - Оголосити локальну змінну макроса

5.39.1 Синтаксис

local <label> [,<label>]

5.39.2 Опис

Оголошує, що вказані елементи даних повинні розглядатися тільки всередині макроса. <label> може мати ім'я ідентичне іншої мітки оголошеної в основній програмі, при цьому помилки не виникне.

Якщо макрокоманда викликається рекурсивно, то при кожному звертанні буде создаватся власна локальна копія.

5.39.3 Приклад

<основна програма>

len equ 10; глобальна версія size equ 20; створення і зміна локальних змінних

; на них не впливає test macro size;

local len, label; локальні len і label len set size label res len len set len-20 endm; кінець макроса

5.39.4 Див. також ENDM, MACRO

 

5.40 MACRO - Визначити макрос

5.40.1 Синтаксис

<label> macro [<arg>,...,<агд>]

5.40.2 Опис

Макрос - послідовність інструкцій, які можуть бути вставлені в код програми, використовуючи єдиний макро запит. Перед початком використання макроса його необхідно визначити вище по тексту програми.

У тілі макроса можна викликати інший макрос або цей же макрос рекурсивно.

Додаткову інформацію дивитеся в розділі 7.

5.40.3 Приклад

Read macro device, buffer, count movlw device movwf ram_2 0 movlw buffer movwf ram_21 movlw count call sys_21 endm

5.40.4 Див. також

ELSE, ENDIF, ENDM, EXITM, IF, LOCAL

5.41 _ _MAXRAIVI - Визначає максимальний об'єм ОЗУ

5.41.1 Синтаксис _ _maxram <expr>

5.4^.2 Опис

Директиви _ _MAXRAM і _ J3ADRAM визначають адреси нереалізованих регістрів ОЗУ. _ _MAXRAM визначає абсолютну максимальну адресу в ОЗУ і ініціалізувати карту доступного ОЗУ з адресами менше <ехрг>. Значення <ехрг> повинне бути більшим або дорівнювати максимальній адресі банку 0 ОЗУ і менше 1000П. Дана директива призначена для використання спільно з директивою _ J3ADRAM. Після директиви _ _MAXRAM, в тексті програми, точна карта нереалізованого ОЗУ створюється директивами __BADRAM.

_ _MAXRAM може використовуватися більше за один раз в тексті програми, при цьому повторно переглядається максимальний об'єм ОЗУ і скидається карта нереалізованих регістрів.

5.41.3 Приклад

list р=16c622 _ _maxram H'OBF'

_ _badram H'07'-H'09', H'OD'-H'IE' _ _badram H'87'-H'89', H'8D', H'8F'-H'9E' movwf H'07'; Звернення до неіснуючого осередку ОЗУ movwf н'87'; Звернення до неіснуючого осередку ОЗУ; спричинить повідомлення про помилку

5.4^.4 Див. також __BADRAM

5.42 MESSG - Сформувати повідомлення

5.42.1 Синтаксис

messg "<message_text>"

5.42.2 Опис

Включає інформаційне повідомлення (не більше за 80 символів) в файл лістинг програми. Директива не формує коди помилок.

5.42.3 Приклад

mssg_macro macro

"messg mssg_macro-001 invoked without argument" endm

5.42.4 Див. також ERROR

 

– Конец работы –

Эта тема принадлежит разделу:

Руководство пользователя

Руководство пользователя... Перевод основывается на технической документации DS G компании Microchip... quot Микро Чип quot Москва...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: IF - Початок блоку умови

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Що таке MPASM
MPASM - безкоштовна, універсальна програма компіляції початкового тексту програми на мові асемблер для мікроконтроллерів PICmicro компанії Microchip Technology Incorporated. Асемблер MPASM

CONSTANT- Визначити символьну константу
5.10.1 Синтаксис constant <label>[=<expr>,...,<label>[=<expr>] ] 5.10.2 Опис Створює символьну константу для використання у виразах MPASM. Існуюча

Приклад
speed macro rate if rate < 50 dw slow else dw fast endif endm 5.18.4 Див. також ENDIF, IF 5.19 END - Закінчення програми 5.19.1 Синт

JDLOCS - Установка значення ID
5.33.1 Синтаксис _ _idlocs <expr> 5.33.2 Опис Для мікроконтроллеров Р1С12СХХХ, Р1С14000 і Р1С16ХХХ вказується 4 шістнадцатиразрядних півбайта ID. Для мікроконтролле

ORG - Встановити адресу програми
5.45.1 Синтаксис <label> огд <ехрг> 5.45.2 Опис Встановити <ехрг> адресу програми. Якщо вказана мітка <label> то вона буде мати адресу <ехрг>

WHILE - Цикл While
5.61.1 Синтаксис while <expr> endw 5.61.2 Опис Виконується програма між директивами WHILE і ENDW, поки значення <ехрг> істинне. Значенн

А.З Intel HEX формат INHX8M (.HEX)
У цьому форматі зберігаються 8-розрядні байти молодші байти, з підтримкою старшого байта. Так як за кожною адресою міститься тільки 8-розрядні байти, об'єм адрес збільшений вдвічі. Даний формат вик

А.5 Intel HEX формат INHX32 (.HEX)
Розширений 32-розрядний шістнадцатеричный формат є подібністю шістнадцатеричному 8-розрядному HEX формату, описаному вище. За винятком того, що розширений лінійний відлік адреси в пам'яті (вказівка

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги