Bahasa C vs BASIC pada Mikrokontroler AVR

Terkadang kita dibuat bingung. Pas mau ngeprogram si mikro. Dikasih bahasa C atau Basic ? Pake C kurang faham, dengan Basic masih awam, hehe.. (nah itu masalahnya bro).

Bahasa C dengan compiler yang terkenal CodeVisionAVR (mikrokontroler AVR), sedangkan Basic dengan BASCOM-AVR nya memang yang paling banyak dipakai saat ini. Assembler ? gimana nasibnya ? Ya, beberapa masih ada yang pakai. Saya sendiri sudah lamaaaaa buanget gak pakai assembler. Rumit bin sulit alias njlimet..
Masing – masing tentu ada kelebihan dan kekurangannya. Namanya aja bikinan manusia. Tul gak bro ?
Ok, kita tengok sebentar bahasa C dengan CodeVisionAVR (CVAVR). Saya memakai versi 2.60.
ATmega8535 dengan freq 1 MHz.
#include <mega8535.h>
#include <alcd.h>
void main(void)
{
lcd_init(16);
lcd_clear();
lcd_putsf(“LCD Display”);
lcd_gotoxy(0,1);
lcd_putsf(“dengan CVAVR”);
while (1);      
}

Hasilnya :
Nah berikutnya dengan BASCOM-AVR :
$regfile = “m8535.dat”
$crystal = 1000000
Cls
Lcd “LCD Display”
Lowerline
Lcd “dg BASCOM-AVR”
End

Hasilnya pada simulasi Proteus :

Ok, kalau dilihat maka keduanya terlihat sama – sama praktis. Ringkas dan tidak panjang. Nah kalau dilihat hasil kompilasinya, untuk CVAVR memakan memori program (Flash PEROM) sekitar 6,2%. Dengan BASCOM-AVR memori yang terpakai malah cumin 5%.
Kalau program untuk LCD mungkin terlalu sederhana ya. Sekarang kita coba serial komunikasi. Dengan Baudrate 9600 bps (freq 8 MHz) :

#include <mega8535.h>
#include <stdio.h>
void main(void)
{
UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
UBRRH=0×00;
UBRRL=0×33;
printf(“Serial Comm dg CVAVR”);
while (1);      
}

Saya memanfaatkan CodeWizard-nya CVAVR, terlihat agak rumit kan ? sekarang kita lihat dengan BASCOM-AVR :

$regfile = “m8535.dat”
$crystal = 8000000
$baud = 9600
Print “Serial Comm dg BASCOM-AVR”
End

Lebih sederhana bukan ?
Akhirnya keputusan ditangan anda. Saya sendiri terkadang pakai C, tapi juga sering pakai Basic. Kalau mau gampang dipahami sih pakai Basic (BASCOM-AVR), walaupun untuk aplikasi yang membutuhkan kecepatan kerja yang tinggi saya sarankan pakai C saja.

This entry was posted in Mikrokontroler AVR. Bookmark the permalink.

2 Responses to Bahasa C vs BASIC pada Mikrokontroler AVR

  1. anotherorion says:

    belum sempet belajar bascom mas, selama ini make codevisionAVR terus, haha
    salam kenal njeh

  2. Manaf says:

    Wah lebih oke pake Code Vision dari pada bascom… walaupun njlimet tapi tingkat kerja yang tidak bisa diragukan

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>