Jumat, 17 Juli 2020

Dasar Pemrograman Arduino

Pengantar Arduino

Arduino diprogram menggunakan bahasa pemrograman C. Pada materi kali ini, kita akan mencoba mengenal beberapa dasar dalam memprogram arduino menggunakan bahasa C pada IDE Arduino yang telah kita install pada materi sebelumnya.

Struktur Arduino

Setiap program Arduino (biasanya disebut sketch) memiliki setidaknya dua fungsi (biasanya disebut routines).

 


Semua code yang diletakkan diantara tanda kurung kurawal { } akan dijalankan sekali saat program mulai dijalankan.





Fungsi ini akan dijalankan setelah fungsi setup. Setelah itu fungsi ini akan terus dijalankan berulang kali, dan akan berhenti jika kita melepaskan catu daya Arduino dari sumber listrik.





Syntax

Salah satu hal yang membuat bahasa C cukup merepotkan yaitu elemen formating yang harus dipahami (namun, ini juga yang membuat bahasa C menjadi formating yang harus dipahami (namun, ini juga yang membuat bahasa C menjadi bahasa pemrograman yang powerful). Jika kita menguasainya maka kita tidak akan terlalu kesulitan dalam memrogram Arduino.

//(single line comment)

Code ini digunakan untuk membuat catatan pada program. Jika pada program kita ketikkan // maka apapun yang diketik pada baris seletah tanda // tersebut tidak akan dibaca oleh program.

Contoh :

void loop()

 {

 …program yang dibaca

//baris ini tidak akan dibaca oleh program …program yang dibaca

}

 

/* */(multi line comment)

Jika kita ingin membuat catatan pada program  dan kata2nya  cukup banyak maka kita bisa menggunakan /**/ . Apapun yang diketikkan diantara dua tanda ini tidak akan dijalankan oleh program.

Contoh:

void loop()

{

 …program yang dibaca

/*

apapun yang diketik diantara tanda ini tidak akan dibaca oleh program

*/

 …program yang dibaca

}

{ }(kurung kurawal)

Digunakan untuk mendefinisikan awal dan akhir dari code program.

 
 
;(semicolon)

Setiap baris code harus diakhiri dengan tanda ;

(biasanya tanda ini yang sering lupa digunakan oleh pemula sehingga program tidak bisa di compile)

Contoh :

void loop()

{

digitalWrite(ledPin, HIGH);

delay(1000);

digitalWrite(ledPin, LOW);

delay(1000);

}

 Variabel

Variable adalah tempat untuk menyimpan data.  Variable memiliki nama, nilai, dan tipe data. Statementnya biasa disebut deklarasi.


Operasi Matematika

Operator digunakan untuk memanipulasi nilai (cara kerjanya sama seperti matematika sederhana).


Operator Perbandingan

Operator yang digunakan untuk perbandingan secara logical

==(sama dengan)

(contoh, 12 == 10  F ALSE atau 12 == 12  TRUE)

!= (tidak sama dengan)

(contoh, 12 != 10  TRUE atau 12 != 12  F ALSE)

< (lebih kecil dari)

(contoh, 12 < 10  F ALSE atau 12 < 12  FALSE atau 12 < 14  TRUE)

> (lebih besar dari)

(contoh, 12 > 10  TRUE atau 12 > 12  F ALSE atau 12 > 14 FALSE)

 

Struktur Kontrol

Suatu blok pemrograman yang menganalisis variabel dan memilih arah yang akan didasarkan pada parameter yang diberikan.

for(int i = 0; i < #repeats; i++){ }

(menghitung ke atas i++ Atau kebawah i-- )

Digunakan ketika kita ingin mengulangi code sebuah nilai beberapa kali, nanti akan kita pelajari lebih lanjut pada contoh kasus agar lebih mudah memahaminya.


Catatan:

Program memerlukan kontrol untuk mengendalikan hal-hal apa yang akan dilakukan selanjutnya, berikut adalah dilakukan selanjutnya, berikut adalah beberapa contoh dasar metode pengontrolan.


Digital

Mesin digital yang memiliki nilai 0 dan 1.

pinMode(pin, mode);

Digunakan untuk menyeting mode pin, Pin adalah nomer pin yang ingin digunakan (pin 0 sampai pin 19). Mode bisa berupa INPUT atau OUTPUT.

Contoh:

pinMode (13,INPUT);

“artinya pin 13 pada arduino kita gunakan sebagai input.”

pinMode (7,OUTPUT);

“artinya pin 7 pada arduino kita gunakan sebagai output.”

 

int digitalRead(pin);

Sebuah pin yang sudah kita seting sebagai input dapat memberikan pin arduino nilai HIGH ( +5 volt ) atau LOW (Ground).

Contoh:

int digitalRead(13);

“program akan membaca nilai pada pin 13, apakah ada tegangan (+5 volt). jika ada, maka program akan membaca nilai HIGH dan jika tidak ada tegangan (ground) , maka program membaca nilai LOW”

 

int digitalWrite(pin, value);

Sebuah pin yang sudah kita seting sebagai output dapat kita berikan nilai HIGH (+5 volt) atau LOW (Ground).

Contoh:

int digitalWrite(13,HIGH);

“program akan memberikan nilai high pada pin 13, sehingga pin tersebut secara hardware akan terhubung ke tegangan (+5 volt)”

Sebaliknya,

int digitalWrite(13,LOW);

“program akan memberikan nilai low pada pin 13, sehingga pin tersebut secara hardware akan terhubung ke (Ground)”

Analog

Meskipun Arduino merupakan mesin digital namun, Arduino juga dapat digunakan untuk mengoprasikan analog (dengan sedikit trik).

int analogRead(pin);

Ketika input dari pin analog diseting sebagai INPUT, kita dapan membaca tegangan inputnya. Nilainya mulai dari 0 (untuk 0 volt) dan 1024 (untuk 5 Volt).

int analogWrite(pin, value);

Beberapa pin dari board Arduino mensuport PWM (pulse with modulation) pin tersebut yaitu pin (3, 5, 6, 9, 10, 11). Nilai yang dihasilkan bervariasi antara 0 (0% duty cycle Sekitar 0 volt ) dan 255 (100% duty cycle sekitar 5 volt).

Contoh:

int analogWrite(6,200);

“program akan memberikan nilai pwm 200 pada pin 6, sehingga pin tersebut secara hardware akan terhubung ke tegangan (+5 volt)”


Semoga bermanfaat dan menambah pengetahuan pembaca.
Terimakasih 🙏
 

Tidak ada komentar:

Posting Komentar