.include ".include m88def.inc" ; hlavickovy subor s definiciou registrov
.def TMP =r16 ; pomcna premenna bude v registri r16
.equ LED1 =PINB1 ; HW konfiguracia - kde su LEDky a SWitche
.equ LED2 =PINB2
.equ SW1 =PINB6
.equ SW2 =PINB7
.CSEG ; nasleduje CODE SEGMENT - program
.ORG 0000 ; program zacina od adresy 0000
START:
ldi r16,high(RAMEND) ; Set Stack Pointer (= SPH + SPL )to top of RAM (RAMEND)
out SPH,r16 ;
ldi r16,low(RAMEND)
out SPL,r16
ldi TMP,0b00110000 ; nakonfiguruj co su vstupy a vystupy
out DDRB,TMP ; zapis do registra
ldi TMP,0x0F0 ; zapni pull-upy a zhasni LED
out PORTB,TMP ; zapis na port
LOOP: sbis PINB,SW1 ; obskoc ak je stlacene tlacitko
rjmp LED1_ON
LED1_OFF:
sbi PORTB,LED1 ; Set Bit LED1 na porte PB
rjmp LOOP ; skoc zasa dokola
LED1_ON:
cbi PORTB,LED1 ; Clear Bit LED1 na porte PB
rjmp LOOP ; dokola
; koniec