laporan mikroprosesor

19
PRAKTEK MIKROPROSESOR DAN INTERFACE JOBSHEET 4 PENGENALAN CODE VISION AVR DAN ISIS PROTEUS Disusun Oleh : Nama : Dyah Risma Wardani NIM : 3.33.12.0.09 Kelas : TK 2A PROGRAM STUDI TEKNIK TELEKOMUNIKASI

Upload: dyah-rizma-wardani

Post on 29-Dec-2015

127 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: laporan mikroprosesor

PRAKTEK MIKROPROSESOR DAN INTERFACE

JOBSHEET 4

PENGENALAN CODE VISION AVR DAN ISIS PROTEUS

Disusun Oleh :

Nama : Dyah Risma Wardani

NIM : 3.33.12.0.09

Kelas : TK 2A

PROGRAM STUDI TEKNIK TELEKOMUNIKASI

JURUSAN TEKNIK ELEKTRO

POLITEKNK NEGERI SEMARANG

2014

Page 2: laporan mikroprosesor

PRAKTIKUM 4

PENGENALAN CODE VISION AVR DAN ISIS PROT

A. Tujuan

1. Mahasiswa dapat mengenal program aplikasi mikrokontroler dan interface Code

Vision AVR dan ISIS Proteus

2. Mahasiswa dapat mendesain skema rangkaian mikrokontroler dan interface untuk

menjalankan counter

3. Mahasiswa dapat menjalankan program dan mengeksekusinya

4. Mahasiswa dapat menjelaskan program yang dituliskan pada aplikasi Code Vision

AVR

B. Pendahuluan

CodeVisionAVR merupakan software aplikasi mikrokontroler berbasis bahasa C

dan digunakan untuk membuat program mikrokontroler AVR. Terdapat 3 komponen

penting yang telah diintegrasikan dalam Code Vision AVR yaitu Compiler C, IDE dan

Program generator. CodeVisionAVR dapat mengimplematasikan hampir semua interuksi

bahasa C sesuai dengan arsitektur AVR, bahkan terdapat beberapa keunggulan tambahan

untuk memenuhi keunggulan spesifikasi CodeVisionAVR yaitu hasil kompilasi studio

debugger dari ATMEL.

Integrated Development Environtment (IDE) telah diadaptasikan pada chip AVR

yaitu In-System Programmer software yang memungkinkan programmer untuk

mentransfer program ke chip mikrokontroler secara otomatis setelah proses kompilasi

berhasil. In-System Programmer software didesign untuk dapat bekerja dengan

perangkat lunak lain seperti AVR Dragon, AVRISP, Atmel STK500, dan lain

sebagainya.

Codewizard yang terdapat pada Code Vision AVR berperan untuk memudahkan

proses inisaialisasi register dalam mikrokontroler dan untuk membentuk fungsi – fungsi

interupt.

ISIS Proteus merupakan software simulasi rangkaian elektronik yang berfungsi

untuk mendesain rangakian dan dilengkapi dengan simulasi PSpice pada level skematik.

Fitur – fitur yang terdapat dalam Proteus adalah sebagai berikut :

Page 3: laporan mikroprosesor

1. Memiliki kemampuan untuk mensimulasikan hasil rancangan baik digital maupun

analog maupun gabungan keduanya.

2. Mendukung simulasi yang menarik dan simulasi secara grafis.

3. Mendukung simulasi berbagai jenis microcontroller seperti PIC 8051 series.

4. Memiliki model-model peripheral yang interactive seperti LED, tampilan LCD,

RS232, dan berbagai jenis library lainnya.

5. Mendukung instrument-instrument virtual seperti voltmeter, ammeter, oscciloscope,

logic analyser, dan lain-lainnya.

6. Memiliki kemampuan menampilkan berbagi jenis analisis secara grafis seperti

transient, frekuensi, noise, distorsi, AC dan DC, dan lain-lainnya.

7. Mendukung berbagai jenis komponen-komponen analog.

8. Mendukung open architecture sehingga kita bisa memasukkan program seperti C++

untuk keperluan simulasi.

C. Langkah Percobaan

1. Buat desain skema seperti pada gambar dengan menggunakan ISIS Proteus dan

simpan hasilnya

PE0/RXD0/PDI2

PE1/TXD0/PDO3

PE2/XCK0/AIN04

PE3/OC3A/AIN15

PE4/OC3B/INT46

PE5/OC3C/INT57

PE6/T3/INT68

PE7/ICP3/INT79

PB0/SS10

PB1/SCK11

PB2/MOSI12

PB3/MISO13

PB4/OC014

PB5/OC1A15

PB6/OC1B16

PB7/OC2/OC1C17

PG3/TOSC218

PG4/TOSC119

RESET20

XTAL223

XTAL124

PD0/SCL/INT025

PD1/SDA/INT126

PD2/RXD1/INT227

PD3/TXD1/INT328

PD4/ICP129

PD5/XCK130

PD6/T131

PD7/T232

PG0/WR33

PG1/RD34

PC0/A835

PC1/A936

PC2/A1037

PC3/A1138

