Heemm, perlu waktu agak lama untuk memahami soal ini.
Untuk menjawah soal ini, paling tidak akan ada bagian program seperti ini:
- Code:
-
lcd_putsf("INTERUPS");
delay_ms(10000);
lcd_clear();
stopwatch_start();
while(1);
Subroutin stopwatch start:
- Code:
-
void stopwatch_start()
{
lanjutkan sendiri;
}
Biasanya interupsi timer diperlukan jika kita membutuhkan CPU untuk tetap melakukan proses selama timer berjalan (
multi tasking).
Seperti yang kita ketahui, timer 1 memiliki 4 buah sumber interupsi:
- Timer 1 Over Flow
- Timer 1 Compare A Match
- Timer 1 Compare B Match
- Timer 1 Input Capture
Dalam membuat stopwatch, kita biasanya membutuhkan interupsi timer untuk membuat bakuan waktu, misalnya 1/100 detik. Dalam hal ini kita bisa saja menggunakan interupsi Timer 1 Over Flow.
Sebelum saya lanjutkan, apakah ada interupsi?