Berikut adalah sebuah contoh program untuk membuat sebuah LED pada board NS.One berkedip dengan frekuensi 2 Hz, dengan menggunakan overflow interrupt TIMER1.
NS.One adalah board mikrokontroler berbasis AVR ATmega32 yang dikembangkan oleh tim riset NEXT SYSTEM Robotics Learning Center Bandung, dengan merujuk pada platform Arduino.
void setup() { bitSet(DDRC,PC5); // PC5 as output // initialize timer1 noInterrupts(); // disable all interrupts TCCR1A = 0; TCCR1B = 0; TCNT1 = 34286; bitSet(TCCR1B,CS12); // 256 prescaler bitSet(TIMSK,TOIE1A); // enable timer overflow interrupt interrupts(); // enable all interrupts } ISR(TIMER1_OVF_vect) // timer compare interrupt service routine { bitWrite(PORTC,PC5,!bitRead(PORTC,PC5)); // toggle LED TCNT1 = 34286; // reload timer } void loop() { // your program here... }
Contoh program di atas adalah satu contoh yang diangkat dalam kelas pelatihan Pemrograman Mikrokontroler AVR dengan Bahasa C yang diadakan di NEXT SYSTEM Robotics Learning Center | ITC Kosambi Ruko F2 | Baranang Siang 6-8, Bandung 40112 | (022) 4222062, (022) 70775874 | web: edukasi.nextsys.web.id | email: info@nextsys.web.id