Anda di halaman 1dari 12

PERCOBAAN 3

TIMER, COUNTER
Bagas Yuda Ananda (119130102)
Asisten : M. Mashyuda (13117077)
Tanggal Percobaan : 17/04/2021
EL2209_A-10_Praktikum_Sistem_Mikroprosesor
Laboraturium Teknik Elektro
Institut Teknologi Sumater

Abstrak – pada praktikum kali ini yang melakukan Adapun tujuan dari praktikum ini adalah :
percobaan timer dan counter pada ATMega 8535,
yang mana pada percobaan yang dilakukan terdapat 2 1. Praktikan mampu membuat aplikasi
percobaan yaitu dengan menggunakan 8-bit timer/counter pada AVR dengan
timer/counter dan percobaan yang kedua menggunakan bahasa pemrograman C
menggunakan 16-bit timer/counter. Lalu pada
BAB II
praktikum ini juga untuk mengetahui apakah timer
LANDASAN TEORI
berfungsi dengan baik atau tidak, menggunakan led
sebagai output nya sehingga bisa terlihat dengan jelas Timer Dan Counter
hasil dari timer yang sudah di percobakan.
Mikrokontroler ATMega8535 memiliki beberapa pre-
Kata kunci – timer, counter, atmega8535 dimensi variable (register yangterdapat pada
datasheet) dengan fungsi tertentu. Tiga diantaranya
BAB I
adalah Timer0, Timer1dan Timer2.
PENDAHULUAN
1. Timer0Merupakan timer 8 bit jadi dapat
Timer /Counter adalah suatu peripheral yang
tertanam didalam microcontroller yang berfungsi menghitung dari 0 sampai dengan 255 yang
pewaktu. Dengan peripheral ini pengguna multi fungsi,fitur-fitur dari Timer0 adalah:a.
microcontroller dapat dengan mudah menentukan Counter 1 kanalb. Timer di-nol-kan saat nilai
kapan suatu perintah dijalankan (delay), tentu saja perbandingan tercapaic. Sebagai pembangkit
fungsi timer tidak hanya untuk penundaan perintah gelombang PWMd. Sebagai pembangkit
saja, timer juga dapat berfungsi sebagai oscilator, frekuensi2.
PWM, ADC, dan lain-lain. Cara kerja timer adalah
2. Timer1Merupakan timer 16 bit jadi dapat
dengan cara memberikan prescaling (membagi
frekuensi) pada clock yang terpasang pada menghitung dari 0 sampai dengan 65535
microcontroller sehingga timer dapat berjalan dengan yangmemungkinkan program pewaktu
frekuensi yang diinginkan. menjadi lebih akurat, fitur yang ada pada
Timer1 antaralaina. Dua buah unit
Didalam Atmega8535 dan beberapa microcontroller pembandingb. Dua buah register
AVR lainnya sudah terdapat 3 buah timer, yaitu pembandingc. Satu buah input capture unitd.
TIMER0 (8 bit), TIMER1 (16 bit)dan TIMER2 (8
Dapat menghasilkan gelombang PWMe.
bit). Perbedaan timer yang 8 bit dan timer 16 terdapat
pada maksimal waktu yang dapat dijangkau, semakin Sebagai pembangkit frekuensi3.
besar bit suatu timer semakin besar waktu yang dapat 3. Timer2Merupakan timer 8 bit jadi dapat
dicapai. Sebagai contoh TIMER1 yang memiliki menghitung dari 0 sampai dengan 255,
kapasitas hingga 16 bit dapat menjangkau waktu dengan fiturhampir sama dengan timer0
hingga 67 detik lebih pada clock 1MHz berbeda
dengan TIMER0 dan 2 yang memiliki kapasitas hanya Register Timer Dan Counter
8 bit sehingga hanya dapat menjangkau maksimal 0,2
detik pada clock 1MHz namun ini bukan merupakan ▪ TCNT0 = Register Timer 1
kekurangan. ▪ TCNT 1 = Register Timer 0
▪ Ttimer0 = Periode Timer 0
▪ Ttimer 1 =Periode Timer 1 Rangkai rangkaian
▪ Tosc = Periode Clock pada aplikasi proteus
▪ Fosc = Frekuensi Crystall Clock
▪ N = Prescaler (1, 8, 64, 256, 1024)

Prescaler Buat codingan pada


Pada dasarnya Timer hanya menghitung pulsa clock. CV AVR
Frekuensi pulsa clock yang dihitung tersebut bisa
sama dengan frekuensi crystal yang digunakan atau
dapat diperlambat menggunakan prescaler dengan
faktor 8, 64, 256 atau 1024.
Masukan codingan
ke dalam rangkaian
Contoh penggunaan prescaler :

Suatu mikrokontroler menggunakan crystal dengan


