Arduino menggunakan bahasa c++ yang telah dikembangkan menjadi bahasa arduino itu sendiri, sehingga pada arduino terdapat bahasa pemogra...
Arduino menggunakan bahasa c++ yang telah dikembangkan menjadi bahasa arduino itu sendiri, sehingga pada arduino terdapat bahasa pemograman yang sering digunakan atau bahasa dasar. Pada postingin kali ini, akan dibahas mengenai bahasa yang sering digunakan atau bahasa dasar pada arduino.
1. Struktur program
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
Program diatas merupakan bentuk awal ketika kita membuka arduino IDE. Terdapat 2 program yang kita gunakan yaitu "void setup" dan "void loop". Kedua program tersebut berbeda satu sama lain. Pada void setup hanya berlaku satu kali tanpa pengulangan, artinya program yang berada pada void setup tidak akan dieksekusi lebih dari 1 kali, biasa digunakan untuk mengatur pin sebagai input atau output. Sedangkan pada void loop program yang kita masukan akan berjalan terus menerus tanpa berhenti, biasa digunakan untuk mengatur pin sebagai HIGH atau LOW. Pada program diatas juga terdapat tanda garis miring 2 "//" yang artinya sebagai pemberi komentar, tidak akan dieksekusi sebagai program, tetapi hanya sebagai tulisan biasa.
2. Bahasa dasar
a.) digitalWrite
//digitalWrite(pin, kondisi)
digitalWrite(13, LOW); //Mengatur pin 13 sebagai LOW atau GND
digitalWrite(13, HIGH); //Mengatur pin 13 sebagai HIGH atau 5V
Bahasa diatas adalah salah satu bahasa yang sering digunakan untuk mengatur pin sebagai OUTPUT LOW atau HIGH, artinya pin tersebut bisa kita atur keluarannya sebagai HIGH (5V) atau LOW (GND), penulisannya adalah "digitalWrite(pin, kondisi)" maksud pin adalah kita tulis dengan nomor pin yang kita inginkan untuk diatur, dan kondisi artinya adalah untuk mengatur pin yang telah kita tulis sebagai HIGH atau LOW.
b.) pinMode
//pinMode(pin, fungsi)
pinMode(13, OUTPUT); //Mengatur pin 13 sebagai OUTPUT
pinMode(A2, INPUT); //Mengatur pin A2 sebagai INPUT
pinMode adalah salah satu bahasa dasar yang digunakan untuk memfungsikan pin sebagai OUTPUT atau INPUT, biasa nya pinMode diletakkan pada void setup karena pinMode tidak perlu dilakukan secara berulang ulang. Penulisannya adalah "pinMode(pin, fungsi)" maksud dari pin adalah nomor pin yang ingin kita atur dan maksud dari fungsi adalah kita bisa memasukan INPUT atau OUTPUT sebagai fungsi dari pin yang telah kita tulis.
c.) Tipe data (int, float)
//int angka1
//float angka2
int angka1 = 10; //mempunyai variabel angka1 dengan nilai 10
float angka2 = 10.5 //mempunyai variabel angka2 dengan nilai 10.5
Tipe data adalah sebuah bahasa yang perlu kita gunakan untuk membuat variabel dengan nilai tertentu. Ada banyak macam tipe data yang bisa gunakan yaitu int (bilangan bulat), float (bilangan pecahan), char (karakter), bool (boolean), string (kumpulan karakter). Dari banyak nya tipe data yang ada, yang sering digunakan adalah int dan float. Int merupakan kependekan dari integer yaitu bilangan bulat, artinya kita hanya bisa memasukan bilangan bulat saja, tidak boleh ada koma. Sedangkan float adalah bilangan pecahan, kita bisa memasukan nilai dengan koma apabila tipe data nya adalah float.
d.) If statement
//if (kondisi){
statement
}
else{
statement
}
if (10 > 5){ //jika kondisi nya benar
digitalWrite(3, HIGH); //pin 3 menjadi HIGH
}
else{ //jika kondisi nya salah
digitalWrite(3, LOW); //pin 3 menjadi LOW
}
if (4 > 5){ //jika kondisi nya benar
digitalWrite(4, HIGH); //pin 4 menjadi HIGH
}
else{ //jika kondisi nya salah
digitalWrite(4, LOW); //pin 3 menjadi LOW
}
if statement adalah bahasa dasar yang dipakai untuk kondisi tertentu dengan contoh penulisan seperti kotak diatas. Dapat dilihat program diatas, maksud dari program tersebut adalah jika kondisi nya benar, maka akan dilanjutkan dengan perintah pada if, tetapi jika kondisi nya salah maka akan dilanjutkan pada perintah else. Untuk if pertama dikondisikan 10 > 5, karena kondisi tersebut benar, maka pin 3 akan menjadi HIGH dan program pada else akan dilewatkan. Sedangkan pada if kedua, dikondisikan 4 > 5 dan kondisi tersebut salah sehingga pin 4 akan menjadi LOW yang artinya program pada if kedua tidak dilaksanakan, tetapi program else yang akan dilaksanakan.
e.) delay
//delay(waktu) dengan satuan milisecond
delay(3000); //delay sebanyak 3 detik
delay adalah bahasa program untuk menunda bahasa sebelumnya sebanyak waktu yang ditentukan, satuan dari delay adalah milisecond artinya jika kita memasukan 5000 pada delay, maka waktunya adalah sebanyak 5 detik.
Contoh soal:
Diketahui kita mempunyai 2 buah LED dan 1 buah Arduino. Kita ingin menyalakan LED tersebut secara bergantian dengan selang waktu 1 detik dan menggunakan arduino. Buat lah program tersebut.
int Led_1 = 10; //LED 1 terdapat pada pin 10
int Led_2 = 9; //LED 2 terdapat pada pin 9
void setup(){
pinMode(Led_1, OUTPUT); //membuat pin LED 1 menjadi output
pinMode(Led_2, OUTPUT); //membuat pin LED 2 menjadi output
}
void loop(){
digitalWrite(Led_1, HIGH);
digitalWrite(Led_2, LOW);
delay(1000); //membuat LED 1 menyala dan LED 2 mati selama 1 detik
digitalWrite(Led_1, LOW);
digitalWrite(Led_2, HIGH);
delay(1000); //membuat LED 1 mati dan LED 2 menyala selama 1 detik
}
0 komentar :
Posting Komentar