Что такое MPLAB

Арифметические операторы MPASM.

Оператор Описание Пример
$ Текущий счетчик программы goto $ + 3
( левая скобка 1 + ( d * 4 )
) правая скобка ( leght + 1 ) * 255
! операция "НЕ" (логическая инверсия) if ! ( a - b )
~ инверсия flags = ~ flags
- отрицательное число (вторая инверсия) - 1 * lenght
high выделить старший байт слова movlw high llasid
low выделить младший байт слова movlw low ( llasid + .2551 )
* умножение a = c * b
/ деление a = b / c
% модуль lenght = totall % 16
+ сложение tot_len = lenght * 8 + 1
- вычитание Entry_Son = ( Tot - 1 ) / 8
<< сдвиг влево val = flags << 1
>> сдвиг вправо val = flags >> 1
>= больше либо равно if ent >= num
> больше if ent > num
< меньше if ent < num
<= меньше либо равно if ent <= num
== равно if ent == num
!= не равно if ent != num
& поразрядное "И" flags = flags & err_bit
^ поразрядное "ИСКЛЮЧАЮЩЕЕ ИЛИ" flags = flags ^ err_bit
| поразрядное "ВКЛЮЧАЮЩЕЕ ИЛИ" flags = flags | err_bit
&& логическое "И" if ( len == 512) && ( b == c )
|| логическое "ИЛИ" if ( len == 512 ) || ( b == c )
= установить равному... entry_index = 0
+= сложить и установить равному... entry_index += 1
-= вычесть и установить равному... entry_index -= 1
*= умножить и установить равному... entry_index *= lenght
/= делить и установить равному... entry_index /= lenght
%= модуль и установить равному... entry_index %= 8
<<= сдвиг влево и установить равному... entry_index << 3
>>= сдвиг вправо и установить равному... entry_index >> 4
&= "И" и установить равному... entry_index %= err_flags
|= "ВКЛЮЧАЮЩЕЕ ИЛИ" и установить равному... entry_index |= err_flags
^= "ИСКЛЮЧАЮЩЕЕ ИЛИ" и установить равному... entry_index ^= err_flags
++ увеличить на 1 (инкремент) i ++
-- уменьшить на 1 (декремент) i --

Что такое MPLAB?

MPLAB - это интегрированная среда разработки (IDE) для семейства микроконтроллеров PICmicro фирмы Microchip Technology Incorporated. MPLAB позволяет писать, отлаживать и оптимизировать программы для Ваших разработок. MPLAB включает текстовый редактор, симулятор (виртуальный отладчик), менеджер проектов и поддерживает эмуляторы (внутрисхемные отладчики) MPLAB-ICE и PICMASTER , программаторы PICSTART Plus и PRO MATE II и другие средства и инструменты разработок фирмы Microchip и других фирм. Инструментальные средства MPLAB, организованные как ниспадающие меню и определяемые быстрые клавиши, позволяют:
- ассемблировать, компилировать исходный текст;
- отлаживать логику работы, наблюдая с помощью симулятора или, в реальном времени, с эмулятором MPLAB-ICE ;
- просматривать переменные в окнах просмотра;
- программировать кристаллы с помощью программаторов PICSTART Plus или PRO MATE II
- и многое другое.

MPLAB работает под Microsoft Windows 3.1x, Windows 95, 98, NT, 2000 (начиная с версии 5.00.00). Правда не все дополнительное оборудование, такое как внутрисхемные эмуляторы и программаторы будет функционировать под всеми операционными системами. Для более подробного описания обращайтесь к специализированной литературе и техническим описаниям фирмы Microchip.

Директивы языка MPASM