frekuensi 8 MHz dan timer yang digunakan adalah Amati dan catat hasil
Timer 1 (16 Bit) maka maksimum waktu Timer yang outputnya
bisa dihasilkan adalah :
Percobaan dengan 16-bit timer
TMAX = 1/fCLK x (FFFFh + 1)
= 0.125 µs x 65536
= 0.008192 s Rangkai rangkaian
pada aplikasi proteus
Untuk menghasilkan waktu Timer yang lebih lama
dapat menggunakan prescaler 1024, maka waktu
Timer yang bisa dihasilkan adalah :
Buat codingan pada
CV AVR
TMAX = 1/fCLK x (FFFFh+1) x N
= 0.125 µs x 655536 x 1024
= 8.388608 s
Masukan codingan
Tujuan Penggunaan Timer & Counter ke dalam rangkaian
1. Melaksanaan tugas secara ber-ulang
2. Mengendalikan kecepatan motor DC (PWM)
3. Melakukan perhitungan (Counter)
4. Membuat penundaan waktu (delay) Amati dan catat hasil
outputnya
BAB III
METODOLOGI
BAB IV
A. Alat Dan Bahan
HASIL DAN PEMBAHASAN
Alat dan bahan dalam praktikum ini adalah
a. Laptop 1. Menggunakan 8-bit timer/counter
b. Software Proteus
c. Sorfware CV AVR

B. Diagram alir

Percobaan 8-bit timer


sebagai input dan output. Lalu masasukan perintah
untuk menggerakan motor roda sesuai dengan yang
diperintahkan. Lalu setelah selesai pada codingannya
masukan kedalam IC lalu akan muncul motor DC
yang menyala dan ketika push button yang tekan
maka akan berputar roda motor tersebut lalu ketika
push button yang lain nya yang ditekan maka akan
berputar kebalikan dari arah putaran yang tadi, lalu
ketika tidak di tekan atau semua push button pada
nilai 1 semua maka motor akan diam.

Flowchart percobaan kedua

Pada percobaan pertama ini dilakukan dengan


menggunakan led sebagai output nya dengan
menggunakan timer dan counter pada pengaplikasian
nya. Pada codingan yang tertera pada lampiran di
deklarasikan IC yang digunakan, lalu pendeklarasian
port yang digunakan lalu memasukan prograam yang
ingin di jalan kan oleh led tersebut. Setelah semua
selesai masukan kedalam IC ATMega8535, lalu akan
memunculkan led dengan nyala hanya pad satu led
saja ketika salah satu codingan di rubah maka akan
menghasilkan led yang menyala berbeda juga sesuai
dengan yang dirubah.

2. Menggunakan 16-bit timer/counter

Pada percobaan kedua ini yang mengguynakan motor


sebagai output yang terlihat dengan menggunakan
codingan timer counter. Pada codingan di berikan
untuk mendeklarasikan IC ATMega8535 nya dan
delay nya, lalu mendeklarasikan port yang digunakan
BAB V DAFTAR PUSTAKA
KESIMPULAN
Heryanto. (2008). Pemrograman Bahasa C untuk
Dari praktikum ini dapat disimpulkan : mikrokontroler atmega 8535. Yogyakarta: Andi.

1. Pada timer sebagai pencacah dalam suatu Syahrin. (2013). Sekilas tentang interupsi pada
frekuensi mikrokontroler. jakarta.
2. Timer berguna dalam mempercepat atau
memperlambat suatu program

Modul Praktikum Sistem Mikroprosesor Teknik


Elektro Institut Teknologi Sumatera
LAMPIRAN

Link video percobaan Modul 3 : https://youtu.be/Xfco1uAFPQU

Codingan semua percobaan :


Percobaan 1:

# include <mega8535.h>
Unsigned char led = 0xFE;
Void main (void)
{ DDRA = 0xFF;
PORTA = led;
TCNT0 = 0x00;
TCCR0 = 0x05;
TIMSK = 0x01;
TIFR = 0x00;
#asm (“sei”);
While (1)
{PORTA = led;}
}
Interrupt [TIM0_OVF] void timer0_overflow (void)
{ TCNT0 = 0x00;
Led <<= 1;
Led |=1;
If (led==0xFF) {led = 0xFE}
PORTA = led
}

Percobaan 2 :

#include <mega8535.h>
#include <delay.h>

void main (void){


unsigned int temp;
PORTC = 0x00;
DDRC = 0x00;
PORTD = 0x00;
DDRD = 0x30;

TCCR1A = 0x82;
TCCR1B = 0x12;
TCNT1 = 0x0000;
ICR1H = 0xFF;
ICR1L = 0xFF;

OCR1A = 0x0000;

temp = 0x0FF0;

while (1){
if (PINC.0==0){
delay_ms(100);
temp-=0xFF;
if(temp==0xFF01) temp=0x0000;
{
if (PINC.1==0){
delay_ms(100);
temp+=0xFF;
if (temp==0x00FE) temp = 0xFFFF;
}
OCR1A = temp;
};
}
}}
LAMPIRAN

Anda mungkin juga menyukai