Anda di halaman 1dari 6

MODUL II TIMER, COUNTER, INTERUPT 1

MODUL II TIMER, COUNTER, INTERRUPT

TUJUAN

  Praktikan memahami datasheet ATMega 8535.


 Praktikan mampu membuat aplikasi Timer/ Counter dan Interrupt
pada AVR dengan menggunakan bahasa pemprograman C pada CV
AVR.

 Praktikan mampu membuat aplikasi External Interrupt pada AVR
dengan menggunakan bahasa pemprograman C pada CV AVR.

KONFIGURASI TIMER/COUNTER DAN INTERRUPT

Gambar dan table berikut ini dikutipkan dari datasheet ATMega 8535.

Deskripsi register Timer/Counter 8 bit (Timer/Counter 0) (Hal. 71)

Konfigurasi mode operasi (Hal. 83)

Lihat pula hal. 72 untuk memahami definisi MAX, BOTOM dan TOP.
2 MODUL II TIMER, COUNTER, INTERUPT

Pengaturan Perilaku pin OCO (misalnya untuk mode non-PWM) (Hal. 84)

Pengaturan sumber clock (Hal. 85)

Register-register penting lain (Hal. 85)


MODUL II TIMER, COUNTER, INTERUPT 3

KONFIGURASI EXTERNAL INTERRUPT

Register-register untuk keperluan external interrupt diuraikan pada hal. 68-70


di datasheet ATMega8535. Di sini diberikan kutipan-kutipannya.
4 MODUL II TIMER, COUNTER, INTERUPT

II.A DELAY DENGAN TIMER/ COUNTER

Persiapan

  Hubungkan PORT USB Master Mikro AVR pada PORT USB PC anda.
 Pastikan USB Downloader anda sudah terinstall.

 Hubungkan PORT B (ATMega8535) pada PORT OUTPUT.

TUGAS II.A.1

Jalankan contoh program di bawah ini, amati hasilnya dan buatlah flowchart-
nya.

#include <mega8535.h>
void main()
{
DDRB = 0xFF;
while(1)
{
TCNT1 = 49910;
TCCR1B = 0b101;
while((TIFR & 0b00000100) == 0);
TCCR1B = 0;
TIFR = 0b00000100;
PORTB = ~PORTB;
}
}

Apabila kondisi OUTPUT LED DISPLAY menyala selama 1 detik dan mati selama 1
detik begitu seterusnya, maka percobaan yang dilakukan benar.

TUGAS II.A.2

Modifikasi program di atas sehingga OUTPUT LED DISPLAY akan menyala


selama x detik dan mati selama x detik begitu seterusnya, dimana x = (modulus 9
dari nomor kelompok) + 1.
MODUL II TIMER, COUNTER, INTERUPT 5

II.B EXTERNAL CLOCK SEBAGAI COUNTER

Persiapan

 Hubungkan PORT USB Master Mikro AVR pada PORT USB PC anda.
 Hubungkan PORT C pada PORT LCD.
 Hubungkan PORT B0 pada PORT K1.

TUGAS II.B.1

Jalankan contoh program di bawah ini, amati hasilnya dan buatlah flowchart-
nya.

#include <mega8535.h>
#include <alcd.h>
#include <stdio.h>
char str[10];
void main()
{
DDRB.0 = 0;
PORTB.0 = 1;
lcd_init(16);
lcd_clear();
lcd_putsf(“Counter 0= ”);
TCCR0 = 0b110;
while(1)
{
sprintf(str,”%i”,TCNT0);
lcd_gotoxy(10,0);
lcd_puts(str);
}
}

Apabila kondisi OUTPUT LCD DISPLAY menampilkan jumlah counter sebanyak n kali
keypad ditekan maka percobaan yang dilakukan benar.

TUGAS II.B.2

Modifikasi program di atas sehingga LED menyala semua selama n detik dan
mati semua selama n detik begitu seterusnya ketika keypad ditekan sejumlah n
kali, serta OUTPUT LCD DISPLAY menampilkan jumlah counter sebanyak n kali
keypad ditekan.
8 MODUL II TIMER, COUNTER, INTERUPT

II.C EXTERNAL INTERRUPT

Persiapan

 Hubungkan PORT USB Master Mikro AVR pada PORT USB PC anda
 Hubungkan PORT C pada PORT LCD.
 Hubungkan PORT D2 pada PORT K1.
 Hubungkan PORT D3 pada PORT K2.

TUGAS II.C.1

Jalankan contoh program di bawah ini, analisis dan buatlah flowchart-nya.

#include <mega8535.h>
#include <alcd.h>
void main()
{
DDRD.2 = 0;
DDRD.3 = 0;
PORTD.2 = 1;
PORTD.3 = 1;
GICR = 0b11000000;
MCUCR = 0b00000000;
#asm(“sei”)
lcd_init(16);
lcd_clear();
lcd_putsf(“Ext Interrupt”);
while(1);
}

interrupt[2]void interupsi_ext0(void)
{
lcd_gotoxy(0,1);
lcd_putsf(“INT Ext 0”);
}

Interrupt[3]void interupsi_ext1(void)
{
lcd_gotoxy(0,1);
lcd_putsf(“INT Ext 1”);
}

Apabila kondisi OUTPUT LCD DISPLAY menampilkan “INT Ext 0” ketika keypad 1
ditekan dan menampilkan “INT Ext 1” ketika keypad 2 ditekan, maka percobaan yang
dilakukan benar.
.
TUGAS II.C.2

Modifikasi program di atas sehingga program utama akan menjalankan nyala


LED yang memutar seperti pada Tugas 1.B.1, dan ketika INT Ext 0 (keypad 1)
dijalankan semua LED akan menyala selama 3 detik lalu kembali ke program
utama, serta ketika INT Ext 1 (keypad 2) dijalankan semua LED akan mati
selama 3 detik lalu kembali ke program utama.
.

Anda mungkin juga menyukai