laporan ta mk

10
 LAPORAN TUGAS AKHIR MIKROKONTROLER “BLENDER OTOMATIS MENGGUNAKAN TIMER” 1. TUJUAN 1. Untuk mempermudah waktu pemakaian blender. 2. DA SAR TEORI a. Mikro kon tro ler ATMega85 35 AVR termasuk kedalam jenis mikrokontroler RISC (  Reduced Instruction Set Computing ) 8 bit. Berbeda dengan mikrokontroler keluarga MCS-51 yang berteknologi CISC (Complex  Instruction Set Computing ). Pada mikrokontroler dengan teknologi RISC semua instruksi dikemas dalam kode 16 bit (16 bits words) dan sebagian besar instruksi dieksekusi dalam 1 clock, sedangkan pada teknologi CISC seperti yang diterapkan pada mikrokontroler MCS-51, untuk menjalankan sebuah instruksi dibutuhkan waktu sebanyak 12 siklus clock. AVR atau sebuah kependekan dari Alf and Vegard’s Risc Processor merupakan chip mikrokontroler yang diproduksi oleh Atmel, yang secara umum dapat dikelompokkan ke dalam 4 kelas : * ATtiny * ATMega * AT90Sxx * AT86RFxx Perbedaan yang terdapat pada masing-masing kelas adalah kapasitas memori, peripheral, dan fungsinya. Dalam hal arsitektur maupun instruksinya, hampir idak ada perbedaan sama sekali. Dalam hal ini ATMEGA8535 dapat beroperasi pada kecepatan maksimal 16MHz serta memiliki 6 pilihan mode sleep untuk menghemat penggunaan daya listrik. Arsitektur ATMEGA8535

Upload: ariend-marina

Post on 19-Jul-2015

100 views

Category:

Documents


0 download

TRANSCRIPT

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 1/10

 

LAPORAN TUGAS AKHIR MIKROKONTROLER 

“BLENDER OTOMATIS MENGGUNAKAN TIMER”

1. TUJUAN

1. Untuk mempermudah waktu pemakaian blender.

2. DASAR TEORI

a. Mikrokontroler ATMega8535

AVR termasuk kedalam jenis mikrokontroler RISC ( Reduced Instruction Set Computing ) 8 bit.

Berbeda dengan mikrokontroler keluarga MCS-51 yang berteknologi CISC (Complex

 Instruction Set Computing ). Pada mikrokontroler dengan teknologi RISC semua instruksi

dikemas dalam kode 16 bit (16 bits words) dan sebagian besar instruksi dieksekusi dalam 1

clock, sedangkan pada teknologi CISC seperti yang diterapkan pada mikrokontroler MCS-51,

untuk menjalankan sebuah instruksi dibutuhkan waktu sebanyak 12 siklus clock.

AVR atau sebuah kependekan dari Alf and Vegard’s Risc Processor merupakan chipmikrokontroler yang diproduksi oleh Atmel, yang secara umum dapat dikelompokkan ke dalam

4 kelas :

* ATtiny

* ATMega

* AT90Sxx

* AT86RFxx

Perbedaan yang terdapat pada masing-masing kelas adalah kapasitas memori, peripheral, dan

fungsinya. Dalam hal arsitektur maupun instruksinya, hampir idak ada perbedaan sama sekali.Dalam hal ini ATMEGA8535 dapat beroperasi pada kecepatan maksimal 16MHz serta

memiliki 6 pilihan mode sleep untuk menghemat penggunaan daya listrik.

Arsitektur ATMEGA8535

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 2/10

 

(gambar arsitektur ATMEGA8535)

Secara garis besar, arsitektur mikrokontroler ATMEGA8535 terdiri dari :

* 32 saluran I/O (Port A, Port B, Port C, dan Port D)

* 10 bit 8 Channel ADC (Analog to Digital Converter)

* 4 channel PWM

* 6 Sleep Modes : Idle, ADC Noise Reduction, Power-save, Power-down, Standby and

Extended Standby

* 3 buah timer/counter 

* Analog comparator 

* Watchdog timer dengan osilator internal* 512 byte SRAM

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 3/10

 

* 512 byte EEPROM

* 8 kb Flash memory dengan kemampuan Read While Write

* Unit interupsi (internal & eksternal)

