Info-Technology
Put your Code Adsense links Here

Bermain mikrokontroler memang sangat menyenangkan. Memprogram mikrokontroler tidak sesulit yang dibayangkan. Banyak jalan menuju roma, banyak jalan juga cara memprogram mikrokontroler. Diantaranya ada yang menggunakan bahasa Asambly (sussaahh,,,,), bahasa C (lebih mudah), serta bahasa basic (mudah bangett.. ^^). Bahasa Basic ini yang paling mudah karena istilahnya sangat manusiawi. Bahasa C setingkat lebih sulit dabandingkan dengan bahasa basic, dan terakhir, Asambly merupakan bahasa pemrogrman yang kurang manusiawi. Hehehe..
Oke, yUkz kita belajar memporgram mikrokontroler menggunakan bahasa C.
Ada banyak program untuk menuliskan bahasa C ini, diantaranya CodevisionAVR. Kenapa penulis menggunakan CodevisionAVR, karena penulis merasa lebih mudah digunakan terutama untuk pemula.

Silakan menginstal Codevision terlebih dahulu, atau unduh disini bagi yang belum punya. Setelah instalasi selesai, jalankan program CodevisionAVR.
  1. Menjalankan CodevisionAVR
 
Gambar 1
  1. Pilih file – new, kemudian muncul box dialog, pilih project.
 
Gambar 2

Gambar 3
  1. Kita diberi pilihan, apakah menggunakan wizard atau tidak. Jika iya, pilih yes.
 
Gambar 4
  1. Akan mucul box dialog lagi, silakan pilih chip yang akan digunakan. Misalnya ATmega8535.
 
Gambar 5
  1. Buka tab Ports. Pada bagian ini, kita diberi kesempatan untuk mengatur ports-ports yang akan digunakan. Pilih PortC sebagai output.
 
Gambar 6
  1. Jika sudah, klik file-generate,save and Exit
 
Gambar 7
  1. Proses menyimpan file dilakukan sebanyak 3 kali, masing-masing  menghasilkan ekstensi *.C , *.prj, dan *.cwp.  Simpan dengan nama file ledblink.
 
Gambar 8

 
Gambar 9

 
Gambar 10
  1. Setelah proses meyimpan file selesai, mucul seperti dibawah ini. Disinilah kita akan menuliskan program.
 
Gambar 11

1. OKs, berikut listing program yang kita buat, boleh dimodifikasi.

/***************************************************** This program was   produced by the
CodeWizardAVR V2.04.4a   Evaluation
Automatic Program   Generator
© Copyright 1998-2009   Pavel Haiduc, HP InfoTech s.r.l.
Project :
Version :
Date    : 20/12/2009
Author  : Freeware, for evaluation and   non-commercial use only
Company :
Comments:
Chip type               : ATmega8535
Program type            : Application
AVR Core Clock   frequency: 8,000000 MHz
Memory model            : Small
External RAM size       : 0
Data Stack size         : 128
*****************************************************/
#include   
#include
// Declare your global   variables here
void   main(void)
{
// Declare your local   variables here
// Input/Output Ports   initialization
// Port A   initialization
// Func7=In Func6=In   Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T   State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B   initialization
// Func7=In Func6=In   Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T   State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;
// Port C   initialization
// Func7=In Func6=In   Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T   State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=Out Func6=Out   Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
// State7=0 State6=0   State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTD=0x00;
DDRD=0xFF;
// Timer/Counter 0   initialization
// Clock source: System   Clock
// Clock value: Timer 0   Stopped
// Mode: Normal top=FFh
// OC0 output:   Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1   initialization
// Clock source: System   Clock
// Clock value: Timer1   Stopped
// Mode: Normal   top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on   Falling Edge
// Timer1 Overflow   Interrupt: Off
// Input Capture   Interrupt: Off
// Compare A Match   Interrupt: Off
// Compare B Match   Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2   initialization
// Clock source: System   Clock
// Clock value: Timer2   Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External   Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s)   Interrupt(s) initialization
TIMSK=0x00;
// Analog Comparator   initialization
// Analog Comparator:   Off
// Analog Comparator   Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
while   (1)
{
PORTD=0xFF;
delay_ms(1000);
PORTD=0x00;
delay_ms(1000);
};
}
  1. Selesai menuliskan program, selanjutnya kita meng compile untuk menghasilkan extensi *.hex
 
Gambar 12
  1. BIla kita mengcompile, ditempat menyimpan file akan ditemukan banyak file. Yang kita butuhkan untuk diload ke mikrokontroler adalah file berekstensi *.hex . file ini dapat ditemukan didalam folder exe.
 
Gambar 13

 
Gambar 14

Berikut ini rangkaian percobaan kita menggunakan software simulasi Proteus v7.1
 
Gambar 15

Demikian tutorial singkat belajar menggunakan CodevisionAVR. Apabila terdapat kesalahan maupun kurnag jelas, silakan mengirim pesan ke rulinur91@yahoo.com.

Semoga bermanfaat dan  Selamat Belajar!


Share Membuat program mikrokontroler menggunakan CodeVisionAVR Below:

Leave Comments

dofollow blog
You do not have a unique ID to comment? Use the option Name/URL, you can empty the URL box..
Adsense Links 125x125
previous previous