Ознакомление с программным комплексом MPLAB для проектирования и отладки программ на микроконтроллеры семейства PIC16CХХ: Методические указания к лабораторной работе № 1, страница 2

Tекст программы:

;--Register Definitions-W       EQU     0x00

F       EQU     0x01

RTCC       EQU  01h

OPTION_R   EQU  81h

PCL        EQU  02h

STATUS     EQU  03h

FSR        EQU  04h

PORTA      EQU  05h

PORTB      EQU  06h

EEDATA     EQU  08h

EEADR      EQU  09h

EECON1     EQU  08h

EECON2     EQU  09h

TRISA      EQU  05h

TRISB      EQU  06h

PCLATH     EQU  0Ah

INTCON     EQU  0Bh

;-----------------------------------------;Переменные

TEMP1           EQU  12h

TEMP2           EQU  13h

;Биты регистров

;STATUS

IRP     EQU     7

RP1     EQU     6

RP0     EQU     5

TO      EQU     4

PD      EQU     3

Z       EQU     2

DC      EQU     1

C       EQU     0

;--------------------------------------------------------;EECON1

EEIF    EQU     4

WRERR   EQU     3

WREN    EQU     2

WR      EQU     1

RD      EQU     0

;--------------------------------------------------------;INTCON

GIE     EQU     7

EEIE    EQU     6

RTIE    EQU     5

INTE    EQU     4

RBIE    EQU     3

RTIF    EQU     2

INTF    EQU     1

RBIF    EQU     0

;-------------------------------------------;OPTION

RBPU    EQU     7

INTEDG  EQU     6

RTS     EQU     5

RTE     EQU     4

PSA     EQU     3

PS2     EQU     2

PS1     EQU     1

PSO     EQU     0

;--Register Files-INDF            EQU     0x00

TMR0            EQU     0x01

;--STATUS bits-NOT_PD          EQU     0x03

NOT_TO          EQU     0x04

;--INTCON bits-T0IF            EQU     0x02

T0IE            EQU     0x05

;       Eeprom memory dump

;*** Programm dump ***

org     0x0000          ;Start address

goto    START

;Обработчик прерывания

addlw   0xFF

addlw   0xFF

addlw   0xFF

bcf     INTCON,RBIF

bcf     INTCON,INTF

bcf     INTCON,T0IF

retfie

;вывод на светодиоды

UpdateInd

movf    TEMP2

andlw   0x0F

movwf   PORTA

bsf     STATUS,RP0

movlw   0x10

movwf   TRISA

bcf     STATUS,RP0

return

START

;устанавливаем страницу памяти 1

bsf     STATUS,RP0

;устанавливаем прерывание по положительному фронту на ножке int

;и подключаем делитель к WDT

movlw   0x48

option

;устанавливаем пятый бит порта А на ввод

movlw   0x10

movwf   TRISA

;устанавливаем страницу памяти 0

bcf     STATUS,RP0

;разрешаем прерывания

movlw   0xB8

movwf   INTCON

Wait

;Увеличиваем счетчик

incf    TEMP2

movf    TEMP2, 0

andlw   0x0F

movwf   TEMP2

;Отображаем значение счетчика

call    UpdateInd

goto    Wait

END

Задание 3: Добавить файлы к проекту.

Порядок выполнения задания: Выберите “Project > Edit Project” что бы открыть диалог для добавления *.ASM файлов к проекту или удаления  файлов из проекта. “Edit Project” не изменяет первоначальную копию файла который Вы добавляете или удаляете из проекта.

Обратите внимание:    MPLAB в настоящее время поддерживает только один исходный файл, но позволяет множественные файлы для включения в проектах,  используя директиву  #include.

Add                        MPLAB, назначает *.ASM файл в проект.

Remove                  MPLAB, удаляет файл из вашего проекта, но не изменяет файл .

Copy File               Открывает диалоговое окно для выбора и копирования файла в проектный каталог.

OK                         Закрывает диалог и сохраняет любые изменения, которые Вы сделали.

Cancel                    Отменяет операцию.

Нажмите Copy File и добавьте файл simple.asm к проекту.

Задание 4: Откомпилировать проект.

Порядок выполнения задания: Выберите “File > Open Source… ” что бы открыть диалог выбора файлов для редактирования, выберите файл вашего проекта и нажмите Ok. Затем выберите “Project > Build All”. Перед вами появится диалог компиляции, если в файле были ошибки то вы получите сообщение об ошибках и автоматически откроется с перечисленными ошибками с указанием строк в которых были ошибки. В случае если ошибок небыло вы получите сообщение, что операция прошла успешно.

Задание 5: Пройти по шагам несколько программых циклов.

Порядок выполнения задания: Нажатием кнопки F6 или выбором Debug > Run > Reset сбрасываем процессор в начальное состояние. Записываем содержимое регистров микроконтролера. Содержимое специальных регистров можно увидеть выбрав в меню “Windows > Special Function Register”. Нажатием кнопки F7 или выбором Debug > Run > Step по шагам проходим несколько циклов программы и смотрим за изменением состояния регистров и портов.

Содержание отчета:

1)  Карта памяти PIC16C84.

2)  Краткое описание регистров и портов микроконтролера.

3)  Информацию о содержании регистров и портов микроконтролера после сброса.

Литература:

1)  Документация фирмы MICROCHIP в формате pdf.

2)  “Микроконтроллеры PIC16C7X” В. А. Ульрих – Наука и Техника 2000г.