Anda di halaman 1dari 20

Pengenalan

CodeVisionAVR
Hendawan Soebhakti
Oktober 2009

Sub Pokok Bahasan

Pengenalan CodeVision
Menampilkan Data Ke Port Output
Membaca Data Dari Port Input

CodeVisionAVR C Compiler

CodeVisionAVR C Compiler adalah software yang


digunakan untuk membuat program mikrokontroler AVR
dalam bahasa C.

Program tersebut kemudian diterjemahkan oleh


CodeVisionAVR C menjadi kode heksadesimal yang akan
didownload ke dalam chip mikrokontroler AVR.

Memulai Project
1. Start menu, Program File dan pilih CodeVisionAVR C Compiler

2. Klik Yes untuk menggunakan CodeWizardAVR

Memulai Project
3. Pada CodeWizardAVR pilih menu Chip dan pilih menu pilihan
ATmega8535L serta pilih frekuensi Clock sebesar 11,059200 MHz.

Pada CodeWizardAVR kita bisa


melakukan setting terhadap fitur-fitur
yang disediakan seperti Timer, USART,
ADC dan yang lainnya.

File yang dihasilkan dari setting


CodeWizardAVR ini akan dimasukkan
(included) ke source program secara
otomatis.

Dengan CodeWizzardAVR pekerjaan


programmer menjadi lebih mudah
karena tidak perlu membuat sendiri
program untuk mengaktifkan fitur-fitur
AVR.
5

Memulai Project
4. Masih pada CodeWizardAVR, pilih menu Ports, kemudian setting Port A
sebagai output dengan output value 0.

Memulai Project
5. Setelah selesai melakukan setting maka klik menu File->Generate, Save and Exit.

6. Simpan dengan nama file sesuai keinginan anda.

Memulai Project
7. Selanjutnya anda bisa membuat program pada editor yang sudah disediakan.

Setting Programmer
Setelah selesai membuat program, anda harus melakukan setting programmer untuk
memilih jenis AVR Chip Programmer yang anda gunakan untuk mendownload program ke
mikrokontroler. Ikuti langkah-langkah berikut :
1. Hubungkan programmer dengan komputer dan pastikan koneksinya sudah benar.
2. Pastikan mikrokontroler sudah terpasang dengan benar.
3. Nyalakan power supply pada programmer anda.
4. Klik menu Settings->Programmer kemudian pilih
jenis chip programmer yang anda gunakan.
Pastikan juga setting port komputer sudah benar
sesuai dengan koneksi antara komputer dan programmer.

Mengkompilasi Project
Untuk menghasilkan file hex yang nantinya akan didownload ke mikrokontroler, maka
sebelumnya anda harus mengkompilasi project yang anda buat.
Hal ini dimaksudkan untuk mengetahui apakah program yang anda buat sudah benar
sesuai syntax bahasa C atau belum.

10

Mengkompilasi Project
Klik menu Project->Configure,
kemudian pilih Program the Chip.
Perhatian !
Pastikan Chip Programming Options
pada pilihan No Protection.
Jangan mengubah setting yang lain
jika anda belum paham benar fungsi
setting tersebut.
Setelah selesai klik OK.

11

Mengkompilasi Project
Klik menu Project->Make untuk mengkompilasi program.
Jika program anda sudah benar, maka klik Program untuk memulai proses
download ke mikrokontroler.
Namun jika masih terdapat kesalahan pada program, anda harus memperbaikinya
terlebih dahulu.
Tunggu hingga proses download selesai.

12

Setting Port
Setiap port ATMega8535 terdiri dari 3 register I/O yaitu DDRx, Portx dan PINx.
DDRx (Data Direction Register)
Register DDRx digunakan untuk memilih arah pin.
Jika DDRx = 1 maka Pxn sebagai pin output
Jika DDRx = 0 maka Pxn sebagai input.
Portx (Port Data Register)
Register Portx digunakan untuk 2 keperluan yaitu untuk jalur output atau untuk
mengaktifkan resistor pullup.
1. Portx berfungsi sebagai output jika DDRx = 1 maka :
Portxn = 1 maka pin Pxn akan berlogika high.
Portxn = 0 maka pin Pxn akan berlogika low.
2. Portx berfungsi untuk mengaktifkan resistor pullup jika DDRx = 0 maka :
Portxn = 1 maka pin Pxn sebagai pin input dengan resistor pull up.
Portxn = 0 maka pin Pxn sebagai output tanpa resistor pull up.

13

Menampilkan Data Ke Port Output


Contoh 1 : LED ON/OFF
Pada percobaan ini, kita akan membuat program untuk menampilkan data 0xFF ke
PortA selama 1 detik, kemudian data pada PortA tersebut berubah menjadi 0x00
selama 1 detik berikutnya. Demikian siklus berulang-ulang

14

Menampilkan Data Ke Port Output


Pada CodeWizard, setting mode Port bisa dilakukan dengan memilih bit Data
Direction dan Pullup/Output Value pada menu Ports

15

Menampilkan Data Ke Port Output


#include <mega8535.h>
#include <delay.h>
void main(void)
{
.
.
.
while (1)
{
// Place your code here
PORTA=0xFF;
delay_ms(1000);
PORTA=0x00;
delay_ms(1000);
};
}

//Keluarkan data 0xFF ke PORTA


//Delay 1S
//Keluarkan 0x00 ke PORTA
//Delay 1S

16

Menampilkan Data Ke Port Output


Contoh 2 : Data Increment
Pada percobaan ini, kita akan membuat program untuk menampilkan data
pada PortA yang naik satu persatu (increment) mulai dari 0x00 sampai
0xFF dengan interval 1 detik
#include <mega8535.h>
#include <delay.h>
// Declare your global variables here
void main(void)
{
.
.
while (1)
{
// Place your code here
unsigned char x;
//Mendefinisikan variable x
x++;
//x=x+1 kalau ingin dikurangi gunakan x-PORTA=x;
//Keluarkan x ke PORTA
delay_ms(1000);
//Delay 1S
};
17
}

Membaca Data Dari Port Input


Contoh 1 : Membaca Data PortB
Pada contoh ini, kita akan membuat program untuk membaca data dari Port
B dan menampilkan data tersebut ke PortA

18

Membaca Data Dari Port Input


#include <mega8535.h>
// Declare your global variables here
void main(void)
{
.
.
.
while (1)
{
// Place your code here
PORTA=PINB;
};
}

19

Membaca Data Dari Port Input


Contoh 2 : Membaca Data Per Bit Pada PinB
Pada percobaan ini, kita akan membuat program untuk membaca data dari PinB.0 dan PinB.1
Jika PinB.0 berlogika 0 maka PortA.0 dan PortA.1 akan berlogika 0.
Jika PinB.1 berlogika 0 maka data pada PortA adalah 0xFF.
#include <mega8535.h>
// Declare your global variables here
void main(void)
{
.
.
.
while (1)
{
// Place your code here
if(PINB.0==0){PORTA.0=0;PORTA.1=0;}
if(PINB.1==0)PORTA=0xFF;
};
}
20

Anda mungkin juga menyukai