Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Departamento de Automatizacin y
Control Industrial - DACI
Pines ATMEGA164P
Vector Interrupiones ATMEGA164P
Vector Interrupiones ATMEGA164P
Timers
Caractersticas
MODO NORMAL
.include "m164pdef.inc"
.def tempo=r16
.org 0x0
ldi tempo,0b0000_1000 ; configuro como salida PB3
out DDRB,tempo
ldi tempo,249 ; configuro comparacin
out OCR0A,tempo
ldi tempo,0b0100_0010 ; toggle y ctc
out TCCR0A,tempo
ldi tempo, 0b0000_00010 ; prescaler 8
out TCCR0B,tempo
Lazo:
rjmp lazo
Timer0 - Ejercicios
inicio:
ldi tempo,0b000_0001
out DDRB,tempo // configuracion del puerto PB0
ldi tempo,0b0000_0000
out PORTB,tempo // salida a cero
ldi igualdades,5
ldi tempo,high(ramend)
out sph,tempo
ldi tempo,low(ramend)
out spl,tempo
Timer0 - Ejercicios
// configuro timer
igualdad:
push r16
in r16,sreg
push r16
dec igualdades
brne salir
in tempo,PINB
com tempo
ori tempo,0b1111_1110
out PORTB,tempo
ldi igualdades,5
.include m164pdef.inc"
.def tempo = R16
.org 0x0
rjmp inicio ;inicio
.org 0x24
rjmp TIM0_OVF ;Timer0 Overflow
Timer0 - Ejercicios
INICIO:
lazo:
nop
rjmp lazo
TIM0_OVF:
sbi PINB,0 ;toggle
reti
Timer0 - Ejercicios
.include m164pdef.inc"
.def tempo = R16
.org 0x0
rjmp INICIO ;inicio
.org 0x24
rjmp TIM0_OVF ;Timer0 Overflow
Timer0 - Ejercicios
INICIO:
sbi DDRB,0 ;PORTB0 como salida
ldi tempo,0b0000_0101 ; PRESCALER TO /1024
out TCCR0B,tempo ;cargo registro de control
ldi tempo,0b0000_0001 ;habilito interrupcion TIMER-OVERFLOW
sts TIMSK0,tempo
ldi tempo,128
out TCNT0,tempo
sei ;habilito interrupciones globales
lazo:
nop
rjmp lazo
TIM0_OVF:
sbi PINB,0 ;toggle
ldi tempo,128
out TCNT0,tempo
reti
Timer0 - Ejercicios
.include m164def.inc"
.def tempo = R16
.org 0x0
Marco Herrera
marco.herrera@ieee.org