Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программируемые контроллеры для систем управления ч2. Г.И.Загарий, В.С. Коновалов В.С., Н.О. Ковзель, В.И. Поддубняк, А.И. / Программируемые контроллеры для систем управления ч2. Г.И.Загарий, В.С. Коновалов В.С., Н.О. Ковзель, В.И. Поддубняк, А.И. .doc
Скачиваний:
317
Добавлен:
08.08.2013
Размер:
15.9 Mб
Скачать

7.3Технология разработки и отладки рабочих программ для омк рiс16/17

Технология разработки и отладки рабочих программ для ОМК РIС отличается от традиционной только набором инструментальных средств. Написание исходного текста программы возможно на одном из следующих языков: Ассемблере, Макроассемблере и СИ. На этом этапе могут использоваться любые текстовые редакторы. Для компиляции программ может быть использован соответствующий компилятор с языка СИ или Ассемблер MPASM. Отладка программ может быть осуществлена с использованием программных симуляторов MPSIMили внутрисхемных эмуляторов реального времениPICMASTERили (СЕPIC. Запись отлаженной программы в ПЗУ ОМК осуществляется с помощью специальных программаторов, например, типаPICSTART, КОМPIC,PICLAB-16 и т.п.

Для этих же целей можно воспользоваться интегрированными средами PICDesignerилиMPLAB, которые представляют собой мощные пакеты инструментальных средств, аналогичные указанным выше.

Рассмотрим более подробно эти вопросы для случая написания рабочих программ на Ассемблере.

7.3.1 Правила записи программ на языке Ассемблера

Исходный текст программы на языке Ассемблера имеет определенный формат. Каждая команда (и псевдокоманда) представляет собой строку, состоящую из четырех полей:

<МЕТКА> <ОПЕРАЦИЯ> <ОПЕРАНД(Ы)> <КОММЕНТАРИЙ>

Поля могут отделяться друг от друга произвольным числом пробелов (не менее одного) или кодами табуляции. Порядок и позиция полей важны. Так, метки должны начинаться в первом столбце. Операция (мнемоника команды) может начинаться во втором столбце или вне его.

Операнды следуют за мнемоникой команды. Комментарии могут следовать за операндами, мнемоникой или метками (могут начинаться в любом столбце). Максимальная ширина строки – 255 символов. Один (или большее количество пробелов) должен отделить метку и мнемонику команды, мнемонику и операнд(ы). Операнды должны разделяться запятой.

Например:

Пример фрагмента исходной программы "Инициализация МК"

BEGIN:

MOVLWINIТА ;Загрузка в рабочий регистрWзначения, ;присвоенного имениINITA(значение должно ;быть присвоено ранее!)

MOVWFTRISA;Загрузка значения из рабочего регистра W в ;регистр управления конфигурацией порта А

MOVLWINITB;Загрузка в рабочий регистр W значения, ;присвоенного имени INITB

MOVWFTRISB;Загрузка значения из рабочего W в регистр ;управления конфигурацией порта В

Метка

В поле метки размещается символическое имя ячейки памяти, в которой хранится отмеченная команда или операнд. Метка представляет собой буквенно-цифровую комбинацию, начинающуюся с буквы или символа подчеркивания ( _ ). Используются только буквы латинского алфавита. Ассемблер допускает использование в метках символа подчеркивания ( _ ). Длина метки может быть до 32 (например для MPASM) символов. Метки могут сопровождаться двоеточием ( : ), пробелом, табуляцией или концом строки.

В качестве символических имен и меток не могут быть использованы зарезервированные слова такие, как мнемокоды команд, псевдокоманд и операторов Ассемблера, а также мнемонические обозначения регистров и других внутренних блоков МК.

Операция

В поле операции записывается мнемоническое обозначение команды МК или псевдокоманды Ассемблера, которое является сокращением (аббревиатурой) полного английского наименования выполняемого действия. Если имеется метка на той же самой строке, то мнемоника команды Ассемблера, директивы Ассемблера и макрообращения должны отделяться от этой метки двоеточием или одним или большим количеством пробелов или меток табуляции.