Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Звіт
про виконання лабораторної роботи №1
з курсу “Мікропроцесорні пристрої ”
Мета роботи: ознайомитися з послідовністю створення і відладки програмно-апаратних засобів на основі мікроконтроллерів сімейства AVR в програмах AVR Studio та Proteus 7.
ПРОГРАМА
.include "2313def.inc"
.def temp = r16
.equ SHO_Px = PD0
.equ SH1_Px = PD1
.equ SH2_Px = PD5
.equ SH3_Px = PB4
.equ T_Alarm =879999
.equ T_Scan = 2399
.equ T_Blick = 667
.def Delay1 = r18
.def Delay2 = r19
.def Delay3 = r20
.equ LED_Pin = PB2
.equ BLST_Pin = PD2
.equ SW_Pin = PD3
.cseg
.org 0
ldi temp, 0xDF
out SPL, temp
rcall Pin_Init
L1:
in temp ,PIND
andi temp,0b00001000
brne L1
ldi Delay1, low(T_Alarm)
ldi Delay2, high(T_Alarm)
ldi Delay3, byte3(T_Alarm)
rcall Delay
cbi PORTB,LED_Pin
L2:
in temp ,PIND
andi temp,0b00000001
breq Next_1
rjmp Alarm
Next_1:
in temp ,PIND
andi temp,0b00000010
breq Next_2
rjmp Alarm
Next_2:
in temp ,PIND
andi temp,0b00100000
breq Next_3
rjmp Alarm
Next_3:
in temp ,PINB
andi temp,0b00010000
breq Alarm
in temp ,PIND
andi temp,0b00001000
brne Stop
ldi Delay1, low(T_Scan)
ldi Delay2, high(T_Scan)
ldi Delay3, byte3(T_Scan)
rcall Delay
rjmp L2
Stop:
; ???? ????
sbi PORTB,LED_Pin
rjmp L1
Alarm:
ldi Delay1, low(T_Alarm)
ldi Delay2, high(T_Alarm)
ldi Delay3, byte3(T_Alarm)
rcall Delay
in temp ,PIND
andi temp,0b00001000
breq Loop
;???? ????
sbi PORTB,LED_Pin
rjmp L1
; ????? ????? ? ??????
Loop:
in temp, PORTB
ldi r17,0b00000100
eor temp,r17
out PORTB,temp
in temp, PORTD
ldi r17,0b00000100
eor temp,r17
out PORTD,temp
ldi Delay1, low(T_Blick)
ldi Delay2, high(T_Blick)
ldi Delay3, byte3(T_Blick)
rcall Delay
rjmp Loop
Pin_Init:
cbi DDRD, SHO_Px
cbi DDRD, SH1_Px
cbi DDRD, SH2_Px
cbi DDRB, SH3_Px
sbi DDRB, LED_Pin
sbi DDRD, BLST_Pin
cbi PORTD, SHO_Px
cbi PORTD, SH1_Px
cbi PORTD, SH2_Px
cbi PORTB, SH3_PX
sbi PORTB, LED_Pin
sbi PORTD, SW_Pin
cbi PORTD, BLST_Pin
ret
Delay:
subi Delay1,1
sbci Delay2,0
sbci Delay3,0
brcc Delay
nop
ret
СХЕМА
ВИСНОВОК: на лабораторній роботі ми ознайомитися з послідовністю створення і відладки програмно-апаратних засобів на основі мікроконтроллерів сімейства AVR в програмах AVR Studio та Proteus 7.