Program AVR01: Rozdiel medzi revíziami
Z SensorWiki
(Nová stránka: .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 SWi...) |
|||
Riadok 1: | Riadok 1: | ||
+ | <source lang="asm"> | ||
.include "2313def.inc" ; hlavickovy subor s definiciou registrov | .include "2313def.inc" ; hlavickovy subor s definiciou registrov | ||
Riadok 6: | Riadok 7: | ||
.equ LED1 =PINB1 ; HW konfiguracia - kde su LEDky a SWitche | .equ LED1 =PINB1 ; HW konfiguracia - kde su LEDky a SWitche | ||
.equ LED2 =PINB2 | .equ LED2 =PINB2 | ||
− | .equ SW1 | + | .equ SW1 =PINB6 |
− | .equ SW2 | + | .equ SW2 =PINB7 |
− | .CSEG | + | .CSEG ; nasleduje CODE SEGMENT - program |
− | .ORG 0000 | + | .ORG 0000 ; program zacina od adresy 0000 |
START: ldi TMP,0b00110000 ; nakonfiguruj co su vstupy a vystupy | 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 | LOOP: sbis PINB,SW1 ; obskoc ak je stlacene tlacitko | ||
− | + | rjmp LED1_ON | |
LED1_OFF: | LED1_OFF: | ||
− | + | sbi PORTB,LED1 ; Set Bit LED1 na porte PB | |
− | + | rjmp LOOP ; skoc zasa dokola | |
LED1_ON: | LED1_ON: | ||
− | + | cbi PORTB,LED1 ; Clear Bit LED1 na porte PB | |
− | + | rjmp LOOP ; dokola | |
; koniec | ; koniec | ||
+ | </code> |
Verzia zo dňa a času 10:52, 5. november 2008
<source lang="asm"> .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
</code>