PC4/A1239

PC5/A1340

PC6/A1441

PC7/A1542

PG2/ALE43

PA7/AD744

PA6/AD645

PA5/AD546

PA4/AD447

PA3/AD348

PA2/AD249

PA1/AD150

PA0/AD051

PF7/ADC7/TDI54

PF6/ADC6/TDO55

PF5/ADC5/TMS56

PF4/ADC4/TCK57

PF3/ADC358

PF2/ADC259

PF1/ADC160

PF0/ADC061

AREF62

AVCC64

PEN1

U1

ATMEGA128

X1

CRYSTALC11nF

C21nF

C310uF

R110k

D9LED-RED

D10LED-RED

D11LED-RED

D12LED-RED

D13LED-RED

D14LED-RED

D15LED-RED

D16LED-RED

Gambar Skema Rangkaian Mikrokontroler Percobaan 4

Page 4: laporan mikroprosesor

2. Untuk membuat skema rangkaian mikrokontroler diatas buka aplikasi ISIS Proteus,

lalu gunakan tool libraries untuk memilih komponen yang dibutuhkan

3. Pilih komponen yang dibutuhkan untuk membuat rangkaian mikrokontroler seperti

pada gambar, misalnya ATMega128

4. Untuk menghubungkan setiap komponen tarik garis dari titik yang akan dihubungkan

ke komponen tujuan

Page 5: laporan mikroprosesor

5. Untuk memberi tegangan dan Ground pada rangkaian digunakan tool terminal mode

6. Buat program dengan bahasa C untuk job1 (counter up 8 bit) menggunakan Code

Vision AVR

7. Buka program Code Vision AVR, klik File > New > Project > OK

8. Ketika muncul konfirmasi Code Wizard AVR klik Yes

Page 6: laporan mikroprosesor

9. Pilih tipe chip AVR yang akan digunakan, OK

10. Setelah itu akan muncul menu CodeWizardAVR pilih Chip, pada Chip Setting >

ATmega128, isikan Clock > 11.059200

11. Pilih menu port, klik Port A dan klik semua bit menjadi out

12. Pada toolbar Program > Generate, Save and Exit

Page 7: laporan mikroprosesor

13. Simpan file ekstensi .c, .prj dan .cwp dalam satu folder dan dengan nama file yang

sama yaitu job1

Ekstensi .c Ekstensi .prj

Ekstensi .cwp

Page 8: laporan mikroprosesor

14. Masukkan #include <delay.h> di baris awal program dibawah #include

<mega128.h>

15. Buat program job1 (counter up 8 bit) untuk menyalakan LED dari 00 s.d FF secara

berulang, simpan hasilnya

16. Lakukan compile, Project > Compile (F9)

Page 9: laporan mikroprosesor

17. Lakukan Build, Project > Build (Shift+F9)

18. Pastikan tidak ada error saat melakukan compile dan build, jika masih ada error dan

warning maka masih ada kesalahan pada program yang dibuat.

19. Cek folder Exe pada folder lokasi penyimpanan program Code Vision AVR yang

dibuat, pastikan ada file job1.hex

Page 10: laporan mikroprosesor

20. Untuk mengeksekusi program, double klik pada ATMega128 lalu pada Program File

cari file job1.hex, OK

Page 11: laporan mikroprosesor

21. Jalankan program dengan klik icon play pada pojok kiri bawah

22. Ulangi dengan membuat program job 2 (counter down 8 bit)

23. Ulangi dengan membuat program job 3 (counter up/down 8 bit)

24. Lakukan eksekusi pada job 2 dan job 3

D. Hasil Percobaan

1. Job1, menyalakan LED dari 00 s.d FF secara berulang

Ketika program dieksekusi LED akan menyala dimulai dari LED 1 sampai LED 8

dimana nyala LED berurutan secara biner dari 00 sampai FF

2. Job2, menyalakan LED dari FF s.d 00 secara berulang

Ketika program dieksekusi LED akan menyala dimulai dari LED 8 sampai LED 1

dimana nyala LED berurutan secara biner dari FF sampai 00

3. Job3, menyalakan LED dari 00 s.d FF kemudian FF ke 00 secara berulang

Ketika program dieksekusi LED akan menyala berurutan secara biner dari 00 sampai

FF yang dimulai dari LED 1 sampai LED 8 kemudian nyala LED akan membalik

berurutan secara biner dari FF sampai 00 dari LED 8 sampai LED 1.

E. Analisis

Program job1, job2 dan job3 merupakan rangkaian counter dimana LED akan berurutan

secara biner sesuai dengan syarat perulangan yang dijalankan pada setiap program

sehingga digunakan perintah perulangan for di dalam while.

Perulangan for merupakan struktur kendali di dalam program yang akan menghasilkan

beberapa kali perulangan dengan jumlah pengulangan yang dapat ditentukan sebelum

program dieksekusi. Perulangan akan terus berjalan selama syarat masih terpenuhi dan

perulangan akan berhenti ketika syarat sudah tidak terpenuhi lagi. Argumen dari