* Port antarmuka SPI8535 “memory map”

* Port USART untuk komunikasi serial dengan kecepatan maksimal 2,5Mbps

* 4.5 sampai 5.5V operation, 0 sampai 16MHz

Konfigurasi pin ATMEGA8535

* VCC = pin masukan catu daya

* GND = pin ground

* Port A (PA0 – PA7) = pin I/O (bidirectional), pin ADC

* Port B (PB0 – PB7) = pin I/O (bidirectional), pin timer/counter, analog comparator, SPI

* Port C (PC0 – PC7) = pin I/O (bidirectional), TWI, analog comparator, Timer Oscilator 

* Port D (PD0 – PD7) = pin I/O (bidirectional), analog comparator, interupsi eksternal,

USART

* RESET = pin untuk me-reset mikrokontroler 

* XTAL1 & XTAL2 = pin untuk clock eksternal

* AVCC = pin input tegangan ADC

* AREF = pin input tegangan referensi ADC

b. Keypad

Keypad merupakan tombol push button yang disusun sebagai baris dan kolom sehingga

membentuk matriks. Keypad banyak digunakan sebagai piranti masukan dalam piranti

elektronik. Gambar 5.1 memperlihatkan bentuk fisik keypad. Keypad ini memiliki 16 tombol

yaitu 0,1,2,3,4,5,6,7,8,9,A,B,C,D,* dan #.

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 4/10

 

 

Gambar 5.1 Keypad 4x4

Dalam gambar 5.2 keypad dihubungkan ke PORTB mikrokontroler dengan posisi baris (b1-

 b4) terhubung ke PORTB.0-PORTB.3 dan posisi kolom (c1-c4) terhubung ke PORTB.4-

PORTB.7. Sedangkan untuk mengetahui tombol apa yang ditekan oleh user, 8 buah LED yang

terdapat dalam MODUL I/O dihubungkan ke PORTC.

Gambar 5.2 Rangkaian keypad dan LED

c. Timer

Timer/Counter merupakan fitur di setiap mikrokontroler yang sangat banyak peranannya

dalam perancangan sebuah sistem. Dengan sebuah timer kita bisa menunda suatu eksekusi dari

suatu perintah, sehingga sistem mikrokontroler yang berjalan cepat (mungkin dalam orde nano

atau mikro detik), dapat sinkron dengan operator (manusia). Dengan timer pula kita dapat

menghitung lebar pulsa/frekuensi dari suatu sinyal, menghitung kecepatan jatuh suatu

 benda,atau kecepatan suatu kendaraan, dengan timer/counter kita dapat menghitung jumlah

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 5/10

 

mobil yang lewat dalam jalan tol misalnya, dan ada lebih banyak lagi fungsi timer/counter 

dalam sebuah mikrokontroler.

Karena fungsinya yang relatif lebih banyak dalam suatu sistem, maka banyak vendor 

memasang timer dalam mikrokontroler tidak hanya satu, dengan panjang data yang tidak hanya

8 bit, tapi juga 16 bit. Dalam mikrokontroler AVR ada Timer 0 yang berkapasitas 8 bit, dan

Timer 1 yang berkapasitas 16 bit. Pada beberapa jenis AVR juga tersedia Timer2 yang berkapasitas 8 bit (misal ATMEGA8535). Timer pada mikrokontroler AVR lebih leluasa dalam

  pengendalian lebar waktu yang digunakan untuk menyelesaikan nilai timer, karena pada

mikrokontroler AVR tersedia prescaller, sehingga kita dapat menggunakan timer untuk tunda

dari orde milidetik sampai dengan menit (tanpa menggunakan register serba guna), tidak seperti

mikrokontroler MCS51 yang sumber internal timer berasal dari osilatornya. Untuk 

mengaktifkan suatu Timer kita harus mengeset register2 yang berhubungan dengan TImer.

Misalkan kita ingin menggunakan Timer 1. Maka register2 pada timer 1 harus diset sesuai

dengan mode yang kita inginkan.Timer 1 adalah timer 16 bit yang memungkinkan program

 pewaktuan berjalan dengan lebih akurat. Fitur yang ada pada timer ini adalah:

• Desain 16 bit (Juga memungkinkan 16 bit PWM)

