; AssemblerApplicationIO_1.asm ; Created: 19.04.2018 14:05:14 ; Author : w4 - program startowy ; Polaczenia ZL3AVR ; 1. zworka JP3=ON ; 2. PD7 -> JP23.w1 (switch S1) ; 3. PD6 -> JP23.w2 (switch S2) ; 4. PC ->(tasiemka) JP22 ( D2-D9) ; DziaƂanie startowe: ; LED D2 wzkazuje stan przycisku S1 ; Zadania do wykonania ; app1 : S1 wlacza diode D2, S2 wylacza diode D2 ; app2: S1 wlacza didy D2, D3, D4 ; S2-wylacza: dide D2 natychmiast, D3 po 1s , D4 po 2s .def tmp1 = r16 .def led = r26 start: ldi tmp1, low(RAMEND) ; zainicjowanie SP na koniec RAM out spl,r16 ldi tmp1, high(RAMEND) out sph,r16 ldi tmp1, 0xFF ;konfiguracja portu C na wyjscie out ddrc, r16 cbi ddrd, 7 ;konfiguracja PD6 i PD7 ne wej. cbi ddrd, 6 sbi portd, 7 ;pull-up PD7 sbi portd, 6 ;pull-up PD6 mloop: call app1 rjmp mloop //............................ app1: in tmp1, pind cpi led, 0 breq check_s1 rjmp check_s2 check_s1: andi tmp1, 0x80 breq setloop ret check_s2: andi tmp1, 0x40 breq resloop ret resloop: cbi portc, 7 call Delay_1sec cbi portc, 6 call Delay_1sec cbi portc, 5 ldi led, 0 ret setloop: ldi tmp1,0xE0 out portc, tmp1 ldi led, 1 ret Delay_1sec: ldi r18, 41 ldi r19, 150 ldi r20, 128 L1: dec r20 brne L1 dec r19 brne L1 dec r18 brne L1 ret