Está en la página 1de 2

/*

* Supermercado.c
*
* Created: 21/11/2016 12:53:43 a. m.
* Author : Alex
*/

#include <avr/io.h>
#include <avr/interrupt.h>

uint8_t seg;

ISR(TIMER0_COMPA_vect){
TCCR1B=0x09;//CTC, sin preescala
seg=0;
TCNT1=0;
TCNT2=0;
TCCR2B=0x05;
}

ISR(TIMER2_OVF_vect){
seg++;
if(seg==5){
TCCR1B=0x00;
TCCR2B=0x00;
TCNT0=0;
}
}

int main(void)
{
DDRD=0x00;//Entrada
PORTD=0xFF;//Pull-Up
DDRB=0xFF;//Salida

//*CONFIGURACION TIMER 0
TCNT0=0;
OCR0A=0x05;
TCCR0A=0x02;//Modo CTC
TCCR0B=0x06;//Fuente externa por flanco de bajada
TIMSK0=0x02;//Interrupcion por coincidencia

//*CONFIGURACION PARCIAL TIMER 1


OCR1A=1137;//440Hz ---> 1136.3636 uS
TCCR1A=0x40;//Conmuta OC1A
TCCR1C=0x00;

//*CONFIGURACION PARCIAL TIMER 2


ASSR=0x20;
TCCR2A=0x00;
TIMSK2=0x01;

sei();

while (1)
{
asm("NOP");
}
}

También podría gustarte