• Dua buah compare unit• Dua buah register pembanding

• Satu buah input capture unit 

• Timer di-nol-kan saat match compare (auto reload )

• Dapat menghasilkan gelombang PWM dengan glitch-free

• Periode PWM yang dapat diubah-ubah

• Pembangkit frekuensi

• Empat buah suber interupsi (TOV1, OCF1A, OCF1B dan ICF1)

3. ALAT DAN BAHAN YANG DIGUNAKAN

1.1 set Personal Computer/Laptop yang sudah berisi program Code Vision dan Khazama2. 1 buah catu daya DC +5V

3. 1 buah multimeter 

4. 1 buah ISP Downloader AVR 

5. 1 buah sistem minimum AVR 

6. 1 buah I/O

7. 1 buah kabel printer USB

8. 1 buah kabel pita hitam

4. PROSEDUR 

1. Rangkailah peralatan yang diperlukan seperti dalam Gambar 5.3. Hubungkan soket

  jumper PORTB pada minimum system dengan soket jumper KEYPAD dan soket jumper PORTC pada minimum system dengan soket jumper OUTPUT pada I/O.

I/OISP Downloader 

Kabel USBKabel

downloader  Minimum

system AVR

Kabel pita

hitam

Catu Daya + 5V

Gambar 5.3 Rangkaian antarmuka mikrokontroler 

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 6/10

 

2. Buka program Code Vision AVR 

3. Buatlah project baru dengan inisialisasi PORTB.0-PORTB.3 sebagai output dengan

kondisi awal berlogika HIGH dan PORTB.4-PORTB.7 sebagai input dengan pull-up

(DDRB = 0FH dan PORTB=FFH), serta PORTC sebagai output dan kondisi awal

LOW (DDRC = FFH dan PORTC=00H), sehingga pada program bagian inisialisasiPORTB dan PORTC terlihat sebagai berikut:

PORTB=0xff;DDRB=0x0f; //portb sebagai input dan output, 0b00001111

PORTC=0x00;DDRC=0xff; // portc sebagai output

4. Deklarasikan fungsi keypad() dengan bilangan yang dikembalikan ke program utama

sebagai bilangan integer.

unsigned char keypad();

5. Tuliskan script berikut dalam program utama:

