Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3 / ЗаданЛабработа 3 Прерывания

.docx
Скачиваний:
0
Добавлен:
21.03.2026
Размер:
17.03 Кб
Скачать

Исследование аппаратных и программных прерываний на симуляторе.

1.     Запустите программный имитатор микроконтроллера. 2.     Расположите в поле редактора программу: ; Update Freq установить 20

;кнопка 1 - смена приоритета

;кнопка 2 - разрешение INT0

;кнопка 3 - разрешение INT1

;Прерывания на входах Р3.2, Р3.3 формирует таймер Т0

ORG 0

JMP START

ORG 0003H

JMP NX0

ORG 000BH

JMP NT0

ORG 0013H

CLR IE1 ;нужна команда при IT1=0

PUSH PSW

MOV A,P1

ADD A,#16

MOV P1,A

CLR P0.7

SETB P0.7

POP PSW

RETI

START: SETB IT0 ;Прервание перепадом 1/0

SETB IT1 ;;

MOV TMOD,#00000010B ;режим таймера Т0

MOV TH0,#210 ;Интервал таймера Т0

MOV TL0,TH0

SETB TR0 ;Пуск таймера Т0

MOV IE,#10000010B ;Разрешение прерываний T0.

mov p1,#150

CLR P0.7

SETB P0.7

PR: MOV C,P2.2

MOV EX0,C ;Управление разрешением

MOV C,P2.3 ; прерываний INT0 и INT1

MOV EX1,C

mov c,p2.1 ; Управление

mov px1,c ; приоритетом INT1

JMP PR

NX0: PUSH PSW

MOV A,P1

CLR C

SUBB A,#16

MOV P1,A

CLR P0.7

SETB P0.7

POP PSW

RETI

NT0:

XRL P3,#00001100B ;Формирование перепада 1/0

RETI ;на входах Р3.2, Р3.3

END

3.     Транслируйте программу.  4.     Кнопки “3”,”2”,“1” до запуска программы подключите к нулю (нажать).

5.     Запустите программу. Исследуйте влияние бит приоритета и разрешения прерываний на работу микроконтроллера, устанавливая кнопками “3”,”2”,“1” единичное и нулевое состояние соответствующих бит.  Кнопка «3» единицей разрешает прерывание INT1, нулём – запрещает. Кнопка «2» единицей разрешает прерывание INT0, нулём – запрещает. Кнопка «1» единицей повышает приоритет INT1.

      Результат работы программы наблюдайте на выходе DAC (встроенный осциллограф).

3.  Исследование аппаратного обнаружения перепадов 1/0 на входах микроконтроллера. 3.1 Расположите в поле редактора программу:

;Формирование прерываний кнопками 3 и 2

; Update Freq установить 20

ORG 0

JMP START

ORG 0003H

JMP NX0

ORG 000BH

JMP NT0

ORG 0013H

CLR IE1 ;Нужна при прерывании уровнем “0”

PUSH PSW ;Обработка прерывания INT1

MOV A,P1

ADD A,#16

MOV P1,A

CLR P0.7 ;Запись в ЦАП

SETB P0.7

POP PSW

RETI

START: SETB IT0 ;Прерывание перепадом 1/0

SETB IT1 ;;

SETB PX1

MOV TMOD,#00000010B ;Режим таймера Т0

MOV TH0,#200 ;Интервал таймера Т0

MOV TL0,TH0

SETB TR0 ;Пуск таймера Т0

MOV IE,#10000111B ;Разрешение прерываний

MOV P1,#150 ;Начальный уровень ЦАП

CLR P0.7

SETB P0.7

PR: MOV C,P2.2 ;Копирование перепадов 1/0

MOV P3.2,C ;с контакторв порта Р2

MOV C,P2.3 ;на контакты порта Р3

MOV P3.3,C

JMP PR

NX0: PUSH PSW ;Обработка прерывания INT0

MOV A,P1

CLR C

SUBB A,#16

MOV P1,A

CLR P0.7

SETB P0.7

POP PSW

RETI

NT0: PUSH PSW ;Обработка прерывания таймера Т0

MOV A,P1

ADD A,#2

MOV P1,A

CLR P0.7

SETB P0.7

POP PSW

RETI

END 3.2 Транслируйте и запустите программу.        Формируйте перепад  двойным нажатием кнопок "2" и "3". 3.3   Результат работы программы наблюдайте на выходе DAC

4. В отчёте приведите программы с комментариями и осциллограммы сигналов с указанием, какие входные воздействия были применены.

Соседние файлы в папке 3