Penggunaan Timer
Overflow
Pada percobaan kali ini akan
dibuat program untuk membuat led berkedip per 500
milliseconds.
Pada dasarnya LED akan toogle (berubah kondisi) setiap terjadi interupsi timer
overflow, nilai register timer di set sedemikian rupa sehu=ingga menghasilkan
waktu overflow per 500 milli seconds.
lansung saja kita coba ke praktiknya
PERALATAN YANG
KITA BUTUHKAN:
1. Komputer
2. Arduino Uno
3. Kabel USB tipe B
4. Project board
5. Kabel jumper
6. LED
7. Resistor 330 Ohm
8. Switch pushbutton
9. LCD
10. Potensiometer
1. Buatlah rangkaian seperti pada Gambar 6.1.
Gambar 6.1 Rangkaian Percobaan 6.1
2. Tuliskaan sintaks program seperti berikutboolean dataLed = 0;
unsigned int overflowCount = 0;
void setup() {
Serial.begin(9600);
pinMode(12, OUTPUT);
TCCR1A = 0;
TCCR1B = 0;
TCNT1 = 34286;
TCCR1B |= (1 << CS12); // 256 prescaler
TIMSK1 |= (1 << TOIE1);
sei();
}
ISR(TIMER1_OVF_vect) { TCNT1 = 34286; if(dataLed == 0) {
dataLed = 1;
}
else {
dataLed = 0;
}
digitalWrite(13, dataLed); overflowCount++;
}
void loop() {
Serial.print(“Overflow count = “);
Serial.println(overflowCount,DEC);
delay(100);
}