Директивы ассемблера располагаются в тексте исходного файла для расширения функций ассемблера, определения и управлением процессом. Общее правило - директивы не должны располагаться в первой позиции строки в тексте (иначе будут определены как метка). Директивы языка MPASM ЕЩЕ! можете скачать архив direct.zip, содержащий файлы в формате ворда, полностью и подробно описывающие на русском языке директивы ассемблера с примерами. Рекомендую!
ДИРЕКТИВА ОПИСАНИЕ ПРИМЕР
Директивы управления
CONSTANT Определение символьной константы constant cnt=255
#DEFINE Определение текстовой последовательности для замены #define snd portsnd, 1
END Конец блока программы end
EQU Определение константы temp equ 0xF0
ERROR Сообщение о ошибке error "error line"
ERROR LEVEL Установка типа сообщений об ошибках в файле листинга и файле ошибок errorlevel 1, -202
INCLUDE Вставить другой файл источника include
LIST Определение формата (тип микроконтроллера, количество символов в строке, табуляция и многое другое см. MPASM Help) или разрешает вывод, если было предварительно запрещено list p=17c42, f=INHX32, r=DEC
MESSG Создать пользовательское сообщение messg "see here!"
NOLIST Запретить вывод nolist
ORG Установить начальный адрес программы org 0x100
PAGE Вставить страницу в файл листинга page
PROCESSOR Установить тип микроконтроллера processor 16F84
RADIX Установить систему счисления по умолчанию для выражения данных radix dec
SET Определение константы. Аналогична EQU, но в последствии можно переопределить temp set b'00110011'
SPACE Вставить пустые строки в файл листинга space 3
SUBTITLE Вставить второй заголовок в файл листинга subtitle "Main Project"
TITLE Вставить заголовок в файл листинга title "Project Of PIC"
#UNDEFINE Удаление определенной текстовой последовательности #undefine snd
VARIABLE Определение символьной переменной variable temp=0xF0
Условия
ELSE Начало блока альтернативного условия (IF) else
ENDIF Завершение блока условия endif
ENDW Завершение цикла ПОКА endw
IF Начало блока условия if version == 100
IFDEF Выполнить, если определено ifdef testing
IFNDEF Выполнить, если не определено ifndef testing
WHILE Цикл ПОКА while i < count
Данные
CBLOCK Определение блока констант cblock 0x20
__CONFIG Описание бит конфигурации микроконтроллера __config H'FFFF'
DATA Создание числовых и текстовых данных txt data "please", 0x30
DB Определение байта данных temp db 0xFF
DE Определение данных в EEPROM temp de 0xF0, 0xF1
DT Определение таблицы temp dt "text", 0, 0x30
DW Определение слова (2 байта) данных temp dw 39, "text"
ENDC Окончание блока констант endc
FILL Заполнение области константой fill 0x1009, 5
__IDLOCS Определение ID __idlocs H'FFEE'
RES Резервирование памяти buffer res 64
Макросы
ENDM Окончание макроса endm
EXITM Выход из макроса exitm
EXPAND Полный текст макроса в файле листинга expand
LOCAL Определение локальной переменной в макросе local leng, tmp
MACRO Определение макроса out_sym macro temp
NOEXPAND Не разворачивать макрос noexpand

Формат представления чисел

В исходном тексте представлять числа можно по-разному и в разных системах счисления:
ФОРМАТ СИНТАКСИС ПРИМЕР
Десятичный D'число'
.число
D'100'
.100
Шестнадцатиричный H'число'
0xчисло
H'f9'
0xAF00
Восьмиричный O'число' O'777'
Двоичный B'число' B'11110000'
Символьный 'символ'
A'символ'
'C'
A'C'

Как создать новый проект.

