MP_2

20 Февраль 2014 →

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ОБНИНСКИЙ ИНСТИТУТ АТОМНОЙ ЭНЕРГЕТИКИ - филиал

федерального государственного автономного образовательного учреждения

высшего профессионального образования

«Национальный исследовательский ядерный университет «МИФИ»

(ИАТЭ НИЯУ МИФИ)

Факультет Кибернетики

Кафедра Компьютерных систем, сетей и технологий

Отчет по лабораторной работе №2

Изучение ассемблера и портов ввода-вывода микроконтроллера PIC16F628А.

Выполнил:

студент гр. ВТ2-С10

Карпенко С.В.

Проверил:

Подвысоцкий Р.Г.

Обнинск 2013

Цель работы: осуществить циклично включение и выключение светодиода, интервал задержки перед включением 1,65 сек, интервал задержки перед выключением 2,15 сек.Включение-выключение зациклить.

list p=16f628A; указываем какой микроконтроллер мы используем

#include ; включаемый файл для выбранного микроконтроллера

__CONFIG _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _HS_OSC

;Reg_1EQU 0x22

;Reg_2 EQU 0x23

;Reg_3EQU 0x24

ORG 0x0000 ;вектор сброса микроконтроллера

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

ORG 0x0010

main:;начало программы

; bsf STATUS,1 ;переход в 1 банк

movlw .43

movwf 0x22;Reg_1

movlw .219

movwf 0x23;Reg_2

movlw .42

movwf 0x24;Reg_3

decfsz 0x22,F

goto $-1;(goto $) возвращение по текущему адресу

decfsz 0x23,F

goto $-3

decfsz 0x24,F

goto $-5

movlw0x1B;помещаем значение 0x1E в регистр W

TRIS PORTA;Содержимое регистра W загружается в регистр

goto main2

main2:

movlw .227

movwf 0x25

movlw .137

movwf 0x26

movlw .55

movwf 0x27

decfsz 0x25,F

goto $-1

decfsz 0x26,F

goto $-3

decfsz 0x27,F

goto $-5

nop

nop

movlw0xFF;помещаем значение 0x1E в регистр W

TRIS PORTA;Содержимое регистра W загружается в регистр

goto main

END ;директива «конец программы»

Вывод: выполнив данную лабораторную работу, мной была рассчитана задержка в (1,65 сек) перед включением светодиода и (2,15) перед выключением. Изучены команды:

decfsz f,d (вычитает из f 1, если число >0, если 0, то пропускает следующую команду). movlw f (помещает значение f в регистр w)

movwf f (помещает значение регистра w по адресу f)

cblock < address> (блок объявления констант)a1 ;< address> (имеет объявленный адрес)

a2 ;< address+1> (имеет следующий адрес)

a3 ;

+2> (…)

endc

и д.р.

Изучены особенности RISC архитектуры на примере 20МГц контроллера pic16f628A.




See also:
Для студента
Похожие записи

Комментарии закрыты.