You are on page 1of 36

RESUME SISTEM KENDALI BERBASIS MIKROPROSESOR

DISUSUN OLEH:

FAIRUS JAZILAH (5115 10 2599) MUHAMAD IRFAN (5115 10 0201) A.AJI PAMUNGKAS (5115 10 1596)

PROGRAM STUDI PENDIDIKAN TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS NEGERI JAKARTA 2013

BAB I MENGENAL ATMEGA16

1.1.Pengenalan Mikrokontroler AVR ATMEGA16 merupakan salah satu jenis mikrokontroler AVR. MirkokontrolerAVR (Alf and Vegadrs Risc processing) standar memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit, dan sebagian besar intruksi dieksekusi dalam 1(satu) siklus clock. AVR berteknologi RISC (Reduced Instruction Set Computing), sedangkan MCS51 berteknologi CISC (Complex Intruction Set Computing). AVR dapat dikelompokkan menjadi empat kelas, yaitu keluarga Attiny, keluarga AT902xx, keluarga Atmega, dan keluarga AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Silahkan buka www.atmel.com untuk informasi lebih lanjut tentang berbagai variasi AVR. Untuk mikrokontroler AVR yang berukuran lebih kecil, dapat menggunakan Atmega8, Attiny2313 dengan ukuran Flash Memory 2KB dengan dua input analog. Mikrokontroler pada dasarnya diprogram dengan bahasa assembler. Tetapi Saat ini mikrokontroler dapat diprogram dengan menggunakan bahasa tingkat tinggi sepert BASIC, PASCAL atau C. Bahasa tingkat tinggi tersebut memiliki beberapa keuntungan dibandingkan dengan bahasa asembler : Lebih mudah membangun program dengan menggunakan bahasa tingkat tinggi Perbaikan program lebih mudah jika program dibangun menggunakan bahasa tingkat tinggi Testing program didalam bahasa tingkat tinggi lebih mudah Bahasa tingkat tinggi lebih banyak dikenal dan error program yang dibuat dapat dihindari Mudah mendokumentasikan sebuah program tingkat tingggi Meskipun demikian, bahasa tingkat tinggi juga memiliki beberapa kelemahan, contohnya ukuran kode memori biasanya besar, dan program yang dibangun menggunakan bahasa asembler biasanya bekerja cepat dibangdingkan dengan program yang dibangun menggunakan bahasa tingkat tinggi.

1.2 Fitur ATMEGA16 ATMega16 mempunyai throughput mendekati 1 MIPS per MHz membuat disainer sistem untuk mengoptimasi konsumsi daya versus kecepatan proses. Beberapa keistimewaan dari AVR ATMega16 antara lain:

Arsitektur RSIC - 130 intruksi yang umumnya hanya membutuhkan 1 siklus clock. - 32x8 general purpose register. - Troughput hampir mencapai 16 MIPS pada frekuensi 16 MHz. - CPU yang terdiri dari 32 register. Nonvolatile Program and Data Memories - Memory Flash sebesar 16KB dengan kemampuan Read While Write. - Optional Boot Code Section with Independent Lock Bits - EEPROM sebesar 512 byte dapat diprogram saat operasi. - Internal SRAM sebesar 1KB. Peripheral Features - Dua buah timer/counter 8 bit dengan prescaler terpisah dan mode compare - Satu buah timer/counter 16 bit dengan prescaler terpisah, mode compare dan mode capture - Real Time Counter with Separate Oscillator - 4 chanel PWM - ADC (Analog to Digital Converter) 10 bit sebanyak 8 channel. - Port antarmuka SPI. - Port USART programmable untuk komunikasi serial. - Watchdog Timer dengan oscilator internal. Fitur spesial mikrokontroler - Power-on Reset and Programmable Brown-out Detection - Internal Calibrated RC Oscillator - Unit interupsi internal dan eksternal. - Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby and Extended
Standby

Saluran I/O - Saluran I/O ada 32 buah, yaitu Port A, Port B, Port C, dan Port D - 40-pin PDIP, 44-lead TQFP, 44-lead PLCC, and 44-pad MLF Tegangan operasi - 2.7 - 5.5V untuk Atmega16L - 4.5 - 5.5V untuk Atmega16 Spedd grade - 0 - 8 MHz untuk ATMEGA16L - 0 - 16 untuk ATMEGA16

