Modul trainer mikrokontroler atmega 8535 - USD Repository
TUGAS AKHIR
MODUL TRAINER
MIKROKONTROLER AVR ATMEGA 8535
Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Program Studi Teknik Elektro
Jurusan Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma disusun oleh:
MARIANO MAXIMUS JAMAN
NIM: 035114015
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2010
FINAL PROJECT
MICROCONTROLLER AVR ATMEGA 8535
TRAINING MODULE
In partial fulfillment of the requirements for the degree of Sarjana Teknik Electrical Engineering Study Program
Electrical Engineering Department Science and Technology Faculty of Sanata Dharma University by:
MARIANO MAXIMUS JAMAN
NIM: 035114015
ELECTRICAL ENGINEERING STUDY PROGRAM
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
HALAMAN PERSEMBAHAN
skripsi ini kupersembahkan untuk:
Bapa di Surga, Yesus Kristus, dan Bunda Maria
yang membuat segalanya mungkin
bapa mama
yang selalu sabar dan percaya
ita lia
yang selalu mendukung
doyoq
yang selalu mengerti
ummmmmmmmmmmmm
INTISARI
Mikrokontroler AVR ATMega 8535 banyak digunakan untuk berbagai aplikasi kendali maupun otomasi, mulai dari sistem yang sederhana hingga sistem yang kompleks. Karenanya pembelajaran dan pemahaman tentang mikrokontroler AVR ATMega 8535 perlu ditingkatkan. Penelitian ini bertujuan menciptakan suatu modul trainer yang diharapkan bisa membantu pembelajaran dan pemahaman tentang mikrokontroler AVR ATMega 8535 beserta fitur-fiturnya.
Pada penelitian ini, digunakan tiga masukan (masukan saklar, masukan keypad matriks, masukan analog) dan tiga penampil (LED, LCD, 7 segmen). Penggunaan masukan dan penampil tersebut bisa dikombinasikan untuk mempermudah pembelajaran dan pemahaman tentang mikrokontroler AVR ATMega 8535.
Jumlah maksimal kombinasi masukan dan penampil adalah empat kombinasi, sesuai dengan jumlah port pada mikrokontroler AVR ATMega 8535.
Trainer ini sudah bekerja dengan baik. Ketiga masukan dan penampil bisa
digunakan. Program yang digunakan sudah berhasil.Kata kunci: AVR ATMega 8535, masukan saklar, keypad matriks, masukan analog, LED, LCD, 7 segmen.
ABSTRACT
The AVR ATMega 8535 microcontroller used a lot for many control and automatism application, either for the simple system or the complex one. That is why the studying and comprehension about the AVR ATMega 8535 is need to improved. This research was meant to create a training module that supposed to make the comprehension of the AVR ATMega 8535 being a lot easier.
In this research, three inputs (switch input, keypad matrix, analog input) and three displays (LED, LCD, 7 segmen) are used. These inputs and displays can be combined to make the comprehension easier.
The maximal inputs and displays combination is four, based on the number of the AVR ATMega 8535 microcontroller’s port. This trainer is already work succesfully. The all three inputs and displays can be used. The program that used is succes.
Keywords: AVR ATMega 8535, switch input, keypad matrix, analog input, LED, LCD, 7segmen.
KATA PENGANTAR
Puji syukur penulis panjatkan kepada Tuhan Yang Maha Esa karena hanya atas berkat dan rahmatNyalah penulis dapat menyelesaikan tulisan ini. Tulisan ini adalah salah satu syarat memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Universitas Sanata Dharma.
Keberhasilan penyelesaian tulisan ini tidak lepas dari bentuan berbagai pihak, untuk itu penulis mengucapkan terima kasih kepada:
1. Bapak Martanto, S.T.,M.T. selaku dosen pembimbing yang telah merelakan waktu, tenaga, dan pikirannya untuk membimbing penulis.
2. Bapa Onesimus Jaman dan Mama Maria Imelda Hagul yang telah memberikan dukungan moral, spiritual, dan finansial dalam penyusunan tulisan ini.
3. Segenap dosen-dosen Teknik Elektro atas segala bantuan yang telah diberikan selama penulis menimba ilmu selama kuliah.
4. Yang terkasih Benedikta Gratias Jaman dan Natalian Jaman yang selalu mendukung.
5. Yang tercinta Selviana Nuryati Handayani atas dorongan dan semangat.
6. Mas FX. Suryo A. Subrata atas kesabaran dan bantuannya.
7. Rekan-rekan yang telah memberikan bantuan kepada penulis dalam pengerjaan karya tulis ini: Marselinus Rony, Ricky Nelson, David, dan Andi.
8. Sahabatku Yeremias J., Marianus S. J., Ignatius J., Celly Zanky T. L., Ishak S. D., Kristoforus Forus H., yang selalu menghibur.
9. Teman-teman seperjuangan Teknik Elektro Sanata Dharma yang telah banyak membantu: Marselinus Rony, Ricky Nelson, Andry P. S., Yanuarius B., Nendar Apo W., Jah Yudi, Raditya W., dan teman-teman lain yang tidak dapat disebutkan satu persatu.
10. Segenap laboran Teknik Elektro Universitas Sanata Dharma.
11. Segenap karyawan sekretariat Fakultas Sains dan Teknologi.
12. Semua pihak yang telah membantu penulis tapi tidak dapat penulis sebutkan namanya satu persatu karena keterbatasan tempat.
Penulis menyadari bahwa masih banyak kelemahan dan kekurangan pada penyusunan karya tulis ini. Oleh karena itu segala kritik dan saran yang bersifat membangun sangat penulis harapkan.
Akhir kata, semoga tulisan ini berguna bagi semua pihak dan dapat menjadi bahan kajian lebih lanjut.
Yogyakarta, 16 Juli 2010 Penulis
Mariano M. Jaman
DAFTAR ISI
HALAMAN SAMPUL (BAHASA INDONESIA) .......................................................... i HALAMAN SAMPUL (BAHASA INGGRIS) ............................................................... ii HALAMAN PERSETUJUAN ..................................................................................... iii HALAMAN PENGESAHAN ..................................................................................... iv HALAMAN PERNYATAAN KEASLIAN KARYA ......................................................... v HALAMAN PERSEMBAHAN ................................................................................... vi LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS .................................................................................... vii
INTISARI ................................................................................................................ viii ABSTRACT ............................................................................................................. ix KATA PENGANTAR ................................................................................................ x DAFTAR ISI ............................................................................................................ xii DAFTAR GAMBAR.................................................................................................. xv DAFTAR TABEL.....................................................................................................xvii
BAB I PENDAHULUAN ........................................................................................... 1
1.1. Latar Belakang Masalah .......................................................................... 1
1.2. Tujuan dan Manfaat Penelitian ............................................................... 1
1.3. Batasan Masalah ..................................................................................... 2
1.4. Metodologi Penelitian ............................................................................. 2
BAB II DASAR TEORI .............................................................................................. 4
2.1. Mikrokontroler AVR ATMega 8535 ......................................................... 4
2.1.1. Fitur AVR ATMega 8535 ................................................................. 6
2.1.2. Konfigurasi Pin Mikrokontroler AVR ATMega 8535 ....................... 6
2.1.3. Peta Memori ................................................................................... 7
2.1.4. ADC ................................................................................................. 8
2.1.5. Port I/ O .......................................................................................... 11
2.1.6. Komunikasi Serial USART ............................................................... 11
2.2. Transistor ................................................................................................. 14
3.5. Perancangan Perangkat Lunak ................................................................ 29
4.3.2. Pengujian Masukan ADC ................................................................ 47
4.3.1. Pengujian Masukan Saklar ............................................................. 45
4.3. Pembahasan Perangkat Lunak ................................................................ 45
4.2.3. Pengujian Masukan Keypad ........................................................... 43
4.2.2. Pengujian Masukan ADC ................................................................ 41
4.2.1. Pengujian Masukan Saklar ............................................................. 39
4.2. Pengujian Trainer Mikrokontroler AVR ATMega 8535 ............................ 39
4.1. Implementasi Trainer Mikrokontroler AVR ATMega 8535 ..................... 36
BAB IV HASIL DAN PEMBAHASAN ........................................................................ 36
3.5.3. Pemrograman dengan Masukan Keypad Matriks .......................... 34
3.5.2. Pemrograman dengan Masukan Digital Saklar .............................. 33
3.5.1. Pemrograman dengan Masukan Analog Potensiometer ............... 30
3.4. Rangkaian Reset ...................................................................................... 28
2.3. Matriks Keypad ........................................................................................ 16
3.3. Rangkaian Osilator ................................................................................... 28
3.2.3. LCD .................................................................................................. 27
3.2.2. Rangkaian Penampil 7 Segmen ...................................................... 25
3.2.1. Rangkaian LED ................................................................................ 24
3.2. Perancangan Unit Penampil .................................................................... 24
3.1.3. Rangkaian Masukan Potensiometer .............................................. 23
3.1.2. Rangkaian Masukan Saklar ............................................................. 22
3.1.1. Rangkaian Keypad Matriks ............................................................. 21
3.1. Perancangan Unit Masukan ..................................................................... 21
BAB III PERANCANGAN ALAT ................................................................................ 20
2.6. LCD............................................................................................................ 18
2.5. Penampil 7 Segmen ................................................................................. 18
2.4. LED ........................................................................................................... 17
4.3.3. Pengujian Masukan Keypad ........................................................... 49
BAB V KESIMPULAN DAN SARAN
5.1. Kesimpulan .............................................................................................. 51
5.2. Saran ........................................................................................................ 51 DAFTAR PUSTAKA LAMPIRAN
DAFTAR GAMBAR
KETERANGAN Halaman33 Gambar 3.15. Diagram alir program masukan keypad matriks
25 Gambar 3.8. Rangkaian penampil 7 segmen
26 Gambar 3.9. Rangkaian LCD
27 Gambar 3.10. Rangkaian osilator
28 Gambar 3.11. Rangkaian reset
29 Gambar 3.12. Diagram alir umum program utama
29 Gambar 3.13. Diagram alir program masukan potensiometer
30 Gambar 3.14. Diagram alir program masukan saklar
34 Gambar 4.1. Trainer mikrokontroler atmega 8535
24 Gambar 3.6. Rangkaian keluaran 8 LED
36 Gambar 4.2. (a). Saklar tampak depan
37 Gambar 4.2. (b). Saklar tampak belakang
37 Gambar 4.3. Masukan analog
37 Gambar 4.4. Masukan keypad matriks
38 Gambar 4.5. (a). Penampil 8 buah LED tampak depan
38 Gambar 4.5. (b). Penampil 8 buah LED tampak belakang
38 Gambar 4.6. LCD 2x16
25 Gambar 3.7. Diagram koneksi 74ls47
23 Gambar 3.5. Rangkaian LED
Gambar 2.1. Blok diagram fungsional AVR ATMega 853512 Gambar 2.9. Register UCSRC
5 Gambar 2.2. Konfigurasi pin AVR ATMega 8535
6 Gambar 2.3. Register ADMUX.
8 Gambar 2.4. Format data ADC dengan ADLAR = 0
9 Gambar 2.5. Format data ADC dengan ADLAR =1
9 Gambar 2.6. Register ADCRA
9 Gambar 2.7. Register UBRR
11 Gambar 2.8. Register UCSRB
13 Gambar 2.10. Daerah kerja transistor
23 Gambar 3.4. Rangkaian masukan analog potensiometer
15 Gambar 2.11. Rangkaian dasar transistor
15 Gambar 2.12. Matriks keypad 3x4
16 Gambar 2.13. Rangkaian LED
17 Gambar 2.14. Seven segmen display
18 Gambar 3.1. Diagram blok trainer mikrokontroler AVR ATMega 8535
20 Gambar 3.2. Blok diagram keypad matriks dan port masukan AVR ATMega 8535
21 Gambar 3.3. Rangkaian masukan saklar
38 KETERANGAN Halaman
Gambar 4.7. Penampil 7 segmen39 Gambar 4.8. Minimum system mikrokontroler atmega 8535
39 Gambar 4.9. Blok diagram penghubungan masukan dan penampil dengan mikrokontroler untuk pengujian masukan saklar
40 Gambar 4.10. Blok diagram penghubungan masukan dan penampil dengan mikrokontroler untuk pengujian masukan ADC
41 Gambar 4.11. Blok diagram penghubungan masukan dan penampil dengan mikrokontroler untuk pengujian masukan keypad
43 Gambar 4.12. Instruksi pengujian masukan saklar
45 Gambar 4.13. (a). Masukan saklar 0 'on'
46 Gambar 4.13. (b). Masukan saklar 2 'on'
47 Gambar 4.14. Instruksi pengujian masukan ADC
47 Gambar 4.15. (a). Tampilan LCD dan LED dengan masukan 2.49V
48 Gambar 4.15. (b). Tampilan LCD, LED, dan 7 segmen dengan masukan 5V
48 Gambar 4.16. Instruksi pengujian masukan keypad
49 Gambar 4.17. Penampil LCD, LED, dan 7 segmen saat tombol 4 ditekan
50
DAFTAR TABEL KETERANGAN
Halaman
Tabel 2.1. Pemilihan mode tegangan referensi ADC8 Tabel 2.2. Konfigurasi pengaturan port I/O
11 Tabel 2.3. Pin-pin pada LCD dan fungsinya
19 Tabel 3.1. Tabel logika digital untuk keypad matriks 3x4
22 Tabel 3.2. Tabel kebenaran IC 74ls47
26 Tabel 3.3. Konfigurasi pin LCD dan mikrokontroler atmega 8535
28 Tabel 3.4. Kombinasi masukan ADC dengan tiga penampil
31 Tabel 3.5. Kombinasi masukan saklar dengan tiga penampil
34 Tabel 3.6. Kombinasi masukan keypad dengan tiga penampil
35 Tabel 4.1. Data pengujian masukan saklar
40 Tabel 4.2. Data pengujian masukan ADC
42 Tabel 4.3. Data pengujian masukan keypad matriks
44
BAB I PENDAHULUAN
1.1. Latar Belakang Masalah
Mikrokontroler adalah otak dari suatu sistem elektronika, seperti halnya mikroprosesor sebagai otak komputer. Mikrokontroler tersedia dalam berbagai macam pilihan, tergantung keperluan dan kemampuan yang dimilikinya. Mikrokontroler AVR ATMega 8535 adalah salah satu jenis mikrokontroler yang paling sering digunakan, karena mudah didapatkan dan murah, juga karena fasilitasnya yang lengkap.
Sebagai tindak lanjut dari apa yang sudah diuraikan pada alinea sebelumnya, penulis ingin membuat sebuah alat yang mampu mempermudah pemahaman tentang mikrokontroler AVR ATMega 8535 beserta fitur- fiturnya. Adapun alat yang akan dibuat menggunakan komunikasi serial. Masukan berupa masukan analog yaitu potensiometer, masukan keypad matriks, dan saklar. Penampil yang digunakan berupa LCD, 7 segmen, dan LED.
Alat ini dirancang untuk bekerja dengan beragam pilihan masukan dan penampil. Masukan dan penampil yang digunakan tergantung pilihan pengguna. Masukan dan penampil tersebut dihubungkan ke mikrokontroler dengan kabel. Dengan mekanisme kerja ini, alat ini akan membantu pengguna untuk lebih memahami cara kerja mikrokontroler AVR ATMega 8535 dengan cara yang lebih mudah karena fungsinya akan terlihat nyata.
1.2. Tujuan dan Manfaat Penelitian
Tujuan penelitian ini adalah untuk membuat sebuah modul trainer mikrokontroler AVR ATMega 8535 dengan fitur-fiturnya dan dengan pilihan variasi masukan dan penampil yang dapat dikombinasikan pengguna sesuai pengguna dalam mempelajari dan memahami mikrokontroler AVR ATMega 8535 beserta fitur-fiturnya dan kemudian dapat menggunakannya dalam merancang alat lain yang menggunakan mikrokontroler AVR ATMega 8535.
1.3. Batasan Masalah
Modul trainer mikrokontroler AVR ATMega 8535 ini menggunakan tiga jenis penampil dan tiga jenis masukan, yaitu: a Tiga buah masukan analog potensiometer. b Delapan buah masukan saklar on/off. c Masukan keypad matriks 3x4. d Delapan buah penampil LED. e Penampil LCD. f Penampil 7 segmen.
Program yang digunakan sistem ini menggunakan beberapa fitur, antara lain: a I/ O b ADC c Komunikasi Serial.
1.4. Metodologi Penelitian
Metode penelitian yang digunakan dalam melakukan perancangan dan pembuatan alat dalam Tugas Akhir ini adalah sebagai berikut: a Studi Pustaka
Dilakukan dengan mencari dan membaca bahan-bahan referensi berupa literatur, artikel, jurnal, ataupun diktat kuliah yang berbentuk maupun hardcopy.
softcopy
b Perancangan dan Pembuatan Alat Melakukan perancangan dan pembuatan modul
trainer mikrokontroler AVR ATMega 8535. c Pengujian dan Analisa Pada tahap ini, dilakukan pengujian terhadap alat yang sudah dibuat dan analisa hasil pengujian. d Laporan dan Kesimpulan
Hasil yang sudah didapatkan dari tiga tahap sebelumnya kemudian dituliskan pada tahap ini.
BAB II DASAR TEORI Modul trainer Mikrokontroler AVR ATMega 8535 adalah alat yang dibuat
untuk membantu pemahaman pengguna akan fitur-fitur dan cara kerja mikrokontroler AVR ATMega 8535. Untuk membantu sistem ini mendemonstrasikan cara kerja mikrokontroler AVR ATMega 8535, dibutuhkan rangkaian masukan yang terdiri dari rangkaian saklar, rangkaian masukan analog berupa potensiometer, dan rangkaian masukan keypad matriks 3x4. Data masukan dari rangkaian masukan tersebut kemudian akan diproses oleh mikrokontroler dan ditampilkan dengan bantuan penampil berupa rangkaian LED, rangkaian penampil 7 segmen, dan rangkaian LCD 16 x 2. Rangkaian yang digunakan di atas akan dibahas pada bagian berikut.
2.1. Mikrokontroler AVR ATMEGA 8535
Mikrokontroler AVR ATMega 8535 adalah salah satu jenis mikrokontroler buatan ATMEL yang mudah didapatkan dan murah. Adapun blok diagram fungsional AVR ATMega 8535 adalah sebagai berikut dapat dilihat pada gambar 2.1.
Pada gambar 2.1 dapat dilihat bagian-bagian AVR ATMega 8535 yaitu 32 jalur I/O (input/ output), ADC 10 bit 8 saluran, 3 buah timer/ counter, dengan oscillator internal, port USART untuk komunikasi
watchdog timer serial, dll.
Gambar 2.1. Blok diagram fungsional AVR ATMega 8535.[1]2.1.1. Fitur AVR ATMega 8535
Fitur-fitur standar yang dimiliki AVR ATMega 8535 adalah sebagai berikut: a) Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.
b) Kapabilitas memori flash 8 KB, SRAM sebesar 512 byte, dan EEPROM sebesar 512 byte.
c) Portal komunikasi serial (USART) dengan kecepatan maksimal 2.5Mbps.
d) ADC internal dengan fidelitas 10 bit sebanyak 8 channel.
2.1.2. Konfigurasi Pin Mikrokontroler ATMEGA 8535
Konfigurasi pin AVR ATMega 8535 dapat dilihat pada gambar 2.2 berikut dan keterangan tentang pin dan fungsi masing-masingnya dapat dilihat setelahnya.
Gambar 2.2 Konfigurasi pin AVR ATMega 8535.[2] a) VCC. Pin yang berfungsi sebagai catu daya.b) GND. Pin ground.
c) Port A (PA0...PA7). Pin I/O dua arah dan pin masukan ADC.
d) Port B (PB0...PB7). Pin I/O dua arah dan pin fungsi khusus, yaitu timer/ counter , komparator analog, dan SPI. e) Port C (PC0...PC7). Pin I/O dua arah dan pin fungsi khusus , yaitu TWI, komparator analog, dan timer oscillator.
f) Port D (PD0...PD7). Pin I/O dua arah dan pin fungsi khusus, yaitu komparator analog, interupsi eksternal, dan komunikasi serial.
g) RESET. Pin yang digunakan untuk me-reset mikrokontroler.
h) XTAL1. Pin masukan ke penguat inverting oscillator dan pin masukan clock eksternal. i) XTAL2. Pin keluaran dari penguat inverting oscillator. j) AVCC. Pin masukan tegangan untuk ADC. k) AREF. Pin masukan tegangan referensi ADC.
2.1.3. Peta Memori
AVR ATMega 8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah.[1] Memori Data
2.1.3.1 Memori data terbagi menjadi tiga bagian, yaitu 32 buah
register umum, 64 buah register I/O, dan 512 byte SRAM .
internal
Register umum menempati space data pada alamat $00 sampai $1F. Register khusus untuk menangani I/O dan kontrol mikrokontroler menempati 64 alamat berikutnya, yaitu $20 hingga $5F. Register ini digunakan untuk mengatur peripheral mikrokontroler, seperti kontrol register, timer/ counter, fungsi- fungsi I/O, dsb. Alamat memori yang tersisa yaitu $60 sampai $25F digunakan untuk SRAM 512 byte.
2.1.3.2 Memori Program
Memori program yang terletak dalam Flash PEROM tersusun dalam word atau 2 byte karena tiap instruksi memiliki lebar 16 bit atau 32 bit. AVR ATMega 8535 memiliki 4 KbyteX 16 bit flash PEROM dengan alamat mulai dari $000 sampai sehingga mampu mengalamati isi flash. Selain itu, AVR ATMega 8535 juga memiliki memori data berupa EEPROM 8 bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF.
2.1.4. ADC
ATMega8535 merupakan tipe AVR yang dilengkapi 8 saluran ADC internal dengan fidelitas 10 bit. Proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi, format output data, dan mode pembacaan. Register yang perlu diset nilainya adalah ADMUX (ADC Multiplexer Selection Register), ADCSRA (ADC Control and
), dan SFIOR (Special Fungtion IO 9 Register).[1]
Status Register A
ADMUX merupakan register 8 bit yang berfungsi menentukan tegangan referensi ADC, format data output, dan saluran ADC yang digunakan.
Gambar 2.3. Register ADMUXBit penyusunnya dapat dijelaskan sebagai berikut:
1. REFS [1..0] merupakan bit pengaturan tegangan referensi ADC ATMega8535. Memiliki nilai awal 00 sehingga referensi tegangna berasal dari pin AREF. Untuk nilai yang lain dapat dilihat pada tabel
2.1. Tabel 2.1. Pemilihan mode tegangan referensi ADC
2. ADLAR merupakan bit pemilih mode data keluaran ADC. Bernilai register ADCH dan 8 bit sisanya berada di register ADCL, seperti gambar 2.4. jika bernilai 1 maka hasilnya seperti pada gambar 2.5.
Gambar 2.4. Format data ADC dengan ADLAR = 0Gambar 2.5. Format data ADC dengan ADLAR = 13. MUX [4...0] merupakan bit pemilih saluran pembaca ADC. Bernilai awal 0000. Untuk mode single ended input. MUX[4...0] bernilai 0000 – 1111.
ADCRA merupakan register 8 bit yang berrfungsi melakukan manajemen sinyal kontrol dan status dari ADC. Bit penyusunnya dapat dijelaskan dengan gambar 2.6 dan penjelasan baerikutnya.
Gambar 2.6. Register ADCRA a. Bit 7 – ADEN: ADC Enable.Merupakan bit pengatur aktivitas ADC. Bernilai awal “0”, jika benilai “1” maka ADC Aktif.
b. Bit 6 – ADSC: ADC Start Conversion.
Merupakan bit penanda mulainya konversi ADC. Bernilai awal “0”, selama konversi ADC akan bernilai “1”. Sedangakan jika konversi telah selesai, akan bernilai 0.
c. Bit 5 – ADFR: ADC Free Running Select.
Merupakan bit pengatur aktivasi picu otomatis operasi ADC. Bernilai awal “0”. Jika di-set “1”, maka operasi konversi ADC dilakukan terus-menerus.
d. Bit 4 – ADIF: ADC Interrupt Flag.
Merupakan bit penanda akhir suatu konversi ADC. Bernilai awal “0”. Jika bernilai awal “1”, maka konversi ADC pada suatu saluran telah selesai dan siap diakses.
Bit 3 – ADIE: ADC Interrupt Enable.
e.
Merupakan bit pengatur aktivitas interupsi yang berhubungan dengan akhir konversi ADC. Bernilai awal “0”. Jika bernilai “1” dan jika sebuah konversi ADC telah selesai, maka sebuah interupsi akan dieksekusi.
f. Bit 2:0 – ADPS2:0 : ADC Prescaler Select bit.
Merupakan bit pengatur clock ADC. Bernilai awal 000.
Dalam proses pembacaan hasil konversi ADC, dilakukan pengecekan terhadap bit ADIF (ADC Interrupt Flag) pada register ADCSRA. ADIF akan bernilai satu jika konversi sebuah saluran ADC telah selesai dilakukan dan data hasil konversi siap untuk diambil, dan demikian sebaliknya. Data disimpan dalam dua buah register, yaitu ADCH dan ADCL.[1]
Masukan analog ADC tegangan (V ) harus lebih besar dari 0V
in
dan lebih kecil daripada tegangan referensi (V ). Masukan ADC
ref
dihubungkan dengan konfigurasi potensio yang dihubungkan dengan
VCC dan GND untuk memperoleh rentang masukan analog. Untuk hasil kalkulasi, ADC dapat diperoleh dengan rumus berikut: =
ℎ ∗ 255 Jika yang dipakai 8 bit ADC, maka rentang output yang mungkin
8
dihasilkan adalah dari 0 sampai 255 (8 bit = 2 = 256). Jika masukan analog ADC adalah 0V, maka keluaran hasil konversi adalah 0. Jika masukan analog sama besarnya dengan V ,maka hasil keluaran
ref
konversi adalah 255; dan jika masukan analog ADC adalah V /2, maka
ref hasil konversi adalah 128. Jika yang dipakai 10 bit ADC, maka rentang output yang dihasilkan adalah dari 0 sampai 1023.[1]
2.1.5. Port I/ O
ATmega8535 mempunyai 32 pin I/O dan dikelompokan menjadi empat buah port yang bernama PortA, PortB, PortC, dan PortD. Port I/O pada mikrokontroler ATMega8535 dapat berfungsi sebagai masukan atau keluaran, sesuai dengan pengaturan yang digunakan. Untuk mengatur port I/O sebagai masukan atau keluaran perlu dilakukan pengaturan pada DDR dan port.[1]
Tabel 2.2. Konfigurasi Pengaturan Port I/ODDR bit = 1 DDR bit = 0 Port bit = 1 Output High Input pull-up Port bit = 0 Output Low Input floating
2.1.6. Komunikasi Serial USART Universal Synchronous and Asynchronous Serial Receiver and
(USART) pada ATMega 8535 memiliki beberapa
Transmiter
keuntungan dibandingkan sistem UART, yaitu: operasi full duplex, mode operasi sinkron dan asinkron, mendukung komunikasi multiprosesor, dan mode kecepatan transmisi berorde Mbps.[1] Dalam proses inisialisasinya, ada beberapa register yang diset nilainya, yaitu:
1. UBRR (USART Baud Rate Register) UBRR merupakan register 16 bit yang berfungsi melakukan penentuan kecepatan transmisi data yang akan digunakan. UBRR dibagi menjadi dua, yaitu UBRRH dan UBRRL, seperti yang terlilhat pada gambar 2.7 berikut.
Bit penyusunnya dijelaskan sebagai barikut:
a) URSEL merupakan bit pemilih antara akses UBRR dan UCSRC, yang perlu dilakuan karena keduanya menempati lokasi yang sama. Untuk akses UBRR, bit bernilai 0.
b) UBRR[11...0] merupakan bit penyimpan konstanta kecepatan komunikasi serial. UBRRH menyimpan 4 bit tertinggi data seting baud rate dan UBRRL menyimpan 8 bit sisanya.
2. UCSRB (USART Control and Status Register B).
Merupakan register 8 bit pengatur aktivasi penerima dan pengiriman USART. Komposisinya seperti gambar 2.8 berikut.
Gambar 2.8. Register UCSRB a) RXCIE mengatur aktivasi interupsi penerimaan data serial.Bernilai awal 0 sehingga proses penerimaan data berdasar pada sistem pooling. Jika bernilai 1 dan jika bit RXC pada UCSRA bernilai 1, interupsi penerimaan data serial akan dieksekusi.
b) TXCIE mengatur aktivasi interupsi pengiriman data serial.
Bernilai awal 0. Jika bernilai 1 dan jika bit TXC pada UCSRA bernilai 1, interupsi pengiriman data serial akan dieksekusi.
c) UDRIE mengatur aktivasi interupsi yang berhubungan dengan kondisi bit UDRE pada UCSRA. Bernilai awal 0. Jika bernilai 1, maka interupsi akan terjadi hanya jika bit UDRE bernilai 1.
d) RXEN merupakan bit aktivasi penerima serial ATMega 8535.
Bernilai awal 0. Jika bernilai 1, maka penerima data serial diaktifkan.
e) TXEN merupakan bit aktivasi pengirim serial ATMega 8535.
Bernilai awal 0. Jika bernilai 1 maka pengirim data serial diaktifkan.
f) UCSZ2 bersama dengan bit UCSZ1 dan UCSZ0 di register UCSRC menentukan ukuran karakter serial yang dikirimkan.
3. UCSRC (USART Control and Status Register C).
Merupakan register 8 bit yang digunakan untuk mengatur mode dan kecepatan komunikasi serial yang dilakukan.[1] Komposisinya seperti gambar 2.9.
Gambar 2.9. Register UCSRC.Bit penyusunnya dapa dijelaskan sebagai berikut:
a) URSEL merupakan bit pemilih antara akses UCSRC dan UBRR.
b) UMSEL merupakan bit pemilih mode komunikasi serial antara sinkron dan asinkron.
c) UPM[1...0] merupakan bit pengatur paritas.
d) USBS merupakan bit pemilih ukuran bit stop.
e) UCSZ1 dan UCSZ0 merupakan bit pengatur jumlah karakter serial.
f) UCPOL merupakan bit pengatur hubungan antara perubahan data keluaran dan data masukan serial dengan clock sinkronisasi. Proses pengiriman data serial dilakukan per byte data dengan menunggu register UDR yang merupakan tempat data serial akan disimpan menjadi kosong sehingga siap ditulis dengan data yang baru.
Proses tersebut menggunakan bit yang ada pada register UCSRA, yaitu bit UDRE (USART Data Register Empty). Bit UDRE merupakan bit indikator kondisi register UDR. Jika UDRE bernilai 1, berarti UDR telah kosong dan siap diisi dengan data yang baru.[1]
Proses penerimaan data serial dilakukan dengan mengecek nilai RXC (USART Receive Complete) pada register UCSRA. RXC akan bernilai 1 jika ada data yang siap dibaca di buffer penerima, dan bernilai nol jika tidak. Jika penerima USART diaktifkan, maka bit akan selalu barnilai nol.[1]
2.2. Transistor
Transisitor dua kutub (Bipolar Junction Teransistor, BJT) adalah sebuh piranti dari bahan semikonduktor, yang terdiri dari dua jenis yaitu NPN dan PNP, yang secara simbolik dapat dibedakan dengan memperhatikan arah panahnya. Ketiga daerah bahan semikonduktor tersebut masing-masing dihubungkan dengan terminal sebagai kolektor (c), basis (b), dan emitter (e). Transistor berfungsi sebagai penguat apabila bekerja pada daerah aktif, dan sebagai saklar bila berada dalam keadaan terpancung (cut off) atau kedaan jenuh (saturation).[3]
B ).
C
ke V
E
). Pada daerah ini ( I
C
≠ β.I
Saat I
CE
B
= 0, tegangan transistor masuk daerah terpancung. Kaki basis ke emitor tidak lagi bertentangan maju. Akibatnya I
C
= 0, untuk V
CE berapapun.
Daerah kerja transistor seperti terlihat pada gambar 2.10.
untuk masukan daerah jenuh adalah sekitar 0.2 volt sampai 0.3 volt ( V
terlalu kecil, maka transistor masuk kedaerah operasi jenuh atau saturasi. Pada daerah ini karakteristik sangat curam dan dapat dikatakan vertical. Nilai V
Transistor dua katub atau Bapilor Juntion Transistor dapat dioperasikan dalam tiga operasi yaitu : a. Daerah aktif atau arus konstan (I
tertentu,
C
=
βI B
) Pada daerah ini arus kolektor I
C
dianggap tetap untuk dinilai I
B
I C
CE
tidak brubah walaupun V
CC bertambah.
b. Daerah jenuh atau saturasi ( I
C
≠ βI
B
) Bila V
c. Daerah terpacung atau cutt off
Gambar 2.10. Daerah kerja ransistor.Gambar 2.11. Rangkaian dasar transistor.Pada gambar 2.11, V adalah tegangan pada lapisan pengosongan
BE
emitter yang besarnya 0,7 volt untuk bahan silikon. Jika V < V maka
BB BE
dapat dianggap kaki basis-emiter diberi bias balik dan arus I = 0, sehingga I
B E
= I C
V CE = V CC , keadaan transistor yang demikian disebut terpancung.[3] ,
Tetapi jika V > V , akan mengalir alur basis (I ) yang besarnya :
BB BE B
− =
(2.1) dan membuat transistor dalam kedaan jenuh (saturasi). Kedaan ini akan menyebabkan arus kolektor (I ) mengalir ke emiter malalui basis yang
C
besarnya : −
= (2.2) Dalam keadaan jenuh, tegangan antara kolektor dan emitter (V CE ) = 0 volt, sehingga dapat dianggap V = 0 volt. Arus emiter (I ) yang mengalir
E C
adalah :
- =
(2.3) Pada transistor bipolar terjadi penguatan arus dengan faktor penguatan (
β atau h ) yaitu
FE
= (2.4)
Nilai
C )
β menyebabkan transistor dapat mengalirkan arus kolektor (I yang lebih besar meskipun arus basis (I ) kecil, akan tetapi setiap transistor
B mempunyai batasan arus minimal dan maksimal yang berbeda-beda.
2.3. Matriks Keypad
Matriks Keypad 3×4 merupakan susunan 16 tombol membentuk keypad sebagai sarana masukan ke mikrokontroler, meskipun jumlah tombol ada 12 tapi hanya memerlukan 7 jalur port paralel. Jalur keluaran keypad tersebut terdiri dari 4 baris dan 3 kolom, prinsip dasar dari pembacaan keypad ini adalah dengan menggunakan scanning secara terus menerus. Bagian yang di-scanning adalah kolom sedangkan baris digunakan untuk menentukan data yang dihasilkan. Misalnya pada saat scanning ternyata posisi kolom K1 terhubung dengan B1 maka data yang dikeluarkan adalah angka 1. Untuk lebih jelasnya, gambar rangkaian matriks 3x4 adalah seperti pada gambar 2.12 berikut.
Gambar 2.12. Matriks keypad 3x4[4] Untuk aplikasi dengan mikrokontroler, keypad 3x4 dapat dihubungkan dengan 1 buah port mikrokontroler menggunakan sistem scanning. Dan karena keypad berupa saklar yang menghubungkan pin-pin pada kaki mikro dengan tahanan 0 ohm maka harus ditambahkan resistor dengan nilai tertentu untuk mencegah kerusakan pada mikro tersebut.2.4. LED
LED pada umumnya mempunyai penurunan tegangan dari 1,5 V sampai dengan 2,5 V dan dengan arus antara 10 sampai 50mA. Cahaya LED tergantung dari arusnya, dengan memberi tegangan yang cukup besar dan resistansi seri yang besar dapat membuat lebih terang.[3] Rangkaian LED seperti terlihat pada gambar 2.13 Vs
Rs LED
Gambar 2.13. Rangkaian LEDUntuk menghitung arus LED dapat digunakan persamaan :
V V
S LED
I (2.5)
R
S
Dimana: V = penurunan tegangan LED (Volt)
LED
V = tegangan sumber (Volt)
S
R = resistor yang tersusun seri dengan LED (Ohm)
s
I = arus (Ampere) Makin besar tegangan sumber, makin kecil pengaruh V . Dengan kata lain
LED
V yang besar menghilangkan pengaruh perubahan tegangan V . Biasanya,
S LED
arus LED ada di antara 10mA sampai 50mA karena pada rentang ini memberikan cahaya yang cukup untuk banyak pemakai.[3] [5]
2.5. Penampil 7 Segmen
Seven segmen mempunyai dua buah tipe, yaitu: common anode dan . Kedua jenis penampil 7 segmen tersebut memiliki
common cathode
karakteristik yang hampir sama. Perbedaan pada keduanya adalah pada penyambungan ketujuh kaki-kaki LED. Pada common anode, seluruh anoda dari ke tujuh LED disambung menjadi satu, sedangkan pada common , seluruh katoda dari ketujuh LED disambung menjadi satu.
cathode
LED digunakan untuk mengubah arus listrik, sehingga untuk menyalakan salah satu segmen dari tampilan arus listrik harus diarahkan ke anoda dari segmen yang dimaksud. Kondisi high akan membuat LED pada kondisi “off” dan sebaliknya kondisi low akan membuat LED pada kondisi “on”. Ketujuh kaki-kaki LED atau yang sering disebut segmen diberi label dari a sampai g. Kondisi tiap segmen diatur sedemikian sehingga kombinasi LED yang diset “on” akan membentuk karakter yang ingin ditampilkan.
Gambar 2.14. Seven Segmen Display2.6. LCD
LCD (Liquid Crystal Display) adalah suatu tampilan dari bahan cairan kristal yang dioperasikan dengan menggunakan sisitem dot matriks. LCD dalam berbagai aplikasi elektronik sering digunakan sebagai tampilan seperti jam digital, kalkulator, telepon dan sebagainya.
Dimensi LCD yang akan digunakan dalam perancangan memiliki ukuran 2 x 16. Ukuran tersebut menandakan bahwa LCD memiliki layar tampilan yang terdiri dari 2 baris dan 16 kolom. Total jumlah karakter yang dapat ditampilkan adalah sebanyak 32 karakter dengan 16 karakter pada tiap baris dan masing-masing karakter tersusun dari titik-titik (dot) yang memiliki ukuran 8 x 5 titik.
Pada penggunaan LCD ada beberapa pin yang penting. Pin-pin tersebut dapat dilihat pada tabel 2.3.[9]
Tabel 2.3. Pin-pin pada LCD dan fungsinya.Pin Fungsi
D0….D7 I/O data E Untuk mengaktifkan LCD, maka E diberi logika tinggi.
E = ‘1’ LCD aktif
W R
/ Pemilihan instruksi baca dan tulis LCD
‘0’ = Tulis ke LCD ‘1’ = Baca dari LCD
RS Pemilih register ‘0’ = register instruksi (write) dan address counter (read) aktif.
‘1’ = data register (write dan read) aktif.
VCC Catu daya LCD (+5V) GND Ground (0V)
BAB III PERANCANGAN ALAT Perancangan modul trainer mikrokontroler atmega 8535 dibagi ke dalam dua tahapan yaitu perancangan perangkat keras dan perancangan perangkat lunak. Perancangan perangkat keras dibagi lagi menjadi tiga bagian utama, yaitu perancangan unit masukan, perancangan unit pemroses, dan perancangan unit penampil. Unit masukan terdiri dari rangkaian masukan analog berupa potensiometer, rangkaian keypad matriks, dan rangkaian saklar. Unit pemroses adalah rangkaian mikrokontroler. Sedangkan unit penampil terdiri dari rangkaian 8 buah LED, rangkaian 4 buah penampil 7 segmen, dan rangkaian penmpil LCD. Perancangan perangkat lunak berupa flowchart program yang akan diisikan ke dalam mikrokontroler. Sistem ini menggunakan modul komunikasi serial K125 (USB). Adapun diagram blok sistem terlihat seperti pada gambar 3.1 berikut.
Gambar 3.1. Diagram blok trainer mikrokontroler AVR ATMega 85353.1. Perancangan Unit Masukan
3.1.1. Rangkaian Keypad Matriks
Rangkaian matriks keypad yang digunakan adalah matriks keypad 3x4, yang artinya terdiri dari 3 kolom dan 4 baris. Gambar blok diagram keypad matriks 3x4 dan mikrokontroler dapat dilihat pada
gambar 3.2. berikut.KET: PX= port X
Gambar 3.2. Blok Diagram keypad matriks dan port masukan AVR ATMega 8535Pada tiap-tiap kaki keypad ditambahkan resistor 1 kohm untuk mencegah kerusakan pada mikrokontroler. Pada perancangan sistem ini, kombinasi baris dan kolom diubah menjadi karakter angka dengan tujuan memperjelas masukan dan keluaran yang akan ditampilkan. Adapun pembacaan data pada keypad matriks selengkapnya dapat dilihat pada tabel 3.1 berikut.
1
1
1
1
6 K3/B2
1
1
1
Tabel 3.1. Tabel logika digital untuk keypad matriks 3x41
7 K1/B3
1
1
1
1
1
8 K2/B3
1
1
1
1
1
9 K3/B3
1
1
1
1
1
1
1
karakter kombinasi K1 K2 K3 B1 B2 B3 B4
1 K1/B1
1
1
1
1
1
2 K2/B1
1
1
1
1
5 K2/B2
3 K3/B1
1
1
1
1
1
4 K1/B2
1
1
1
1
1
1
- K1/B4
1
1
Saklar yang digunakan adalah saklar on/ off. Pada tiap saklar ditambahkan resistor 1kohm untuk mencegah kerusakan pada mikrokontroler, seperti yang terlihat pada gambar 3.3.
PX.7...PX.0 adalah port masukan pada mikrokontroler. Port yang digunakan tergantung keinginan pengguna, bisa menggunakan port A, port B, port C, atau port D.
1 Pada tabel 3.1, pembacaan bertipe aktif rendah, artinya untuk mengaktifkan baris atau kolom yang diinginkan, maka data yang diberikan adalah nol.
1
1
1
1 # K3/B4
1
1
1
1
1
1 K2/B4
1
1
3.1.2. Rangkaian Masukan Saklar
Gambar 3.3. Rangkaian masukan saklar.Dua buah LED yang ditambahkan pada setiap saklar seperti yang terlihat pada gambar 3.3 berfungsi sebagai indikator, dalam artian sebagai penanda kerja saklar. Saat logika 0, LED pada rangkaian logika 0 akan menyala, demikian sebaliknya saat logika 1, LED pada rangkaian logika 1 yang akan menyala.
3.1.3. Rangkaian Masukan Potensiometer
Rangkaian yang terlihat pada gambar 3.4 berikut adalah rangkaian masukan analog potensiometer. Potensiometer yang digunakan adalah potensiometer 10kohm.
3.2. Perancangan Unit Penampil
3.2.1. Rangkaian LED
Rangkaian pada gambar 3.5 adalah rangkaian LED yang digunakan sebagai penampil kerja mikrokontroler. Rangkaian ini menggunakan transistor H8050.
Berdasarkan dasar teori LED dan datasheet H8050[7], maka dapat ditentukan bahwa arus LED/ I =15mA, tegangan LED/ V =1.5V,
LED LED
dan Vcc (catu daya)=5V. Untuk keluaran dengan logika rendah, LED akan tetap mati, karena tegangan keluaran(V ) saat logika rendah
BB adalah 0V (ideal) yang mana lebih kecil dari tegangan V (0.7V).
BE
Sedangkan untuk keluaran dengan logika tinggi (V =5V), maka akan
BB
mengalir arus basis I dan membuat transistor dalam keadaan jenuh
B
(saturasi). Saat saturasi, I mengalir melalui basis. Dengan arus LED