Hai guys!!!
Syntax untuk fungsi ini adalah sebagai berikut
Contoh:
Nah mungkin itu dulu pada postingan ini. Semoga bisa bermanfaat.
Tengkyu
Kali ini Latihan Arduino bakal ngebahas tentang dasar pemrograman Arduino. Seperti pada postingan yang lalu (Apa Itu Arduino?) sudah sedikit dijelaskan sedikit tentang Arduino. Karena Arduino merupakan suatu platform mikrokontroller, maka harus diprogram untuk bisa diaplikasikan. Dalam pemrogramannya, terdapat fungsi-fungsi untuk menjalankan suatu program tersebut.
Nah sebelum masuk ke fungsi-fungsi tersebut, harus tau terlebih dahulu struktur dasar dari pemrograman Arduino. Struktur dasarnya bisa dikatakan sangat sederhana, karena hanya terdiri dari dua instruksi, yaitu setup() dan loop().
void setup(){
}
void loop(){
}
setup() digunakan untuk persiapan sebelum melakukan eksekusi program atau biasa digunakan untuk inisialisi variabel-variabel yang akan digunakan, dan hanya berjalan satu kali saja, sedangkan loop() digunakan untuk program utama yang akan dijalankan, dan berjalan secara terus-menerus (looping) hingga Arduino mati atau reset. Nah struktur tersebut bisa diilustrasikan seperti gambar berikut.}
void loop(){
}
Di dalam setup() dan loop() inilah fungsi-fungsi akan dituliskan. Nah beberapa fungsi yang umumnya digunakan adalah sebagai berikut.
pinMode()
pinMode() digunakan untuk menginisialisasi pin sebagai input atau output. Fungsi ini digunakan pada setup(). Syntax untuk fungsi ini adalah sebagai berikut
pinMode(pin, mode);
- pin merupakan nomor dari pin yang digunakan pada Arduino
- mode merupakan mode yang digunakan, yaitu INPUT atau OUTPUT.
Contoh:
void setup(){
pinMode(13, OUTPUT); //pin D13 diinisialisasikan sebagai output
}digitalWrite()
digitalWrite() digunakan untuk memberikan output berupa nilai digital HIGH (digital 1) atau LOW (digital 0) pada pin yang digunakan. Jika output yang diberikan berupa HIGH, maka besar nilai outputnya adalah 5V atau 3.3V untuk board 3.3V, sedangkan jika berupa LOW, maka besar nilai outputnya adalah 0V / GND. Fungsi ini bisa diletakkan di setup() maupun loop(). Syntax untuk fungsi ini adalah sebagai berikut
digitalWrite(pin, value);
- pin merupakan nomor dari pin yang digunakan pada Arduino
- value merupakan nilai output berupa HIGH atau LOW
Contoh:
void loop(){
digitalWrite(13, HIGH); //output D13 bernilai HIGH
}digitalRead()
digitalRead() digunakan untuk membaca input yang masuk ke dalam pin digital Arduino. Input yang masuk berupa nilai digital HIGH atau LOW. Syntax untuk fungsi ini adalah sebagai berikut
digitalRead(pin);
Contoh:
void loop(){
digitalRead(13); //input pada D13 akan terbaca 1 atau 0
}
analogRead()
analogRead() digunakan untuk membaca input nilai analog yang dibaca oleh pin analog Arduino. Berbeda dengan digitalRead(), nilai yang terbaca adalah nilai integer 0 hingga 1023 yang mempresentasikan 0V hingga 5V. Syntax untuk fungsi ini adalah sebagai berikut
analogRead(pin);
Contoh:
void loop(){
analogRead(A0); //input pada A0 akan membaca nilai 0 hingga 1023
}analogWrite()
analogWrite() digunakan untuk memberikan output berupa nilai analog. Output ini berupa gelombang PWM (Pulse Width Modulation). Pada Arduino, pin yang dapat digunakan untuk mengeluarkan gelombang PWM adalah yang memiliki simbol (~).
Syntax untuk fungsi ini adalah sebagai berikut
analogWrite(pin, value);
- pin merupakan nomor dari pin yang digunakan pada Arduino
- value merupakan nilai PWM yang bernilai 0 hingga 255
Contoh:
void loop(){
analogWrite(11, 150); //D11 sebagai PWM dengan nilai sebesar 150
}delay()
delay() digunakan untuk memberikan jeda pada program dalam satuan ms (mili second). Syntax fungsi ini adalah sebagai berikut
delay(time);
1000ms = 1sContoh:
void loop(){
digitalWrite(13, HIGH); //output D13 bernilai HIGH
delay(1000); //jeda selama 1 detik
digitalWrite(13, LOW); //output D13 bernilai LOW
delay(1000); //jeda selama 1 detik
}delayMicroseconds()
delayMicroseconds() digunakan sama seperti delay(), namun dalam satuan mikro second. Syntaxnya adalah sebagai berikut
delayMicroseconds(time in us);
Contoh:
void loop(){
digitalWrite(13, HIGH); //output D13 bernilai HIGH
delayMicroseconds(50); //jeda selama 50us
digitalWrite(13, LOW); //output D13 bernilai LOW
delayMicroseconds(50); //jeda selama 50us
}
digitalWrite(13, HIGH); //output D13 bernilai HIGH
delayMicroseconds(50); //jeda selama 50us
digitalWrite(13, LOW); //output D13 bernilai LOW
delayMicroseconds(50); //jeda selama 50us
}
Nah mungkin itu dulu pada postingan ini. Semoga bisa bermanfaat.
Tengkyu
Comments
Post a Comment