1.3 Pin ATMEGA16 Atmega 16 memepunyai kaki standart 40 pin yang mempunyai fungsi sendiri - sendiri. Untuk lebih jelas tentang konigurasi Pin Atmega 16 bisa di lihat pada gambar berikut:

Berikut penjelasan umum susunan kaki Atmega16 tersebut: VCC merupakan pin masukan positif catudaya. GND sebagai PIN ground. Port A (PA0 ... PA7) merupakan pin I/O dua arah dan dapat diprogram sebagai pinmasukan ADC. Port B (PB0 ... PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaituTimer/Counter, Komparator Analog, dan SPI. Port C (PC0 ... PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaituTWI, komparator analog, dan Timer Oscilator. Port D (PD0 ... PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitukomparator analog, interupsi eksternal, dan komunikasi serial. Reset merupakan pin yang digunakan untuk mereset ke kondisi semula. XTAL 1 dan XTAL 2 sebagai pin masukan clock eksternal. AVCC sebagai pin masukan tegangan untuk ADC. AREF sebagai pin masukan tegangan referensi.

BAB 2 SOFTWARE

1. SOFTWARE COMPILER CODEVISION AVR

1.1

PENGENALAN

CodeVisionAVR merupakan salah satu software gratis yang berfungsi sebagai text editor dalam menulis baris perintah sekaligus sebagai compiler yang dapat mengubah file sumber menjadi file hexa. Software CodeVisionAVR versi demo dapat di unduh dari

http://www.hpinfotech.ro/html/cvavr.html. CodeVisionAVR menyediakan berbagai fasilitas yang memudahkan pengguna. Salah satunya adalah CodeWizardAVR yang memberikan kemudahan dalam melakukan konfigurasi fungsi-fungsi pin dan fitur yang yang ingin digunakan. Pengguna dapat membuat dan menjalankan program yang ditulis, kemudian mengujinya langkah demi langkah sehingga pengguna dapat mengamati perubahan data pada setiap register dan port I/O. Selain itu juga CodeVisionAVR menyediakan toolbar yang memudahkan pengguna untuk melakukan berbagai interaksi yang diinginkan dan juga memiliki arena kerja yang cukup leluasa.

1.2

INSTALASI

Agar pengguna dapat menggunakan software CodeVisionAVR maka para pengguna harus meng-instal-nya terlebih dahulu. Adapun proses instalasi software CodeVisionAVR ini cukup mudah. 1. Klik dua kali master program CodeVisionAVR yang ada di komputer. 2. Ikuti langkah-langkah yang diminta dan lakukan perubahan seperlunya. 3. Setelah selesai, program dapat langsung dijalankan.

1.3

MEMBUAT PROGRAM BARU

Membuat program baru menggunakan CodeVisionAVR tidaklah sulit. Adapun langkahlangkah yang harus dilakukan adalah sebagai berikut: 1. Jalankan program CodeVisionAVR. Dengan cara klik dua kali pada Icon

CodeVisionAVR seperti pada gambar 1.1.

Gambar 1.1 Icon CodeVisionAVR

2.

Pada saat jalankan program CodeVisionAVR maka layar kosong tampak seperti pada

gambar 1.2.

Gambar 1.2 Tampilan CodeVisionAVR

3.

Klik Menu File dan pilih New, maka tampil jendela pilihan seperti pada gambar 1.3.

Gambar 1.3 Jendela Pilihan Tipe File

4.

Untuk membuat program baru pilihlah Project kemudian klik OK, maka muncul pertanyaan yang menanyakan apakah kita ingin menggunakan CodeWizardAVR seperti pada gambar 1.4 berikut, kemudian pilih Yes.

Gambar 1.4 Jendela Confirm CodeWizardAVR 5. Pilih chip yang akan digunakan. Di sini kita menggunakan ATMEGA16dengan harga clock 16 Mhz.

6. Klik tab Ports, pilih tab Port C seperti pada gambar, ubah setting bit 0 bit 7 sebagai out.

Hasil setting ini berpengaruh pada nilai register DDRxn, dan PORTxn.

7. Setting selesai, untuk mengenerate program pilih Program>> Generate, Save, and Exit. 8. Buat direktori dengan nama io1. 9. Save file CV AVR dengan nama io1.cwp pada direktori io1. 10. Save file .C dengan nama io1.c pada direktori io1. 11. Save file project dengan nama io1.prj pada direktori io1.

1.4

LISTING PROGRAM

1. Sekarang perhatikan kode bahasa C pada bagian setting register DDRxn, dan PORTxn, tampak sebagai berikut :

DDRC = 0xFF yang berarti 8 bit port C difungsikan sebagai output. PORTC = 0x00 berarti nilai awalan output adalah 0(low).

2. Nilai register PORTC diatas adalah nilai awalan pada saat mikrokontroller start-up, kita bisa mengubah nilai output port C dengan mengubah nilai register PORTC pada looping while.

3. PORTC = 0xCD, nilai output port C adalah CD dalam bentuk hexa atau 11001101 dalam bentuk biner. 4. Program chip dengan memilih menu Project >> Compileatau dengan menekan F9. Jika pada kode masih terdapat kesalahan/error akan terlihat pada message.

5. Setting port ini dapat dilakukan bebas sesuai dengan keinginan programer dalam membuat program.

APLIKASI : INPUT

Programming:

1. Buka CV AVR., pilih File->New->Project. 2. Klik YES ketika terdapat option untuk meggunakan codeWizardAVR. 3. Pilih chip yang akan digunakan ATMEGA16dengan harga clock 16 Mhz. 4. Setting port C sebagai output (out). 5. Setting port B sebagai Input (in) dan aktifkan pull-up resistor. (lihat gambar)

6. Setting selesai, untuk mengenerate program pilih File >> Generate, Save, and Exit. 7. Buat direktori dengan nama io2. 8. Save file CV AVR dengan nama io2.cwp pada direktori io2. 9. Save file .C dengan nama io2.c pada direktori io2. 10. Save file project dengan nama io2.prj pada direktori io2.

Listing Program

1. Perhatikan setting register port B dan port C.

2. Port B difungsikan sebagai input (DDRB = 0x00) dengan 8 bit pull-up resistor diaktifkan (PORTB=0xFF). Port C difungsikan sebagai output (DDRC=0xFF) dengan nilai awalan pada tiap bit 1 (high).

3. Pada listing kode diatas kita telah men-set port B sebagai input dengan pull-up resistor dan port C sebagai output. Untuk dapat menunjukkan funggsi input mikrokontroller tambahkan listing kode berikut pada bagian looping while.

4. Listing program diatas adalahscan register PINB terus menerus dari PINB.0 PINB.7. Perhatikan bahwa untuk membaca perubahan keadaan input dari push-button dibaca pada register PINxn bukan pada register PORTxn maupun DDRxn. 5. Program chip dengan memilih menu Project >> Compileatau dengan menekan F9. Jika pada kode masih terdapat kesalahan/error akan terlihat pada message.

6. Kemudian pilih menu File lalu pilih Generat, Save and Exit. Lalu kita diminta menyimpan tiga jenis file secara berurut. Dianjurkan simpan ketiga file tersebut dalam sebuah folder yang sama. 7. Setelah selesai, maka program CodeVisionAVR akan tampak seperti gambar 1.7 yang menunjukan bahwa sudah terdapat program yang telah dikonfigurasi dan siap digunakan atau disisipkan program tambahan.

Gambar 1.7 Program CodeVisionAVR yang terkonfigurasi

Langlah-langkah diatas adalah proses untuk menghasilkan file dengan bahasa mesin yaitu file dengan ekstensi hexa (*.hex). File ini dibutuhkan untuk diisi (download) ke IC mikrokontroler, karena mikrokontroler hanya mengerti bahasa mesin. Tahap-tahap ini akan terus dilakukan setiap membuat program baru.

2. SOFTWARE PROTEUS 7 PROFESSIONAL

2.1 PENGENALAN

Pada umumnya setiap pegguna yang baru mulai belajar mengalami kesulitan untuk mempelajari mikrokontroler apabila tidak ada pendukung secara langsung seperti pengajar dan peralatan yang memadai. Untuk itu dibutuhkan suatu sarana yang dapat digunakan untuk mencoba suatu rangkaian mikrokontroler. Salah satunya adalah software Proteus 7 Professional. Software Proteus terdiri dari dua program utama yaitu ARES dan ISIS. Dimana masing-masing program memiliki fungsi yang berbeda. ARES biasa digunakan untuk membuat layout PCB (Printed Circuit Board), sedangkan ISIS biasa digunakan untuk menggambar schematic rangkaian serta mensimulasikan program. Pada bab ini hanya menggunakan program ISIS yang digunakan untuk mensimulasikan rangkaian mikrokontroler. Sedangkan untuk membuat layoutnya silahkan anda pilih sesuai selera mau menggunakan software mana.

2.2 INSTALASI

Untuk instalasi program, tidak jauh berbeda dengan cara menginstal program lain pada umumnya. Yang diinstal disini adalah software Proteus-nya, namun pada penggunaannya kita hanya akan menggunakan program ISIS-nya saja yang dapat digunakan sebagai simulator, agar rangkaian mikrokontrolernya tampak seperti rangkaian sesungguhnya. Adapun proses instalasi nya adalah sebagai berikut : 1. Klik dua kali master program Proteus 7 Professional versi Demo yang sudah di download dari http://www.labcenter.co.uk/download/prodemo_download.cfm 2. Ikuti langkah-langkah yang diminta dan lakukan perubahan seperlunya jika dibutuhkan. 3. Setelah selesai, program dapat langsung dijalankan.

2.3 TAMPILAN PROGRAM

Pada software Proteus, kita menggunakan program ISIS yang berfungsi sebagai simulator. Pada program ISIS banyak sekali fasilitas yang disajikan dan akan memakan banyak waktu jika harus menjelaskan semuanya. Oleh karena itu saya hanya akan menjelas beberapa saja yang diperlukan. Secara umum tampilan program ISIS pada Software Proteus 7 Professional adalah sebagai berikut :

Gambar 2.1 Tampilan Program ISIS Keterangan : 1. Editing Window. 2. Overview Window. 3. Object Selector.

2.4 MEMBUAT SIMULASI PROGRAM

Dalam membuat simulasi program tidaklah sulit. Namun ada beberapa tahap yang harus dilalui. Secara garis besar ada 3 tahap, yaitu : Pemilihan komponen yang akan digunakan.

Peletakan komponen dan penyusunan rangkaian. Download program pada rangkaian.

Namun sebelum pengguna membuat schematic rangkaian, pengguna harus paham prinsip kerja dari rangkaian yang ingin dibuat, sehingga pengguna dapat memeriksa kesalahan sedini mungkin pada rangkaian jika terdapat error atau ketidaksesuaian prinsip kerja pada rangkaian. Untuk mensimulasikan rangkaian mikrokontroler menggunakan program ISIS ini, pengguna tidak perlu membuat schematic secara lengkap, tapi cukup membuat rangkaian input/output-nya saja seperti pada gambar-gambar schematic yang nanti akan anda temukan pada contoh-contoh rangkaian. Pada rangkaian sebenarnya kita menggunakan IC mikrokontroler ATMega8535, tetapi pada simulator tidak terdapat IC ATMega8535, maka kita menggunakan IC mikrokontroler yang sekelas dengan ATMega8535 yaitu AT90S8535 dan untuk seterusnya kita akan menggunakan IC tersebut dalam membuat simulasi-simulasi rangkaian pada buku ini. Berikut ini adalah langkah-langkah membuat simulasi program menggunakan program ISIS : 1. Siapkan gambar rangkaian yang ingin disimulasikan. Contohnya seperti gambar 2.2 berikut.

Gambar 2.2 Rangkaian ATMega8535

2. Jalankan program ISIS dan buka lembar baru. Tampak seperti gambar 2.3 berikut.

Component Mode

Terminal Mode

Gambar 2.3 Tampilan Jendela baru 3. Pilih komponen yang akan digunakan, klik Component Mode kemudian tekan tombol Pick Devices. Seperti gambar 2.4 berikut. Dan cari komponen IC Mikrokontroler AT90S8535 dan komponen LED.

Gambar 2.4 Tombol Pick Devices 4. Pilih kategori, dan ambil komponen yang dibutuhkan dengan cara klik dua kali nama komponen yang dipilih seperti gambar 2.5 berikut.

Gambar 2.5 Jendela Pick Devices

5. Setelah semua komponen terkumpul di bagian ObjectSelector, klik OK. 6. Pilih toolbar Terminal Mode, ambil komponen Power dan letakkan pada rangkaian, atur posisi komponen pada EditingWindow. Seperti gambar 2.6 berikut.

Gambar 2.6 Posisi komponen 7. Hubungkan jalur pada masing-masing komponen sesuai gambar rangkaian sehingga tampak seperti gambar 2.7.

Gambar 2.7 Hubungan Jalur Komponen

8.

Gambar rangkaian tidak perlu lengkap seperti aslinya. Yang penting input dan output rangkaian terhubung dengan komponen yang diinginkan seperti contoh gambar 2.7. Setelah selesai, rangkaian siap disimulasikan dan lihatlah tampilan yang dihasilkan pada gambar simulasi.

Gambar 2.8 Jendela Edit Component

9.

Klik dua kali IC mikrokontroler pada rangkaian, akan muncul jendela EditComponent. Pada bagian ProgramFile, klik lambang folder, maka akan muncul jendela SelectFileName, pilih program LED.HEX yang telah dibuat dan berhasil di compile sebelumnya. Klik Open, lalu Klik OK.

10. Jalankan simulasi rangkaian dengan cara menekan tombol Play pada bagian sudut kiri bawah. 11. Jika LED pada rangkaian berkedap-kedip, maka berarti rangkaian anda telah berhasil disimulasikan.

4. MEMBUAT SISTEM MINIMUM DENGAN SOFTWARE EAGLE

3.1 Pengenalan

Pada bab ini akan dijelaskan bagaimana menggambar PCB menggunakan software EAGLE v.5.11.0 dari CADSoft. Software ini gratis dapat Anda download pada situs http://www.cadsoft.de, setelah Anda mendownload program Eagle ini silahkan Anda install dan ikuti petunjuk penginstalannya. Keunggulan software ini, Anda dapat menggambar skema rangkaian dengan banyak pilihan komponen elektronika dan dapat langsung mengkonvertnya kedalam Layout PCB dengan mudah

3.2. Instalasi

1. Membuat Schematic. Pilih file-new-schematics

Kemudian akan tampil area kerja untuk membuat skematik

Membuat pcb system minimum atmega 16 dan converter ttl ke rs232

menambahkan komponen yang digunakan dengan menekan toolbar ADD pada samping kiri.

Pada menu ADD komponen kita dapat mencari komponen yang akan kita gunakan dengan mencari berdasarkan list yang ada atau dengan men-Search pada kolom search, misalnya kita mencari resistor dengan cukup mengetikkan pada kolom search.

- Menambahkan frame untuk schematics. Pilih toolbar ADD- Pilih list FRAMES Pilih A4L-LOC Menambahkan komponen komponen untuk Membuat pcb system minimum atmega 16 dan converter ttl ke rs232
Untuk mempermudah pembuatan skematik alat ini kita bagi menjadi beberapa blok

1. 2. 3. 4.

Blok power supply Blok system minimum Blok rangkaian led Blok rs232.

Membuat blok power supply

Pada toolbar add,ambil dulu komponen komponen yang dipakai

Mengambil T blok 2 pin Add-con ptr 500- ak300 2 Mengambil DIODE ADD-discrete-diode 7.5 Mengambil elco ADD-DISCRETE-ELC 5 Mengambil regulator 5 v ADD-VREG-78MXXS Mengambil resistor Pada kotak search ketik resistor, kemudian pilih R EU-R EU 0207 2V Mengambil LED Pada kotak search ketik LED, kemudian pilih LED-LED3MM Menambahkan VCC dan GND Pada kotak serch ketik vcc kemudian pilih Supply1-vcc Pada kotak search ketik gnd kemudian pilih Supply1-gnd

Perlu diketahui bahwa dalam menggambar pin Power (VCC, GND dll) tidak harus dihubungkan satu dengan yang lainnya menggunakan sebuah net. Karena pada akhirnya nanti, dalam Board Editor net-net atau pin-pin yang memiliki nama sama secara otomatis dianggap terhubung Mengaktifkan pin symbol skematik pada area kerja Pilih Toolbar DISPLAY- PINS-OK

Mengubungkan component menggunakan NET

Hubung semua komponen dengan menggunakan NET.

DELETE COMPONENT Pilih toolbar delete, kemudian klik di komponen yang akan didelete

Jika sudah selesai membuat blok power supply kita lanjut dengan blok selanjutnya

MEMBUAT BLOK SISTEM MINIMUM

Pada toolbar add,ambil dulu komponen komponen yang dipakai

Mengambil ATMEGA16

Add-ATMEL-MEGA16 P Mengambil XTAL ADD-CRSTAL-CRYSTAL-CRYSTAL HC49S Mengambil c 22pF ADD-DISCRETE-CAP 2,5 Mengambil c 100nF ADD-discrete- cap 5 Mengambil resistor Pada kotak search ketik resistor, kemudian pilih R EU-R EU 0207 7V Mengambil header 5pin PINHEAD-PINHD1X5 Menambahkan VCC dan GND Pada kotak serch ketik vcc kemudian pilih Supply1-vcc Pada kotak search ketik gnd kemudian pilih Supply1-gnd Kemudian hubungkan semua component tersebut menggunakan tombol NET Menyambungkan component dengan menggunakan name. Contoh untuk pin reset.

Semua komponen yang dihubungkan dengan name yang sama, maka pada editor board semuanya akan tersambunng.

MEMBUAT BLOK RANGKAIAN LED

Pada toolbar add,ambil dulu komponen komponen yang dipakai

Mengambil resistor Pada kotak search ketik resistor, kemudian pilih R EU-R EU 0207 7V

Mengambil LED ADD-LED-LED3MM

Menghubungkan component menggunakan BUS 1.KLIK button BUS 2. letakan bus pada area kerja schematic

3. Memberi nama BUS tersebut dengan menggunakan tombol name - klik name - klik pada BUS kemudian beri nama, missal LED[0..7]

Setelah itu hubungkan semua component ke bus dengan menyesuaikan nama komponennya.

Menampilkan name pada bus dengan mengklik LABEL pada component yang ingin ditampilkan namanya Hubungkan semua komponen pada blok rangkaian LED.

kemudian klik

Membuat blok rangkaian rs 232

Pada toolbar add,ambil dulu komponen komponen yang dipakai

Mengambil elco 10 uf ADD-DISCRETE-ELC2.5L Mengambil ic max232 Pada kotak search ketik max232, kemudian pilih Maxim-max232

Mengambil db9 female pcb Consubd- f09 hp

Kemudian hubungkan semua komponen tersebut.

MENGUBAH DARI SKEMATIK KE BOARD PCB

Setelah beres membuat skematik, cara membuat board pcb nya adalah dengan mengklik

Setelah itu component akan tampak , kemudian kita rapihkan dengan cara memindahkan komponen komponen tersebut

ke area kerja menggunakan tombol move

Rapihkan komponen komponen tersebut seperti gambar dibawah ini

Fungsi tombol route dan ripup Tombol route berfungsi untuk merouting manual Tombol rip up berfungsi untuk mengmbalikan wire yang sudah di routing.

MENGGUNAKAN FASILITAS AUTOROUTE

KLIK TOMBOL AUTO KEMUDIAN AKAN MUNCUL WINDOW. KEMUDIAN LAKUKAN PENGATURAN

Membuat ground PCB

Blok area kerja pcb menggunakan tombol polygon Kemudian klik ratsnet Mengatur jarak antara gnd dengan jalur sinyal Blok semua area kerja pcb dengan menggunakn group
Kemudian masuk change-isolate-0.05 Kemudian klik kanan.

Klik tombol name pada gnd pcb kemudian ketik gnd Nantinya jalur gnd component dengan jalur gnd pcb akan nyambung.

MENCETAK PCB

PILIH FILE-PRINT

Untuk mengatur margin masuk ke page

You might also like