while (1){

PORTC=keypad(); //menampilkan hasil yang dikembalikan oleh fungsi ke LED}

6. Tambahkan fungsi berikut di bawah program utama:

unsigned char keypad(){

PORTB = 0b11111110; //aktifkan baris1 (memberi logika 0 ke baris1)delay_ms(100);if(PINB.7==0) return (10);if(PINB.6==0) return (3);if(PINB.5==0) return (2);if(PINB.4==0) return (1);//========================PORTB = 0b11111101; //aktifkan baris2

delay_ms(100);if(PINB.7==0) return (11);if(PINB.6==0) return (6);if(PINB.5==0) return (5);if(PINB.4==0) return (4);//========================PORTB = 0b11111011; //aktifkan baris3delay_ms(100);if(PINB.7==0) return (12);if(PINB.6==0) return (9);if(PINB.5==0) return (8);if(PINB.4==0) return (7);

//========================PORTB = 0b11110111; //aktifkan baris4

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 7/10

 

delay_ms(100);if(PINB.7==0) return (13);if(PINB.6==0) return (15);if(PINB.5==0) return (0);if(PINB.4==0) return (14);

}

7. Tekan tombol keypad, amati nyala LED dan tuliskan nyala LED tersebut dalam Tabel

5.1.

Tabel 5.1 Hasil percobaan

NoTombol keypadyang ditekan

TampilanLED

Nilai tampilan LED (dalamdesimal)

1 1

0 0 0 0 0 0 0

1 1

2 2

0 0 0 0 0 0 1

0 2

3 3

0 0 0 0 0 0 1

1 3

4 4

0 0 0 0 0 1 0

0 4

5 5

0 0 0 0 0 1 0

1 5

6 6

0 0 0 0 0 1 1

0 6

7 7

0 0 0 0 0 1 1

1 7

8 8

0 0 0 0 1 0 0

0 8

9 9

0 0 0 0 1 0 0

1 9

1

0 0

0 0 0 0 0 0 0

0 0

1

1 *

0 0 0 0 1 1 1

0 14

1

2 #

0 0 0 0 1 1 1

1 15

1

3 A

0 0 0 0 1 0 1

0 10

1

4 B

0 0 0 0 1 0 1

1 11

15 C

0 0 0 0 1 1 00 12

1

6 D

0 0 0 0 1 1 0

1 13

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 8/10

 

8. Ubah program utama untuk algoritma berikut:

1. Jika tombol 0 ditekan semua LED mati.

2. Jika tombol 1 ditekan semua LED menyala.

9. Buatlah gabungan algoritma berikut menjadi sebuah program.

1. Jika tombol 0 ditekan LED bit 0 menyala.

2. Jika tombol 1 ditekan LED bit 1 menyala.

3. Jika tombol 2 ditekan LED bit 2 menyala.

4. Jika tombol 3 ditekan LED bit 3 menyala.

5. Jika tombol 4 ditekan LED bit 4 menyala.

6. Jika tombol 5 ditekan LED bit 5 menyala.

7. Jika tombol 6 ditekan LED bit 6 menyala.

8. Jika tombol 7 ditekan LED bit 7 menyala.

9. Jika tombol 8 ditekan LED bit 0-3 menyala, bit 4-7 mati.

10. Jika tombol 9 ditekan LED bit 0-3 mati, bit 4-7 menyala.

11.Jika tombol A ditekan LED bit 0,2,4,6 menyala, bit 1,3,5,7 mati.

12.Jika tombol B ditekan LED bit 0,2,4,6,mati, bit 1,3,5,7 menyala.13.Jika tombol C ditekan ditekan algoritma 9 dan 10 dilaksanakan bergantian dengan

delay time 1 detik.

14.Jika tombol D ditekan ditekan algoritma 11 dan 12 dilaksanakan bergantian dengan

delay time 1 detik.

15.Jika tombol * semua LED mati.

16.Jika tombol # semua LED menyala.

5. DATA HASIL PERCOBAAN

Tabel 5.1 Hasil percobaan

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 9/10

 

Hasil program no 8

NoTombol keypadyang ditekan

TampilanLED

Nilai tampilan LED (dalamdesimal)

1 1 ΟΟΟΟΟΟ

 

ΟΟ 2

2 2 ΟΟΟΟΟ

 

ΟΟΟ 4

3 3 ΟΟΟΟΟΟΟΟ 8

4 4 ΟΟΟΟΟΟΟΟ 16

5 5 ΟΟ

 

ΟΟΟΟΟΟ 32

6 6 Ο

 

ΟΟΟΟΟΟΟ 64

7 7 ΟΟΟΟΟΟΟΟ 128

8 8 ΟΟΟΟ

 

ΟΟΟ

 

O 15

9 9 ΟΟΟΟΟΟΟΟ 240

1

0 0 ΟΟΟΟΟΟΟ

 

Ο 1

1

1 * ΟΟΟΟΟΟΟΟ 0

1

2 # ΟΟΟΟΟΟΟΟ 255

1

3 A Ο

 

ΟΟΟΟΟΟΟ 85

1

4 B ΟΟ

 

ΟΟΟΟ

 

ΟΟ 170

1

5C

ΟΟΟΟΟΟΟΟ

ΟΟΟΟΟΟΟΟ

15

240

1

6D

Ο

 

ΟΟΟΟΟΟΟ

ΟΟ

 

ΟΟΟΟ

 

ΟΟ

85

170

5/17/2018 laporan TA MK - slidepdf.com

http://slidepdf.com/reader/full/laporan-ta-mk 10/10

 

6. PEMBAHASAN

1. Buatlah kesimpulan Tabel 5.1.

2. Instruksi yang digunakan untuk membaca tombol keypad yang ditekan adalah…

3. Instruksi yang digunakan untuk menyalakan LED sesuai keypad yang ditekan

adalah …

4. Tuliskan program untuk melaksanakan algoritma pada langkah percobaan no 8.

5. Tuliskan program untuk melaksanakan algoritma pada langkah percobaan no 9.

7. KESIMPULAN

http://polong.wordpress.com/2008/04/16/timer-pada-mikrokontroler-avr/

http://swadexi.blogspot.com/2010/09/mikrokontroler-atmega8535.html