Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* aktivnost 1
- .equ delayCnt = 9
- .def tmp=r18
- .cseg
- rjmp reset
- .org $002
- rjmp pali
- .org $004
- rjmp gasi
- reset:
- ldi tmp, LOW(RAMEND)
- out SPL, tmp
- ldi tmp, HIGH(RAMEND)
- out SPH, tmp
- ldi tmp, 0x0F
- out MCUCR, tmp
- ldi tmp, 0b11000000
- out GICR, tmp
- sei
- ldi tmp, 0xFF
- out DDRA, tmp
- out PORTA, tmp
- main:
- rjmp main
- // --------------------------------------------//
- // INT0 pali ledice //
- pali:
- in r19, PINA
- cpi r19, 0x00
- brne incLed
- ldi r20, 0
- treptanje1:
- ldi tmp, 0xFF
- out PORTA, tmp
- rcall delay
- ldi tmp, 0x00
- out PORTA, tmp
- rcall delay
- inc r20
- cpi r20, 5
- brne treptanje1
- ldi tmp, 0x00
- out PORTA, tmp
- rjmp kraj1
- incLed:
- clc
- rol r19
- out PORTA, r19
- kraj1:
- reti
- // --------------------------------------------//
- // INT1 gasi ledice //
- gasi:
- in r19, PINA
- cpi r19, 0xFF
- brne decLed
- ldi r20, 0
- treptanje2:
- ldi tmp, 0b11111110
- out PORTA, tmp
- rcall delay
- ldi tmp, 0b11111111
- out PORTA, tmp
- rcall delay
- inc r20
- cpi r20, 5
- brne treptanje2
- ldi tmp, 0xFF
- out PORTA, tmp
- rjmp kraj2
- decLed:
- sec
- ror r19
- out PORTA, r19
- kraj2:
- reti
- // --------------------------------------------//
- // delay //
- delay:
- clr r23
- clr r24
- ldi r25, delayCnt
- delay_loop:
- dec r23
- brne delay_loop
- dec r24
- brne delay_loop
- dec r25
- brne delay_loop
- ret
- */
- /* aktivnost 2 */
- .def tmp=r18
- .def tmp2=r19
- .def delayCnt=r20
- .cseg
- rjmp reset
- .org $002
- rjmp incFreq
- .org $004
- rjmp decFreq
- reset:
- ldi tmp, LOW(RAMEND)
- out SPL, tmp
- ldi tmp, HIGH(RAMEND)
- out SPH, tmp
- ldi tmp, 0x0F
- out MCUCR, tmp
- ldi tmp, 0b11000000
- out GICR, tmp
- sei
- ldi tmp, 0xFF
- out DDRA, tmp
- ldi delayCnt, 9
- main:
- out PORTA, tmp
- rcall delay
- rol tmp
- rjmp main
- incFreq:
- ldi tmp2, 255
- cpse delayCnt, tmp2
- inc delayCnt
- reti
- decFreq:
- ldi tmp2, 1
- cpse delayCnt, tmp2
- dec delayCnt
- reti
- delay:
- clr r21
- clr r22
- mov r23, delayCnt
- delay_loop:
- dec r21
- brne delay_loop
- dec r22
- brne delay_loop
- dec r23
- brne delay_loop
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement