CodeVisionAVR
CodeVisionAVR adalah salah satu Software yang digunakan
untuk memprogram AVR. CodeVisionAVR sangat mudah untuk digunakan, tinggal
download kedalam IC yang akan diberi program. Kenapa sangat mudah digunakan
karena CodeVision AVR ini sendiri sudah memiliki User Interface yang lumayan
bagus sehingga memudahkan penggunanya, selain itu sendiri CodeVision AVR juga mempunyai banyak
sekali fitur-fitur yang memang dikhususkan untuk pemrograman AVR.
CodeVisionAVR pada dasarnya merupakan perangkat lunak
pemrograman microcontroller keluarga AVR berbasis bahasa C. Ada tiga komponen
penting yang telah diintegrasikan dalam perangkat lunak ini: Compiler C, IDE
dan Program generator.
Khusus untuk library fungsi, disamping library standar
(seperti fungsi-fungsi matematik, manipulasi String, pengaksesan memori dan
sebagainya), CodeVisionAVR juga menyediakan fungsi-fungsi tambahan yang sangat
bermanfaat dalam pemrograman antarmuka AVR dengan perangkat luar yang umum
digunakan dalam aplikasi kontrol. Beberapa fungsi library yang penting
diantaranya adalah fungsi-fungsi untuk pengaksesan LCD, komunikasi I2C, IC RTC
(Real time Clock), sensor suhu LM75, SPI (Serial Peripheral Interface) dan lain
sebagainya.
Disamping library standar C, CodeVisionAVR C compiler
memiliki librari lain untuk:
- Modul LCD Alpanumerik
- Delays
- Protokol semikonduktor Maxim/Dallas
- Dan lainnya
CodeVisionAVR juga memiliki CodeWizardAVR sebagaki
generator program otomatis, yang memungkinkan kita untuk menulis, segala bentuk
pengaturan Chip dalam waktu singkat, dan semua kode yang dibutuhkan untuk
mengimplementasikan fungsi-fungsi seperti:
Pengaturan akses External Memory
Untuk chip-chip AVR yang memungkinkan koneksi memori
eksternal SRAM, dapat juga mengatur ukuran memori dan wait state (tahap tunggu)
dari memori ketika memori tersebut diakses.
Identifikasi chip reset source
Adalah suatu layanan dimana kita dapat membuat kode
secara otomatis yang dapat mengidentifikasi kondisi yang menyebabkan chip di
reset.
Inisialisasi port input/output
Pengaturan port-port yang kan dijadikan gerbang
masukan dan keluaran dapat secara otomatis digenerate codenya. Yang kita
lakukan hanya memilih port-port yang akan digunakan sebagai input atau output.
Inisialisasi Interupsi external
Pengaturan interupsi eksternal yang nantinya akan
digunakan untuk menginterupsi program utama
Inisialisasi timers/counters
Pengaturan timers yang berfungsi untuk mengatur
frekwensi yang nantinya digunakan pada interupsi.
Inisialisasi timer watchdog
Pengaturan timers yang berfungsi untuk mengatur
frekwensi yang nantinya digunakan pada interupsi, sehingga interupsi akan
dilayani oleh suatu fungsi wdt_timeout_isr .
Inisialisasi UART(USART) dan komunuikasi serial
Pengaturan komunikasi serial sebagai penerima atau
pengirim data.
Inisialisasi komparasi analog
Pengaturan yang berkaitan dengan masukan data yang
digunakan dalam aplikasi yang membutuhkan komparasi pada ADC nya.
Inisialisasi ADC
Pengaturan ADC(Analog-Digital Converter) yang
berfungsi untuk merubah format analog menjadi format digital untuk diolah lebih
lanjut.
Inisialisasi antarmuka SPI
Pengaturan chip yang berkaitan dengan Clock rate,
Clock Phase, dan lainnya.
Inisialisasi antarmuka Two Wire BUS
Pengaturan Chip yang berhubungan dengan pola jalur
komunikasi antara register yang terdapat pada chip AVR.
Inisialisasi antarmuka CAN
Pengaturan chip yang lebih kompleks, yang dapat
mengatur interupsi, transmisi data, timers, dan lainnya.
Inisialisasi sensor temperatur, thermometer, dan
lainnya
Pengaturan yang berhubungan dengan sensor temperatur
one wire bus, memiliki fungsi-fungsi yang ada pada librari CodeVisionAVR.
Inisialisasi one wire bus
Pengaturan yang berhubungan dengan sensor temperatur
yang memiliki fungsi-fungsi yang ada pada librari CodeVisionAVR. Seperti Maxim/Dallas
Semiconductor.
Inisialisasi modul LCD
Pengaturan port-port yang kan digunakan sebagai
penghubung dengan LCD alphanumerik.
Contoh cara kerja sebelum melakukan pemograman di AVR,
dimana contoh disini adalah contoh pengaturan program agar mikrokontroler dapat
berkomunikasi dengan komputer:
a. Memilih project baru dan melakukan penyetingan
komponen yang digunakan pada board.
b. Pengaturan IC/Chip, pada chip yang kita harus
dilakukan adalah IC apa yang kita gunakan, dalam
hal ini ATMEGA8535l dengan Clock 16 MHz. Clock ini
harus di atur dengan ukuran 16 MHz, karena
pada komponen oksilator yang digunakan sebesar 16
MHz.
c. Pengaturan ADC, pada ADC ini ada beberapa pilihan
yang harus dipilih. diantaranya ADC Enable di
check list(v), Use 8 bit di check list(v), high speed
di check list (v) dan Volt Ref dipilih ‘AVCC PIN’.
AVCC PIN berguna sebagai referensi tegangan pada ADC
untuk nilainya sebesar 5 volt.
d. Pengaturan USART, usart ini yang nantinya
menghubungkan rangkaian mikrokontroler dengan PC
(komputer). Langkah-langkah yang dilakukan dengan
adanya pilihan Receiver di check list(v) dan
Transmitter di check list(v). Pengaturan receiver
berfungsi apakah serial itu sebagai penerima
data, sedangkan transmitter berfungsi serial bisa
digunakan sebagai pengiriman data
Untuk memudahkan pengembangan program aplikasi,
CodeVisionAVR juga dilengkapi IDE yang sangat user friendly . Selain menu-menu pilihan yang umum
dijumpai pada setiap perangkat lunak berbasis Windows, CodeVisionAVR ini telah mengintegrasikan
perangkat lunak downloader (in system programmer) yang dapat digunakan untuk
mentransfer kode mesin hasil kompilasi kedalam sistem memori microcontroller
AVR yang sedang deprogram.
Integrated Development Environtment (IDE) telah diadaptasikan
pada chip AVR yaitu In-System Programmer software, memungkinkan programmer
untuk mentransfer program ke chip mikrokontroler secara otomatis setelah proses
assembly/kompilasi berhasil. In-System Programmer software didesign untuk
bekerja dan dapat berjalan dengan perangkat lunak lain seperti AVR Dragon,
AVRISP, Atmel STK500, dan lain sebagainya.
Dalam kaitannya dengan pemrograman microcontroller,
Tak pelak lagi bahasa C saat ini mulai menggeser penggunaan bahasa aras rendah
assembler. Penggunaan bahasa C akan sangat efisien terutama untuk program
microcontroller yang berukuran relatif besar. Dibandingkan dengan bahasa
assembler, penggunaan bahasa C dalam pemrograman memiliki beberapa kelebihan
berikut: Mempercepat waktu pengembangan, bersifat modular dan terstruktur,
sedangkan kelemahannya adalah kode program hasil kompilasi akan relative lebih
besar (dan sebagai konsekuensinya hal ini terkadang akan mengurangi kecepatan
eksekusi).
Khusus pada microcontroller AVR, untuk mereduksi
konsekuensi negative diatas, Perusahaan Atmel merancang sedemikian sehingga
arsitektur AVR ini efisien dalam mendekode serta mengeksekusi
instruksi-instruksi yang umum dibangkitkan oleh compiler C (Dalam kenyataannya,
pengembangan arsitektur AVR ini tidak dilakukan sendiri oleh perusahaan Atmel
tetapi ada kerja sama dengan salah satu vendor pemasok compiler C untuk
microcontroller tersebut, yaituI ARC).
Seperti halnya compiler C untuk sistem microprocessor,
di pasaran ada beberapa varian compiler C untuk memprogram sistem
microcontroller AVR yang dapat dijumpai .
Dengan beberapa kelebihan yang dimilikinya, saat ini
CodeVisionAVR produk Perusahaan Pavel Haiduc merupakan compiler C yang relative
banyak digunakan dibandingkan compiler-compiler C lainnya. Bahasa C telah dikritisi secara meluas, dan
banyak orang dengan cepat menemukan masalahnya. Tapi sebagai bahasa yang telah
hadir, C tetap tak tersentuh. CodeVisionAVR adalah salah satu yang memanfaatkan
keunggulan C dalam hal pemrograman mikrokontroler.
seperti ini gambar tampilan setelah codevision AVR dibuka
Tidak ada komentar:
Posting Komentar