Setelah memahami hardwarenya, untuk mendapatkan sesuai dengan apa yang kita inginkan tentunya kita harus meng-input data/perintah. Dalam hal ini, bahasa yang digunakan adalah bahasa C yang pada umumnya lebih mudah dibandingkan bahasa C terhadap ATmega seperti codeVision-AVR.Bagi yang belum paham sama sekali jangan khawatir,karena ini akan terlihat lebih mudah.
Mekanisme pemerogramannya sama dengan mikrokontroler pada umumnya,mulai dari menulis program/perintah (dengan bahasa C) , kemudian Menyusun/Compile dan terakhir Upload. Jika tidak ada kesalahan dalam programnya, maka proses upload akan lancar.
Struktur dasar
Sebuah program Arduino minimal terdiri dari 2 bagian:
Inisialisasi.
Inisialisasi merupakan proses mengatur hardware seperti port I/O, PWM, serial dan peripheral lain. Struktur ini ditulis diawal program. Sebagai contoh port I/O mempunyai beberapa fungsi: digital input, digital output, serial komunikasi dan PWM. Sebuah port hanya dapat berfungsi untuk 1 tujuan, jadi jika kita hendak menggunakan port tersebut sebagai digital output maka harus diinisialisasi terlebih dahulu sebagai port output. Inisialisasi menggunakan struktur setup(). Sebagai contoh:
void setup(){Serial.begin(9600);pinMode(buttonPin, INPUT);}
Program utama.
Setelah melakukan inisialisasi selanjutnya program yang dikerjakan adalah program utama, tergantung dari aplikasi yang dibuat, isi dari program utama berbeda antara satu program dengan program yang lain. Struktur yang digunakan adalah loop(). Sebagai contoh:
void loop(){}
Harap diperhatikan bahwa bahasa pemrograman Arduino (sebagaimana bahasa C) termasuk case sensitive, artinya huruf besar dengan huruf kecil akan dianggap berbeda.
Komentar digunakan untuk memberi keterangan pada program yang dibuat, sifatnya tidak wajib dan tidak akan berpengaruh pada jalannya program karena tidak ikut dieksekusi. Komentar dapat dibuat untuk 1 baris maupun lebih dari 1 baris, berikut ini caranya:
//komentar untuk 1 baris diawali dengan 2 garis miring.
/*komentar untuk lebih dari 1 baris diawali dengan tanda garis miring + asterisk atau bintang (/*)
Serta diakhiri dengan tanda asterisk + garis miring */
Ekspresi Bilangan
Dalam pemrograman Arduino, bilangan dapat diekspresikan dalam beberapa format.
- DesimalDitulis biasa tanpa tambahan apapun. Contoh : 234.
- OktalDitulis dengan awalan angka ‘0’ (nol) didepan. Contoh : 0631
- BinerPenulisan diawali dengan huruf ‘B’. Contoh : B11100011.
- HeksadesimalDiawali dengan ‘0x’ . Contoh : 0x8C.
Kontrol Program
Sebuah program yang kita buat membutuhkan suatu kontrol, misalnya pengujian kondisi, melompat pada perintah yang lain dan sebagainya.
Pengujian Kondisi.
if
Digunakan untuk menguji kondisi, jika kondisi tersebut benar maka perintah didalam If akan dikerjakan.
if (kondisi){ Pernyataan/perintah;}
Contoh :
if(x>7){x=x+1;}
if – else
Hampir sama dengan if, hanya saja ada 2 pilihan pernyataan/perintah. Jika kondisi benar maka perintah didalam blok if yang dikerjakan, jika kondisi salah maka pernyataan di dalam else yang dikerjakan.
if (kondisi){Pernyataan/perintah 1:}else{Pernyataan/perintah 2;}
Contoh :
if (x>7){x=x+1;}else{x=x+2;}
if – else if
Untuk pengujian dengan banyak kondisi maka digunakan if – else if.
if (kondisi 1){Pernyataan/perintah 1;}else if (kondisi 2){Pernyataan/perintah 2;}else if (kondisi ke-n){Pernyataan/perintah ke-n;}
Contoh :
if(tombol=='1'){Serial.println("Angka 1");}else if(tombol =='2'){ Serial.println("Angka 2");} else if(tombol =='3'){ Serial.println("Angka 3");}
Operator Aritmatika
Operator Perbandingan
PIN INPUT – OUTPUT
Pada board Arduino UNO terdapat 13 pin I/O, dari namanya kita tahu bahwa fungsinya dapat sebagai pin input (masukan) maupun pin output (keluaran).
Inisialisasi Fungsi Pin I/O
Sebuah pin pada saat yang sama hanya mempunyai satu fungsi, sebagai input saja atau output saja, untuk itu harus ditentukan dulu fungsinya, yaitu ketika inisialisasi (setup()), dengan cara:
pinMode(pin, mode);
- pin : nomor pin yang akan dikonfigurasi (nomor pin pada board Arduino UNO, 0 – 13 atau A0 – A5).
- mode : INPUT atau OUTPUT.
Sebagai contoh jika pin no 2 akan dibuat sebagai pin output, maka:
pinMode(2, OUTPUT);
Contoh yang lain pin no 4 dibuat sebagai input:
pinMode(4, INPUT);
Perhatikan penulisan huruf, besar kecilnya sangat berpengaruh.
Menulis Data Digital di Pin Output
Setelah membuat pin sebagai digital output dengan fungsi pinMode(pin,OUTPUT) selanjutnya untuk menulis atau mengeluarkan data digital dengan perintah :
digitalWrite(pin, value);
- pin : nomor pin digital output.
- value : HIGH atau 1 (5 volt) atau LOW atau 0 (0 volt/ground).
Sebagai contoh, pin 3 sebagai pin digital output akan diberi logika 1 :
pinMode(3, OUTPUT);
digitalWrite(3, HIGH);
Atau dapat juga ditulis dengan cara lain, yaitu :
digitalWrite(3, 1);
Membaca Data Digital di Pin Input
Jika sebuah pin dibuat sebagai pin input, maka kita masih harus menentukan tipe inputnya : floating atau pullup. Jika kita pilih pullup maka resistor pullup internal (pada setiap pin) akan aktif. Caranya adalah :
digitalWrite(pin, value);
- pin : nomor pin yang diset sebagai pin input.
- value : HIGH atau 1 (pullup aktif) atau LOW atau 0 (floating).
Contoh pin no 4 akan dibuat sebagai pin input dengan pullup :
pinMode(4,INPUT);
digitalWrite(4,HIGH);
Setelah diset sebagai pin input, fungsi pembacaan data digitalnya adalah :
Var=digitalRead(pin);
Misalnya akan dibaca pin no 4, hasil pembacaan disimpan dalan variabel baca :
baca=digitalRead(4);
Sekian pembelajaran singkat tentang pemrograman arduino, semoga membantu.
Post a Comment for "Belajar Dasar Pemrograman Arduino"