Read more
Bahasa Pemograman Basic menggunakan Bascom AVR
Ada banyak cara menuliskan program ke
mikrokontroler, salah satunya bahasa basic.
Alasan penggunaan bahasa ini adalah kemudahan dalam pemahaman pemograman dan
jika kita menggunakan compiler Bascom
AVR maka terasa mudah karena sudah dilengkapi dengan simulator.
1. Tipe Data
Tipe
data berhubungan dengan variable atau
konstanta yang akan menunjukkan daya tampung atau jangkauan dari
variable/konstanta tersebut. Tipe data pada Bascom
dapat dilihat pada tabel 3 :
Tabel
3.
Tipe data dan ukurannya (Afrie Setiawan : 2011)
Tipe Data
|
Ukuran (Byte)
|
Jangkauan
|
Bit
|
1/8
|
0
atau 1
|
Byte
|
1
|
0
s/d 255
|
Integer
|
2
|
-32.768
s/d 32.767
|
Word
|
2
|
0
s/d 65535
|
Long
|
4
|
-2147483648
s/d 2147483647
|
Single
|
4
|
1,5
x 10-45 s/d 3,4 x 1038
|
Double
|
8
|
5 x
10-324 s/d 1,7 x 10308
|
String
|
254
|
2. Variabel
Variabel
digunakan untuk menyimpan data sementara. Variabel diberi nama dan
dideklarasikan terlebih dahulu sebelum digunakan. Aturan pemberian nama
variable sebagai berikut :
a.
Harus dimulai dengan
menggunakan huruf
b.
Tidak boleh ada nama
variable yang sama pada lingkup yang sama.
c.
Maksimum 32 karakter.
d.
Tidak boleh ada spasi.
e.
Tidak boleh menggunakan
karakter-karakter khusus yang digunakan untuk operator.
Variable dapat
dideklarasikan dengan cara :
Dim <namaVariable> As <TipeData>
Contoh :
Dim
angka
As Integerà angka sebagai
variable dengan tipe integer
Dim
bilangan
As byteà bilangan
sebagai variable dengan tipe byte
Jika
bilangan variabel dideklarasikan dalam satu baris, maka dipisah dengan tanda
koma.
Contoh :
Dim angka As integer, bilangan As
byte
3. Konstanta
Berbeda
dengan variable, sebuah konstanta akan bernilai tetap. Sebelum digunakan,
konstanta dideklarasikan terlebih dahulu dengan cara sebagai berikut :
a.
Dim nama_konstanta As
Const nilai_konstanta
b.
Const nama_konstanta =
nilai_konstanta
Contoh
:
Dim pembagi As Const 23 ‘pembagi=23
Const pembagi = 23
4. Penulisan Bilangan
Pada
Bascom-AVR, bilangan kita tuliskan dalam 3 bentuk :
a.
Desimal ditulis biasa,
contoh 16
b.
Biner diawali dengan
&B, contoh : &B10001111
c.
Heksadesimal diawali
dengan &H, contoh : &H8F
5. Alias
Untuk
mempermudah pemograman, biasanya nama register
dalam mikrokontroler dibuatkan nama yang identik dengan hardware yang dibuat.
Contoh
:
LED_1 alias PORTC.0 Ã nama lain dari PORTC.0 adalah LED
SW_1
alias PINC.1 Ã nama lain dari PINC.1 adalah SW_1
6. Array
Array atau larik
merupakan sekumpulan variable dengan nama dan tipe yang sama, yang berbeda
indeks keanggotaannya. Cara mendeklarasikan array
sebagai berikut :
Dim
nama_array(jumlah-anggota) As
tipe_data
Contoh
:
Dim
Voltage (5) As byte Ã
variable voltage dengan tipe data byte mempunyai anggota 5.
Untuk mengakses Array dengan cara :
Voltage
(1) = 25 Ã
anggota pertama dari variable voltage diisi dengan bilangan 25.
PORTC
= voltage(1) Ã
PORTC diisi nilai anggota pertama dari variable voltage.
7. Operator
Bascom-AVR menyediakan
beberapa operator untuk pengolahan data, diantaranya operator aritmatik,
operator relasional dan operator logika.
a.
Operator
Aritmatik
Tabel
4.
Operator Aritmatik Bascom AVR(Afrie Setiawan : 2011)
Operator
|
Keterangan
|
+
|
Operasi
penjumlahan
|
-
|
Operasi
pengurangan
|
*
|
Operasi
perkalian
|
/
|
Operasi
pembagian
|
%
|
Operasi sisa
pembagian
|
b.
Operator
Relasional
Tabel
5.
Operator Relasional Bascom AVR(Afrie
Setiawan : 2011)
Operator
|
Keterangan
|
Contoh
|
=
|
Sama
dengan
|
A=B
|
<>
|
Tidak
sama dengan
|
A<>B
|
>
|
Lebih
besar dari
|
A>B
|
<
|
Lebih
kecil dari
|
A<B
|
>=
|
Lebih
besar atau sama dengan
|
A>=B
|
<=
|
Lebih
kecil atau sama dengan
|
A<=B
|
c.
Operator
Logika
Tabel
6.
Operator Relasional Bascom AVR(Afrie
Setiawan : 2011)
Operator
|
Keterangan
|
Contoh
|
AND
|
Operasi
AND
|
&B110 And
&B101 hasilnya &B100
|
OR
|
Operasi
OR
|
&B11001 Or
&B10111 hasilnya &B11111
|
NOT
|
Operasi
NOT
|
NOT &HFF
hasilnya &H00
|
XOR
|
Operasi
XOR
|
&B1001 Xor
&B0111 hasilnya &B1110
|
8. Struktur Pemilihan
a.
If – Then
Merupakan pernyataan untuk menguji apakah
kondisi bernilai benar atau salah untuk melakukan sebuah instruksi. Syntax penulisannya sebagai berikut :
If
<kondisi> Then
<perintah> (1
baris perintah)
If
<kondisi> Then (lebih
dari 1 perintah)
<Perintah
1>
<Perintah
2>
………………….
End
If
b.
If – Then – Else
Untuk keadaan dimana kedua kondisi
(benar maupun salah) tetap dikenai perintah. Syntax penulisannya sebagai berikut :
If
<kondisi> Then
<Perintah
1>
Else
<Perintah
2>
End
If
c.
If – Then – Elseif
Kita gunakan ketika
terdapat lebih dari satu pengujian kondisi. Syntax
penulisannya sebagai berikut :
If
<kondisi 1> Then
<Perintah
1>
Elseif
<kondisi 2> Then
<Perintah
2>
Elseif
<kondisi 3> Then
<perintah
3>
End
If
d.
Select – Case
Untuk menangani
pengujian kondisi yang banyak, maka akan lebih sederhana menggunakan Select – Case. Cara penulisannya :
Select
case
<variable>
Case 1 : <Perintah 1>
Case 2 : <Perintah 2>
End
Select
9. Struktur Perulangan
a.
For – Next
Perintah ini kita gunakan untuk
melaksanakan perintah secara berulang sesuai dengan jumlah dan tingkat
perulangannya. Syntax penulisannya
adalah :
For
<variable=nilai awal> To
<nilai_akhir> <step penambahan>
<pernyataan>
Next
b.
Do – Loop
Pernyataan ini untuk melakukan
perulangan selama kondisi terpenuhi. Syntax
penulisannya adalah :
Do
<pernyataan>
Loop
Jika perulangan yang dilakukan terbatas,
sesuai kondisi yang diinginkan, maka caranya sebagai berikut :
Do
<pernyataan>
Loop
Until <Kondisi>
c.
While – Wend
Bentuk perulangan ini
akan melakukan perulangan jika sebuah syarat kondisi terpenuhi. Syntax penulisannya adalah :
While <kondisi>
<perintah>
Wend
10. Struktur Lompatan
a.
Gosub
Perintah ini akan melakukan lompatan ke
label yang ditunjuk, biasanya untuk mengerjakan sebuah rutin perintah, kemudian
kembali lagi setelah rutin perintah tersebut selesai dikerjakan. Rutin yang
dibuat harus dituliskan perintah Return
pada akhir pernyataan.
b.
Goto
Perintah ini untuk melakukan lompatan ke
label untuk melakukan instruksi tanpa kembali lagi, sehingga tidak perlu Return.
c.
Exit
Untuk keluar secara langsung dari
perulangan Do-Loop, for-Next, While-Wend.
Syntax
penulisannya sebagai berikut :
EXIT FOR
(untuk perulangan For-Next) EXIT DO
(perulangan Do-Loop)
EXIT WHILE (perulangan
While-Wend) EXIT SUB (perulangan Sub
- Endsub)



0 Reviews
Silakan dikomentari