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
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 :
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
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
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
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
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
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)
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
20. Untuk mengeksekusi program, double klik pada ATMega128 lalu pada Program File
cari file job1.hex, OK
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
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.
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
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
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.
Top Related