এডিসি এর মত টাইমারও বেশ কিছু সিকুয়েন্স অনুযায়ী করতে হয়।

১। প্রি স্কেলার সেলেকশন

২। ওয়েভফর্ম জেনারেশন।

৩। টাইমার অভারফ্লো ইন্টারাপ্ট।

৪। ক্লিয়ার  টাইমার কাউন্টার  রেজিস্টার ভ্যালু।

৫। এনাবেল গ্লোবাল ইন্টারাপ্ট।

৬। ISR ফাংশন এনাবল করতে হবে।

 

আমরা এই সিকুয়েন্স গুলো মেনেই নিচের কোডগুলো লিখেছি।

/*

* Timer.c

*

* Created: 7/24/2018 10:36:39 AM

* Author : MD MASUM BILLAH

*/

#define F_CPU 8000000UL

#include <avr/interrupt.h>

#include <avr/io.h>

int count =0;

void Timer_0_Init(void)

{

TCCR0 |=(1<<CS00);

TCCR0 &= ~(1<<CS01);

TCCR0 &= ~(1<<CS02);

 

TCCR0 &= ~(1<<WGM00);

TCCR0 &= ~(1<<WGM01);

 

TIMSK |= (1<<TOIE0);

TCNT0 =0;

sei();

}

 

ISR(TIMER0_OVF_vect)

{

count++;

if(count==31250)

{

PORTC ^= (1<<0);

count = 0;

}

}

 

 

int main(void)

{

Timer_0_Init();

DDRC |=(1<<0);

 

while (1)

{

 

}

return 0;

}

 

 

 

 

 

 

 

 

/*

* Clock trial.c

*

* Created: 7/25/2018 10:05:06 AM

* Author : MD MASUM BILLAH

*/