Типичный вариант реализации микросхемы ППЗУ. Интегрированная среда MPLABIDE разработи программ для PIC-микроконтроллеров, страница 2

3) Рабочая область, в которой размещаются открытые окна с файлами, диалогами или другой информацией.

4) Линейка состояния, отображающая текущую настройку системы.

 


1

2

3

4

Рис.1.  Рабочий стол среды MPLAB IDE

Рис.1. Рабочий стол среды MPLAB IDE

Первое, что необходимо сделать для работы в MPLAB IDE, это выбрать тип микроконтроллера, который будет использоваться в проекте. С этой целью выберите пункт меню Configure>SelectDevice. В диалоговом окне ”Select Device” (см. рис. 2), выберитемикроконтроллер PIC16F84A из списка.

Цветные "индикаторы" указывают, какие компоненты MPLAB IDE поддерживают этот микропроцессор:

·  Зеленый индикатор указывает полную поддержку.

·  Желтый индикатор указывает на частичную поддержку и означает, что некоторые операции или функции, возможно, недоступны.

·  Красный индикатор указывает на отсутствие поддержки этому микроконтроллеру.

Щелкните по кнопке OK для подтверждения выбора и закрытия окна.

3.3. Проверка правильности размещения языковых средств

С помощью пункта меню Project > Set Language Tool Locations… откройте диалоговое окно Set Language Tool Locations. Выберите из списка пункт “Microchip MPASM  Toolsuite” и дважды щелкните левой кнопкой мыши. В раскрывшемся списке дважды щелкните по строке “Executables” – исполняемые файлы.

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

Рис. 2. Диалоговое окно выбора микроконтроллера

Для ассемблера MPASM Assembler проверьте, что путь к нему установлен  c:\Program Files\Microchip\MPASM Suite\MPASMWIN.exe.

Для библиотекаря MPLIB удостоверьтесь, что путь к нему установлен   c:\Program Files\Microchip\MPASM Suite\mplib.exe.

Для линкера MPLINK удостоверьтесь, что путь к нему установлен c:\Program Files\Microchip\MPASM Suite\mplink.exe.

В случае правильности размещения этих средств щелкните по кнопке OK для сохранения установок и закрытия окна. В случае несоответствия расположения файлов по указанным путям нужно щелкнуть по кнопке Browse… и открыть нужный файл по указанному пути.

3.4. Ввод исходного текста программы

Для ввода исходного кода программы выберите пункт меню File > New. Откроется окно редактора  MPLAB IDE.

Задание 1. Введите следующий текст программы с именем proba в точности, как написано ниже. Текст комментария для экономии времени можно не набирать.

При наборе текста программы необходимо придерживаться определенных правил. Все метки и символические имена (в данном примере Count, reset, start, loop) должны начинаться с начала строки (колонка номер 1). Мнемоники команд микропроцессора и директивы Ассемблера (в данном примере list, #include, org, end) должны размещаться со 2-й и далее колонок строки. В последней строке текста программы обязательно должна быть директива  end. Хотя в языке Ассемблера символы, написанные заглавными и строчными буквами, транслируются одинаковыми кодами, современный стиль программирования рекомендует мнемокоды команд, директивы и метки записывать строчными буквами, а имена регистров специальных функций микроконтроллера и их отдельных битов – заглавными буквами. Имена регистров пользователя (в данном примере Count) и имена констант будем записывать строчными буквами, причем первая буква имени обязательно заглавная.

Обратите внимание, что перед директивой  __CONFIG надо обязательно ввести два символа нижнего тире.

;******************************************************************

; proba – пробная программа для работы в среде MPLAB

;******************************************************************

list p=16f84a

#include<p16f84a.inc>

__CONFIG  _CP_OFF  &  _WDT_OFF  &  _PWRTE_ON  &  _HS_OSC

Count     equ       0x0C       ; переменная – счетчик циклов

org        0x000     ; установка начального адреса по сбросу МК

reset       goto     start          ; переход на начало программы

org       0x005      ; установка начального адреса размещения программы

start        movlw  0x09       ; загрузить в рабочий регистр W число 0x09

movwf  Count     ; переслать содержимое W в счетчик

loop

incfsz    Count,F   ; инкрементировать счетчик, пропустить