Operácie

Program AVR01: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Bez shrnutí editace
Balogh (diskusia | príspevky)
Bez shrnutí editace
Riadok 31: Riadok 31:


; koniec
; koniec
</code>
</source>

Verzia z 10:52, 5. november 2008

.include "2313def.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 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