Что такое 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
|
|
Директивы ассемблера располагаются в тексте исходного файла для расширения функций ассемблера, определения и управлением процессом. Общее правило - директивы не должны располагаться в первой позиции строки в тексте (иначе будут определены как метка).
ЕЩЕ! можете скачать архив 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 и описание функций |
|
Справочная информация и словарь |
|
Для удобного просмотра Вы можете скачать это описание в виде архива 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 - интегрированная среда разработки (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 в строке состояния появится ее описание. Вот назначение кнопок панели инструментов:
- сменить набор кнопок панели инструментов (Edit, Debug, Project, User Default).
В начало
|
|
кнопка панели Edit |
действие |
кнопка панели Debug |
действие |
|
 |
создать новый файл
|
 |
запустить программу в непрерывном режиме
|
|
 |
открыть файл
|
 |
остановить выполнение программы
|
|
 |
сохранить файл
|
 |
выполнить очередную команду
|
|
 |
вырезать выделение в буфер
|
 |
выполнить команду, не опускаясь в подпрограммы
|
|
 |
копировать выделение в буфер
|
 |
сброс микроконтроллера
|
|
 |
вставить из буфера
|
 |
модифицировать счетчик программы (PC)
|
|
 |
печать
|
 |
выполнить введенную команду
|
|
 |
поиск текстовой последовательности
|
 |
создать новое окно просмотра
|
|
 |
повторить последний поиск
|
 |
модифицировать регистр, переменную
|
|
 |
поиск и замена текстовой последовательности
|
 |
установить точку останова
|
|
 |
повторить поиск и замену текстовой последовательности
|
 |
установить точки трассировки
|
|
|
|
вернуться на одно действие назад
|
|
установить защелки
|
|
|
|
сдвинуть строку вправо на расстояние табуляции
|
|
очистить все точки останова, трассировки, защелки
|
|
|
|
сдвинуть строку влево не расстояние табуляции
|
|
условная точка останова
|
|
|
|
переместиться на строку с номером...
|
|
остановить трассировку
|
|
|
|
включить нумерацию строк в файлах
|
|
системный сброс
|
|
|
|
вызвать справку MPLAB
|
|
вызвать описание версии MPLAB
|
|
|
|
|
|
|
|
кнопка панели Project |
действие |
кнопка панели User |
действие |
|
|
|
создать проект
|
|
открыть проект
|
|
|
|
открыть проект
|
|
сохранить проект
|
|
|
|
закрыть проект
|
|
поиск текстовой последовательности
|
|
|
|
сохранить проект
|
|
вырезать выделение в буфер
|
|
|
|
редактировать проект
|
|
копировать выделение в буфер
|
|
|
|
компилировать проект
|
|
вставить из буфера
|
|
|
|
компилировать все исходные файлы
|
|
сохранить файл
|
|
|
|
компилировать один исходный файл
|
 |
запустить программу в непрерывном режиме
|
|
|
|
установить язык проекта
|
 |
остановить выполнение программы
|
|
|
|
вызвать помощь по ассемблеру MPASM
|
 |
выполнить очередную команду
|
|
|
|
|
 |
выполнить команду, не опускаясь в подпрограммы
|
|
|
|
|
 |
сброс микроконтроллера
|
|
|
|
|
|
окно просмотра регистров общего назначения
|
|
|
|
|
|
окно просмотра памяти программы
|
|
|
|
|
|
окно просмотра регистров специального назначения
|
|
|
|
|
|
создать новое окно просмотра
|
|
|
|
|
|
компилировать проект
|
|
В начало |

Создание проекта и работа с ним
|
В этом разделе представлена структура проекта, описание создания нового проекта, изменение различных установок, компилирование, запуск и отладка в пошаговом режиме. Подробнее о работе с проектом можно прочитать в разделе Меню 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).
В начало |

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