pernyataan for terdiri dari tiga bagian yaitu inisialisasi, syarat perulangan, perubah nilai

pencacah yang setiap bagiannya dipisahkan oleh tanda titik koma (;)

Inisialisasi yaitu bagian untuk memberikan nilai awal bagi variabel-variabel

tertentu, terutama bagi variabel pencacah

Page 12: laporan mikroprosesor

Syarat perulangan yang memegang kendali terhadap pengulangan karena syarat

pengulangan menentukan perulangan terus berjalan atau berhenti

Perubahan nilai pencacah yang mengatur perubahan nilai variabel pencacah. Sifat

perubahan nilai variable pencacah dapat berupa kenaikan ataupun penurunan nilai

pencacah.

Pengulangan while befungsi untuk melooping program yang berjalan agar tidak

berhenti ketika syarat perulangan for sudah tidak terpenuhi lagi. Perbedaan pada

setiap program terletak pada nyala LED dan syarat perulangannya. Delay yang ada

pada setiap program menentukan kecepatan jalannya program, semakin besar nilai

delay maka semakin lama program akan berjalan.

1. Job1 merupakan counter up 8 bit yang akan menyalakan LED dari 00 s.d FF secara berulang

Flowchart Job1

Program perulangan job1 :

for (i=0;i<0xFF;i++)

Dalam program job1 dinyatakan bahwa

i=0 merupakan inisialisasi yang menyatakan nyala LED dimulai dari 0

i<0xFF merupakan syarat perulangan yang menyatakan bahwa perulangan terus

berjalan selama i lebih kecil dari 0xFF

i++ adalah perubahan nilai pencacah yang bersifat pertambahan nilai pencacah.

Page 13: laporan mikroprosesor

Sehingga ketika program dieksekusi LED akan menyala dimulai dari LED 1 sampai

LED 8 dimana nyala LED berurutan secara biner dari 00 sampai FF dengan

perubahan kenaikan nilai pencacah.

2. Job2 merupakan counter down 8 bit yang akan menyalakan LED dari FF s.d 00

secara berulang sehingga nyala LED pada job2 merupakan kebalikan dari job 1.

Flowchart Job2

Program perulangan job2 :

for (i=0xFF;i>0;i--)

Dalam program job1 dinyatakan bahwa

i=0xFF merupakan inisialisasi yang menyatakan nyala LED dimulai dari 0xFF

i>0 merupakan syarat perulangan yang menyatakan bahwa perulangan terus

berjalan selama i lebih besar dari 0

i-- adalah perubahan nilai pencacah yang bersifat pengurangan nilai pencacah.

Sehingga ketika program dieksekusi LED akan menyala dimulai dari LED 8 sampai

LED 1 dimana nyala berurutan secara biner dari FF sampai 00 dengan perubahan

penurunan nilai pencacah.

3. Job3 merupakan counter up/down 8 bit yang akan menyalakan LED dari 00 s.d FF

kemudian bergantian dari FF s.d 00 secara berulang sehingga job3 merupakan

gabungan job1 dan job2. Ketika program dieksekusi LED akan menyala berurutan

Page 14: laporan mikroprosesor

Start

Set Register 00h

Tampilan LED lewat PORT A

Tambah 1

Apakah N Reg = FFh ?tidak

ya

Tampilan LED lewat PORT A

Kurang 1

Apakah N Reg = 00h ?tidak

Set Register FFh

ya

secara biner dari 00 sampai FF yang dimulai dari LED 1 sampai LED 8 kemudian

nyala LED akan membalik berurutan secara biner dari FF sampai 00 dari LED 8

sampai LED 1.

Flowchart Job3

Page 15: laporan mikroprosesor

F. Kesimpulan

1. CodeVisionAVR merupakan software berbasis bahasa C yang digunakan untuk

membuat program mikrokontroler AVR. Terdapat 3 komponen penting yang telah

diintegrasikan dalam Code Vision AVR yaitu Compiler C, IDE dan Program

generator. CodeVision AVR mempunyai suatu keunggulan dari compiler lain, yaitu adanya

codewizard. Codewizard yang terdapat pada Code Vision AVR berperan untuk

memudahkan proses inisaialisasi register dalam mikrokontroler dan untuk

membentuk fungsi – fungsi interupt.

2. Proteus adalah software yang digunakan untuk mendesain PCB yang dilengkapi

dengan simulasi pspice pada level skematik sebelum rangkaian skematik diupgrade

ke PCB. Proteus mengkombinasikan program ISIS untuk membuat skematik desain

rangkaian dengan program ARES untuk membuat layout PCB dari skematik yang

telah dibuat

3. Code Vision AVR dan ISIS Peoteus merupakan software aplikasi yang dapat

digunakan sebagai simulai untuk menjalankan program mikrokontroler dan interface.

Code Vision AVR digunakan untuk membuat program yang akan dijalankan pada

mikrokontroler, sementara ISIS Proteus merupakan software yang digunakan untuk

membuat rangkaian mikrokontroler. Eksekusi program mikrokontroler yang telah

dibuat dilakukan pada ISIS Proteus.