Рассмотрим создание простого проекта, исходными файлами которого будут файл или файлы на ассемблере. При кажущийся сложности, все необходимые действия не отнимают и минуты. Для создания проекта выполните следующие шаги:
  • Выбор папки проекта. Создайте на диске папку для своего проекта. Важное примечание! MPLAB не поддерживает корректно длинные и русские имена папок, то есть имя должно состоять из латинских букв и не более 8. Тоже самое относится и к названию проекта и к именам исходных файлов. В противном случае MPLAB откажется файлы редактировать и будет жаловаться, что не может их открыть при ассемблировании.
  • Создание исходного файла для проекта. В папке \template\code где установлен MPLAB находятся файлы-заготовки для проектов на ассемблере. Можно, конечно, создать пустой файл с расширением .asm для проекта, но проще взять готовый. Если Вы уже выбрали тип микроконтроллера для своего проекта, то скопируйте соответствующий файл в папку своего проекта и переименуйте во что-то типа: prog.asm (.asm).
  • Выбор языка инструментальной среды. Выберите Project>Install Language Tool из меню. Выберите Language Suite: Microchip и Tool Name: MPASM. Если не указан путь к файлу ассемблера mpasmwin.exe, укажите. Затем установите опцию Windowed и нажмите OK.
  • Создание файла проекта. В MPLAB выберите Project>New Project, укажите путь к Вашей папке и введите имя файла проекта, желательно такое же, как и имя основного исходного файла файла. Возможно указание нескольких папок через точку с запятой, для примера, таким образом: c:\mplab\projects\mpproj\include;c:\include\h;..\sys. Нажмите OK.
  • Установка конфигурации. После перечисленных действий откроется окно редактирования проекта. Для простоты не будем добавлять дополнительные файлы, файлы библиотек и компоновки. Нажмите кнопку Change.. в пункте Development Mode. Откроется окно с вкладками для установки. В дальнейшем это окно можно будет вызвать, выбрав Options>Development Mode.
    Остановимся подробнее:
    - Tools. Выберите инструментальную среду. Скорее всего у Вас нет дополнительного оборудования, поэтому придется довольствоваться симулятором MPLAB-SIM (установите признак) и выберите тип микроконтроллера.
    - Clock. Выберите тип генератора тактовых импульсов (кварцевый резонатор, внутренний или внешний RC-генератор, внешняя частота и т. д.) и его частоту.
    - Configuration. Конфигурация сторожевого таймера и памяти программ. Если Вы разрешаете использование сторожевого таймера, то задайте и коэффициент деления предделителя. А для микроконтроллеров 17-й серии необходимо указать какая память программ будет использоваться: внутренняя (microcontroller), внешняя (microprocessor) или обе (extended microcontroller).
    - Pins. Разрешите или запретите использование вывода внешнего сброса (MCLR).
    - Break option. Конфигурация прерываний и стека при отладке (лучше пока оставить по умолчанию).
    Нажимаете OK.
  • Конфигурация выходного файла. Щелкните, чтобы подсветить на файле [.hex]. При этом станет доступно меню Node Properties. В ранних версиях MPLAB без вызова окна конфигурации выходного файла нельзя было добавить в проект свой исходный файл. Можно попробовать изменить конфигурацию, а можно оставить по умолчанию.
  • Добавление исходного файла. Чтобы добавить свой исходный файл на ассемблере, который Вы скопировали и переименовали в папке своего проекта нажмите на кнопке Add Node. В открывшемся окне выберите свой файл и нажмите OK. После этого нажмите OK в окне редактирования проекта. Если нажмете Cancel, то проект записан не будет! В дальнейшем это окно всегда можно будет вызвать через Project>Edit Project..
  • Открытие исходного файла. Теперь можете открыть свой исходный файл для редактирования: File>Open..
  • В проекте может быть несколько исходных файлов на ассемблере, но указывать необходимо при редактировании проекта один. Остальные включаются в основной исходный файл директивой ассемблера include.

    Компилирование

    Чтобы перекомпилировать только те файлы, в которые были внесены изменения, нажмите Project>Make Project. Чтобы перекомпилировать все файлы проекта выберите Project>Build. После завершения процесса будет вызвано окно с генерированной коммандной строкой, перечнем предупреждений или ошибок (если есть) и результатом компиляции: были ли ошибки (build failed) или нет (build successful ). Помощь при исправлении ошибок может оказать файл-листинг, вызвать который можно из меню таким образом: Window>Absolute Listing.

    Логические функции

    Таблица истинности для основных логических функций:
    X1
    Аргумент 1
    X2
    Аргумент 2
    AND
    "И"
    IOR
    "ИЛИ"
    XOR
    Искл. "ИЛИ"
    0 0 0 0 1
    0 1 0 1 0
    1 0 0 1 0
    1 1 1 1 1

    Меню Debug

    После компилирования проекта Вы, наверняка, захотите видеть как Ваш код выполняется. Обычно, разрабатываемое устройство не будет работать правильно, как Вы хотите. Поэтому придется код отлаживать. Вы можете использовать MPLAB-SIM для симулирования работы микроконтроллера или внутрисхемный эмулятор (что вряд ли в наших условиях, например PICMASTER стоит порядка $4000), такой, как MPLAB-ICE. PICMASTER и др. В любом случае придется останавливать работу и наблюдать состояние регистров микроконтроллера и выполнять в пошаговом режиме. Меню Debug содержит все опции, которые Вы будете использовать при отладке Вашего кода с симулятором или эмулятором:
  • Меню Run. Опции этого меню позволяют управлять выполнением Вашей программы.
    Run (F9) - запуск выполнения в непрерывном режиме (с использованием эмулятора в реальном времени, с использованием симулятора с максимально возможной скоростью).
    Reset (F6) - сброс.
    Halt (F5) - остановить выполнение программы.
    Halt Trace (Shift + F5) - остановить трассировку без остановки выполнения программы.
    Animate - запуск в непрерывном режиме, но с возможностью наблюдать изменение значений регистров и памяти в процессе. Аналогично постоянному нажатию на кнопку пошагового выполнения.
    Step (F7) - выполнить одну команду и остановиться.
    Step Over (F8) - тоже самое, но не опускаться в подпрограммы (выполняются в непрерывном режиме).
    Update All Registers - обновить все регистры для текущей команды
    Change Program Counter - изменить программный счетчик. Можно ввести числовой адрес, а можно ввести метку.
  • Меню Execute.
    Execute an Opcode - выполнить введенную Вами команду.
    Conditional Break - выполнять программу в непрерывном режиме пока не выполнится введенное Вами условие или не будет нажат Halt . При выборе этой опции откроется окно для конфигурирования.
  • Меню Simulator Stimuls. Позволяет имитировать внешние сигналы на входных выводах (портах) микроконтроллера. Подробнее можно прочитать в моем разделе "ЧАВО по ПИКам".
    MPLAB не позволяет изменять состояние портов как других регистров. С одной стороны это вызывает некоторые неудобства, но с другой имеются достаточно мощные средства моделирования входных сигналов:
    Asynchronous Stimulus Dialog - опция позволяет устанавливать постоянные логические уровни на входных выводах
    Pin Stimulus Files - подключение специального текстового файла (расширение .sti) описывающего изменение внешних сигналов на входных выводах микроконтроллера.
    Register Stimulus Files - подключение текстового файла (расширение .reg), описывающего изменение регистр (8 бит). Обычно используется при отладке аналого-цифрового преобразования.
    Clock Stimulus - опция позволяет имитировать периодические сигналы.
  • Меню Center Debug Location. Переместить указатель текущей выполняемой команды в центр окна. Работает с окнами исходных файлов, программной памяти и абсолютного листинга.
  • Меню Breakpoint Settings. Конфигурация точек останова (прерывания). Можно устанавливать до 16 точек. Можно установить при достижении адреса или области и других случаев. Если останов в выбранной точке не происходит, то проверьте установлен ли соответствующий флаг в окне конфигурации (Options>Development Mode). Еще точку останова можно установить щелкнув правой кнопки мыши на нужной строке исходного файла и выбрав Break Point(s), но эти установки сбрасываются при каждом перекомпилировании проекта.
  • Меню Trace Point Settings. Конфигурация трассировки, то есть записи в соответствующем окне последовательности выполняемых команд.
  • Меню Trigger In/Out Settings и Trigger Out Point Settings. Возможны при работе с внутрисхемным эмулятором и управляют конфигурацией прерывания по внешним сигналам и др.
  • Меню Clear All Points. Очистить все установленные точки останова и трассировки.
  • Меню Complex Trigger Settings и Enable Code Coverage. Для работы с эмулятором.
  • Меню Clear Program Memory (Ctrl+Shift+F2). Очистить память программ.
  • Меню System Reset (Ctrl+Shift+F3). Системный сброс.Пересбрасывается MPLAB, симулятор или подключенный эмулятор. Затем производится инициализация всего оборудования как при старте MPLAB.
  • Меню Power-On-Reset (Ctrl+Shift+F5). Сброс отлаживаемого устройства (симулятор или эмулятор), аналогичный состоянию при подачи напряжения питания.
  • Меню Edit

    Тоже стандартное меню для управления буфером обмена, а также для поиска, замены текста и другого.

    Меню File

    Это стандартное меню со стандартными пунктами для управления файлами проекта. Пункты Export и Import предназначены для обмена данными между компьютером и внешними устройствами (симулятор, эмулятор). В начало

    Меню Help

    Вызов помощи и справок. Полная оригинальная фирменная информация на английском языке. Если что-то не понятно, то всегда можно там найти. В начало

    Меню Option

    Меню для конфигурирования самого MPLABа. Включает в себя следующие опции:
  • Меню Development mode. Открывается окно для конфигурирования микроконтроллера в проекте. Информация из этого окна используется симулятором или эмулятором при отладке. Устанавливается тип отладчика, тип тактового генератора (осциллятора), частота, конфигурация внешнего сброса (MCLR), точек останова, сторожевого таймера и др.
  • Меню Window setup. Запись (save) и считывание (load) конфигурации MPLAB, а также установка по умолчанию (default).
  • Меню Current editor settings. Конфигурация встроенного редактора, вида вывода файла на принтер, типа файла.
  • Меню Reset editor modes. Сбросить установленную конфигурацию редактора и установить конфигурацию по умолчанию.
  • Меню Environment setup (Ctrl+F7). Открывается окно с несколькими вкладками для конфигурирования самого MPLABа. Краткое описание вкладок:
    General Options - установка системного шрифта, расположения панели инструментов, количества знаков для символьных переменных и меток и некоторых установок при загрузке MPLAB.
    Project Template Options - установка языка программирования и расположения файлов при создании нового проекта (как бы установки по умолчанию).
    Files - выбор папки, которая будет предлагаться по умолчанию при записи и загрузке. Можно установить как последнюю к которой было обращение (наиболее удобно) или как одну определенную заранее. И еще количество файлов, которые будут предлагаться открыть как наиболее часто употребляемые (для быстрого открытия).
    Default Editor Modes - установка конфигурации встроенного редактора для новых файлов.
    Key Mappings - конфигурирование "горячих" клавиш для быстрого вызова или каких-либо действий.
    Colors - установка цветовой гаммы для текста, выделенного текста, точек останова, трассировки и др.
  • Меню Programmer options. Выбор программатора, его конфигурация и выбор порта для подключения.
  • В начало

    Меню PICSTART Plus

    Меню конфигурации и управления фирменным программатором PICSTART Plus. При его отсутствии также не доступно. В начало

    Меню Project

    Пункты для управления проектом и конфигурацией. Изменение установок созданного проекта Edit Project. Make Project - компилировать все исходные файлы для создания одного hex файла, Build All - компилировать все файлы, Build Node - компилировать один выборочный файл. Меню Install Language Tool предназначено для выбора языка программирования и конфигурации. В начало

    Меню Tools

    Опции меню позволяют запустить файлы в ДОС строке и проверять возможность обмена информацией с внешними устройствами (программаторами и эмуляторами). В начало

    Меню Window

    MPLAB обеспечивает окна для обзора программной памяти, содержимого стека и содержимого регистров. Внимание: чтобы открыть системное меню для изменения отображаемых данных в открытом окне щелкните левой кнопки мыши в верхнем левом углу этого окна. Все опции меню Window доступны в режиме симулятора (виртуального отладчика) или внутрисхемного эмулятора. В режиме Editor Only доступны только: окно Абсолютного Листинга и окно списка символов (simbol list). Подробнее об возможных опциях:
  • Program Memory - окно памяти программы
    Trace Memory - окно результатов трассировки. Если счетчик программы (PC) попадает в область, отмеченную для трассировки, то в этом окне сохраняется порядок выполнения команд.
  • EEPROM Memory - окно просмотра содержимого EEPROM (Электрически программируемая область памяти, сохраняется при отключении питания. Присутствует в кристаллах, содержащих в обозначении букву F, например 16F84).
  • Calibration Data - окно просмотра калибровочных данных
  • Calibration Memory - окно просмотра калибровочной памяти для кристаллов, содержащих таковую (PIC14400, например)
  • Absolute Listing - окно просмотра абсолютного листинга - полного отчета о компилировании. Полезно просматривать при поиске ошибок.
  • Map File - окно просмотра схемы памяти. По умолчанию этот файл при компилировании не генерируется. Чтобы он был доступен при вызове, надо вызвать окно редактирования проекта Project>Edit Project, подсветите выходной HEX-файл и выберите его свойства Node Properties. В открывшемся окне поставьте галочку в графе ON для Cross Reference File и в графе DATA введите имя файла с именем Вашего проекта и расширением MAP, например myprog.map. После изменений перекомпилируйте проект.
  • Stack - просмотр стека, то есть точек входа в подпрограммы. Не стоит забывать, что у некоторых микроконтроллеров глубина стека всего 2 (например, PIC16C505). Это значит, что можно вызывать только одну подпрограмму из подпрограммы. При третьем вызове информация о возврате теряется и программа будет работать самым неожиданным образом!
  • File Registers - окно просмотра содержимого регистров общего назначения (RAM).
    Не забудьте, что вид просмотра можно выбрать из меню, щелкнув в левом верхнем углу окна.
  • Special Function Registers - окно просмотра регистров специального назначения (SFR).
  • Show Symbol List (Ctrl+F8) - окно списка символов. Все используемые переменные, регистры, метки, константы и др.
  • Stopwatch - окно просмотра временных параметров. Показывает тактовую частоту (выставляется в окне конфигурации микроконтроллера) и время прошедшее с начала выполнения программы или с момента обнуления в тактах и микросекундах. Очень удобно при отладке программы, когда используются счетчики, таймеры, прерывания и все, связанное со временем.
  • Project Window - окно файла проекта. Включает пути к файлам, подключенные файлы, даты и другая информация.
  • Watch Windows - меню управления окнами просмотра, которые можно определить самостоятельно. При создании и редактировании окна Вы определяете какие регистры и в каком виде показывать. Эти окна можно тоже сохранить в папке Вашего проекта для последующего использования. Удобно при отладке, когда необходимо держать перед глазами содержимое некоторых регистров. Примечание: при двойном щелчке на адресе регистра вызывается окно модификации для изменения содержимого. Надо отметить, что таким образом нельзя менять содержимое портов микроконтроллера. Как это сделать описано в рубрике ЧАВО по ПИКам.
  • Modify - окно модификации регистров. Можно ввести абсолютный адрес, можно имя переменной или регистра. Можно выбрать тип модифицируемой памяти и заполнить область.
  • Tile Horizontal, Tile Vertical, Cascade, Iconize All, Arrange Icons - опции управления открытыми окнами: упорядочить по горизонтали, по вертикали, уложить каскадом, свернуть все....
  • Open Windows - быстро открыть какое либо загруженное и свернутое окно. При большом количестве файлов проекта оказывается очень удобно.
  • В начало

    MPLAB для начинающих

    Описание приведено для MPLAB версии 5.00.00 и выше, который Вы можете скачать с сервера Microchip по адресу www.microchip.com Прошу учесть, что приведенное описание основано на моем личном опыте и поэтому может вызвать разногласия у других разработчиков. В защиту можно сказать то, что начав работу, можно добиться положительных результатов и приобрести собственный опыт. Технически полное описание содержит MPLAB Help. При переводе на русский язык многие термины теряют смысл, поэтому я буду стараться приводить англоязычный вариант при описании. И еще, в качестве примера будет рассмотрено создание проекта с использованием ассемблера. Для тех, кто программирует на С для PICmicro, я думаю, не составит труда разобраться в оригинальной англоязычной документации. MPLAB для начинающих Общая информация MPLAB для начинающих Создание проекта и работа с ним MPLAB для начинающих Меню MPLAB и описание функций MPLAB для начинающих Справочная информация и словарь Для удобного просмотра Вы можете скачать это описание в виде архива book.zip. Загрузите его себе, затем распакуйте в отдельной папке и откройте файл titul.htm. Еще можете скачать полное описание MPLAB на английском языке в формате PDF (Acrobat Reader), нажав на эту ссылку: mlpabhlp.zip (1,94 Mb) Если есть потребность описать какие либо пункты подробнее, то, пожалуйста, напишите мне и я обязательно это сделаю.... Заранее благодарю. All right reserved by Dmitry Salikov По возникшим вопросам и замечаниям прошу обращаться ко мне на e-mail: disall@mail.ru MPLAB для начинающих

    MPLAB - интегрированная среда разработки (IDE)

    MPLAB представляет собой законченную среду разработки, интегрируя несколько инструментальных средств:
  • MPLAB менеджер проектов (project Manager). Используется для создания проектов и работы со связанными файлами.
  • MPLAB редактор (Editor). Используется для создания и редактирования текстовых файлов, таких как исходные и файлы сценариев компоновки.
  • MPLAB-SIM симулятор (Simulator). Позволяет моделировать выполнение команд и входные/выходные сигналы микроконтроллеров.
  • MPLAB-ICE внутрисхемный эмулятор (Emulator). Позволяет, используя дополнительные аппаратные средства и компьютер, заменять микроконтроллер в разрабатываемом устройстве в реальном времени. MPLAB-ICE самый новый эмулятор от Microchip.
  • MPASM универсальный ассемблер.
  • MPLINK компоновщик (linker). создает законченное приложение, связывая перемещаемые модули MPASM, MPLAB-C17, и MPLAB-C18
  • MPLIB управляет пользовательскими библиотеками.
  • MPLAB-CXX компилятор C. Позволяет включать в проект исходные тексты написанные на языке высокого уровня С и на ассемблере.
  • PRO MATE II и PICSTART Plus программаторы.
  • PICMASTER и PICMASTER-CE внутрисхемные эмуляторы.
  • Инструментальные средства других производителей.


  • Общая информация

    Здесь представлена общая информация о среде программирования MPLAB, ее возможностях, функциях и составных частях. Общая информация

    Обзор проекта

    В общем, схему полного проекта в MPLAB можно представить так: Обзор проекта

    Панель инструментов (Toolbar)

    Панель инструментов представляет собой ряд кнопок для быстрого вызова тех или иных функций или выполнения каких-либо действий. Существует 4 набора кнопок для разных действий: для редактирования, отладки, управления проектом и для определения пользователем. Для конфигурирования панели инструментов выберите Option>Environment Setup и вкладку General. На ней можно выбрать месторасположение панели (вверху, слева, справа) или, нажав кнопку Layout, добавить или убрать кнопки. Если навести указатель мыши на какую-либо кнопку, то внизу окна MPLAB в строке состояния появится ее описание. Вот назначение кнопок панели инструментов:
    Панель инструментов (Toolbar) - сменить набор кнопок панели инструментов (Edit, Debug, Project, User Default). В начало
    кнопка панели Edit действие кнопка панели Debug действие
    Панель инструментов (Toolbar) создать новый файл Панель инструментов (Toolbar) запустить программу в непрерывном режиме
    Панель инструментов (Toolbar) открыть файл Панель инструментов (Toolbar) остановить выполнение программы
    Панель инструментов (Toolbar) сохранить файл Панель инструментов (Toolbar) выполнить очередную команду
    Панель инструментов (Toolbar) вырезать выделение в буфер Панель инструментов (Toolbar) выполнить команду, не опускаясь в подпрограммы
    Панель инструментов (Toolbar) копировать выделение в буфер Панель инструментов (Toolbar) сброс микроконтроллера
    Панель инструментов (Toolbar) вставить из буфера Панель инструментов (Toolbar) модифицировать счетчик программы (PC)
    Панель инструментов (Toolbar) печать Панель инструментов (Toolbar) выполнить введенную команду
    Панель инструментов (Toolbar) поиск текстовой последовательности Панель инструментов (Toolbar) создать новое окно просмотра
    Панель инструментов (Toolbar) повторить последний поиск Панель инструментов (Toolbar) модифицировать регистр, переменную
    Панель инструментов (Toolbar) поиск и замена текстовой последовательности Панель инструментов (Toolbar) установить точку останова
    Панель инструментов (Toolbar) повторить поиск и замену текстовой последовательности Панель инструментов (Toolbar) установить точки трассировки
    Панель инструментов (Toolbar) вернуться на одно действие назад Панель инструментов (Toolbar) установить защелки
    Панель инструментов (Toolbar) сдвинуть строку вправо на расстояние табуляции Панель инструментов (Toolbar) очистить все точки останова, трассировки, защелки
    Панель инструментов (Toolbar) сдвинуть строку влево не расстояние табуляции Панель инструментов (Toolbar) условная точка останова
    Панель инструментов (Toolbar) переместиться на строку с номером... Панель инструментов (Toolbar) остановить трассировку
    Панель инструментов (Toolbar) включить нумерацию строк в файлах Панель инструментов (Toolbar) системный сброс
    Панель инструментов (Toolbar) вызвать справку MPLAB Панель инструментов (Toolbar) вызвать описание версии MPLAB
    кнопка панели Project действие кнопка панели User действие
    Панель инструментов (Toolbar) создать проект Панель инструментов (Toolbar) открыть проект
    Панель инструментов (Toolbar) открыть проект Панель инструментов (Toolbar) сохранить проект
    Панель инструментов (Toolbar) закрыть проект Панель инструментов (Toolbar) поиск текстовой последовательности
    Панель инструментов (Toolbar) сохранить проект Панель инструментов (Toolbar) вырезать выделение в буфер
    Панель инструментов (Toolbar) редактировать проект Панель инструментов (Toolbar) копировать выделение в буфер
    Панель инструментов (Toolbar) компилировать проект Панель инструментов (Toolbar) вставить из буфера
    Панель инструментов (Toolbar) компилировать все исходные файлы Панель инструментов (Toolbar) сохранить файл
    Панель инструментов (Toolbar) компилировать один исходный файл Панель инструментов (Toolbar) запустить программу в непрерывном режиме
    Панель инструментов (Toolbar) установить язык проекта Панель инструментов (Toolbar) остановить выполнение программы
    Панель инструментов (Toolbar) вызвать помощь по ассемблеру MPASM Панель инструментов (Toolbar) выполнить очередную команду
    Панель инструментов (Toolbar) выполнить команду, не опускаясь в подпрограммы
    Панель инструментов (Toolbar) сброс микроконтроллера
    Панель инструментов (Toolbar) окно просмотра регистров общего назначения
    Панель инструментов (Toolbar) окно просмотра памяти программы
    Панель инструментов (Toolbar) окно просмотра регистров специального назначения
    Панель инструментов (Toolbar) создать новое окно просмотра
    Панель инструментов (Toolbar) компилировать проект
    В начало
    Панель инструментов (Toolbar)

    Панель инструментов (Toolbar)


    Создание проекта и работа с ним

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

    Стандартные расширения для файлов MPLAB

    РАСШИРЕНИЕ НАЗНАЧЕНИЕ ФАЙЛА
    *.ASM исходный файл на ассемблере
    *.C исходный файл на С
    *.CFG файл конфигурации
    *.COD содержит символьную информацию и объектный код
    *.CSV файл с записью трассировки (только для MPLAB-ICE 2000)
    *.DAT файл данных симулятора
    *.ERR файл обнаруженных ошибок, генерируется ассемблером или С при компиляции
    *.H добавленный файл на С
    *.HEX файл с машинными кодами в HEX формате для PIC микроконтроллеров
    *.HLP файл помощи
    *.INC добавленный файл на ассемблере
    *.INI конфигурация MPLAB и установленного языка программирования
    *.KEY файл схемы кнопок MPLAB
    *.LKR файл сценария компоновки MPLINK
    *.LST абсолютный листинг, генерируется ассемблером или С при компиляции
    *.MTC файл конфигурации языка программирования
    *.PJT файл содержит главную информацию о проекте
    *.REG файл, описывающий модификацию регистров при отладке
    *.STI файл, описывающий входные сигналы на входах микроконтроллера
    *.TB файл трассировки точек останова
    *.TBR файл панели инструментов
    *.TPL временный файл
    *.TRC файл записи трассировки
    *.TXT файл записи трассировки (только MPLAB-ICE 2000)
    *.WAT файл окна просмотра
    В начало

    Запуск и отладка проекта

    Для инициализации системы выберите Debug>Run>Reset. При этом программный счетчик (PC)будет сброшен на нулевой адрес 0x00. В файле источника указатель (темная панель - dark bar) установится на команду, соответствующую нулевой ячейки памяти. Сброс происходит автоматически и после перекомпилирования проекта.
    MPLAB-SIM можно использовать для отладки программы при отсутствии внутрисхемного эмулятора. Это накладывает некоторые ограничения:
    - невозможность отладки программы с реальными входными сигналами на выводах микроконтроллера.
    - невозможность запускать выполнение программы в реальном времени. Скорость выполнения зависит от многих факторов: количества открытых окон и запущенных приложений, скорости самого компьютера и других. Замечу, что для ускорения прохода при отладке подпрограмм различных задержек, можно воспользоваться директивой IFDEF.
    Зато к положительным сторонам можно отнести практически никакую стоимость данного инструмента в отличии от нескольких тысяч долларов за эмулятор.
    Чтобы запустить отлаживаемую программу в пошаговом режиме (одна команда за одно нажатие) можете выбрать в меню Debug>Run>Step или нажать или кнопку Запуск и отладка проекта на панели инструментов. При этом текущая команда будет выполнена, программный счетчик увеличится и указатель установится на следующую инструкцию (если, конечно, не было команд ветвления, перехода или модификации PC). Кнопка Запуск и отладка проекта тоже выполняет программу в пошаговом режиме, только подпрограммы будут выполняться за одно нажатие (в непрерывном режиме).
    Для запуска программы в непрерывном режиме выберите Debug>Run>Run или нажмите или кнопку Запуск и отладка проекта на панели инструментов. Программа будет выполняться до тех пор, пока Вы не прервете работу, выбрав в меню Debug>Run>Halt или нажав или кнопку Запуск и отладка проекта или произойдет останов в заранее установленной точке прерывания (breakpoint).
    В начало Запуск и отладка проекта

    Запуск и отладка проекта


    

        Бизнес: Предпринимательство - Малый бизнес - Управление