Лабы МДК 02.01 МКС / LABA 4
.docxМинистерство общего и профессионального образования Ростовской области Государственное бюджетное профессиональное образовательное учреждение
" Таганрогский колледж морского приборостроения "
Отчет по лабораторной работе №4
по дисциплине МДК 02.01 МКС
Выполнил:
Студент группы В-316
Морковкин С.П.
Таганрог. 2019 год
Лабораторная работа №4
Тема: «Исследование прерываний в МПС»
Цель работы: Исследование прерываний микропроцессорных систем.
Лабораторное задание: Разработать программу для микроконтроллера .
TinyAVR, обеспечивающую обработку прерываний.
Порядок выполнения работы:
Собрал схему устройства в программе «Proteus» в соответствии с заданием.
В вкладке «Source Code» набрал следующий код программы:
.device ATtiny2313
.def temp=r16
.equ PERIOD_1=0
.cseg
.org 0
rjmp Init
.org 0x0005
rjmp TIM1_OVF
Init:
ldi temp,low(RAMEND)
out SPL,temp
clr temp
out DDRD,temp
ldi temp,255
out PORTD,temp
ser temp
out DDRB,temp
clr temp
out PortB,temp
SW:
ldi temp,0b11001100
out PortB,temp
ldi temp,(0<<WDIE|1<<WDTON|1<<WDE)
out WDTCR,temp
ldi temp,(0<<WDIE|1<<WDTON|0<<WDE)
out WDTCR,temp
WAIT_SW0:
sbic PIND,PERIOD_1
rjmp WAIT_SW1
ser temp
out PortB,temp
ldi temp,(1<<WDTON|0<<WDIE|1<<WDE|1<<WDP3|0<<WDP2|0<<WDP1|1<<WDP0)
out WDTCR,temp
ret
WAIT_SW1:
sbic PIND,3
rjmp WAIT_SW0
ldi temp,(0<<ISC11|0<<ISC10)
out MCUCR,temp
ldi temp,0b00010001
out PortB,temp
TIM1_OVF:
ldi temp, 0b00000101
out TCCR1B,temp
ldi temp,0b00000100
out TIMSK,temp
out TIFR,temp
ldi temp,0xaa
out TCNT1H,temp
out TCNT1L,temp
sei
ret
Путем нажатия кнопочных переключателей, убедился в работоспособности программы.
Изменил схему устройства в соответствии с рисунком 2.
Зупустил эмуляцию программы и убедился, что срабатывает только прерывание с наименьшим адресом.
Вывод: в ходе лабораторной работы исследовал прерывания микропроцессорных систем, собрал схему и написал код программы, получили навыки работы в программе «Proteus». В результате разработал программу для микроконтроллера TinyAVR, обеспечивающую обработку прерываний.