coding arduino dan funsinya
coding arduino dan funsinya
NPM : 24430014
Kelas : A
TUGAS MENGANALISIS KODING PROGRAM ARDUINO
1. Video 1
A. Tuliskan koding yang digunakan
#define sigPin 8
int raw = 0;
int cm = 0;
int in = 0;
void setup()
{
Serial.begin(9600);
}
long bacaSensor ()
{
pinMode (sigPin, OUTPUT);
digitalWrite (sigPin, LOW);
delayMicroseconds (2);
digitalWrite (sigPin, HIGH) ;
delayMicroseconds (10);
digitalWrite (sigPin, LOW);
pinMode (sigPin, INPUT);
return pulseIn (sigPin, HIGH);
}
void loop()
{
raw = bacaSensor();
cm = 0.01723-raw;
in = cm/2.54;
Serial.print (raw);
Serial.print(",");
Serial.print (cm);
Serial.print ("cm,");
Serial.print (in);
Serial.println("in,");
delay(100);
}
B. Identifikasi koding dan kemukakan fungsi koding pemrograman tersebut
No Koding Fungsi
1 #define sigPin 8 Untuk mendefinisikan pin yang akan diolah
Int raw = 0; Varibel untuk mendeklarasikan pembacaan secara
2 acak oleh sensor ultrasonik sebelum diatur dalam
bentuk inchi ataupun Cm
3 Int cm = 0; Variabel untuk mendeklarasikan sensor ultrasonik
4 Int in = 0; Variabel untuk mendeklarasikan sensor ultrasonik
5 void setup() Untuk memberikan tindakan inisialisasi funsi yang
akan dijalankan pertama kali
6 Serial.begin(9600); Menginisialisasi komunikasi serial pada baud rate 9600
bps untuk mengirim data ke komputer
7 long bacaSensor () Fungsi ini membaca data dari sensor
8 pinMode (sigPin, Mengatur pin sinyal sebagai output
OUTPUT);
9 digitalWrite (sigPin, Mengatur pin sinyal dengan nilai rendah
LOW);
10 delayMicroseconds Menunda oprasi selama 2 mikrodetik
(2);
11 digitalWrite (sigPin, Mengatur nilai tinggi ke pin sinyal
HIGH) ;
12 delayMicroseconds Menunda oprasi selama 10 mikrodetik
(10);
13 digitalWrite (sigPin, Mengatur pin sinyal dengan nilai rendah
LOW);
14 pinMode (sigPin, Mengatur pin sinyal sebagai input
INPUT);
15 return pulseIn Untuk menampilkan HIGH/LOW dari perubahan acak
(sigPin, HIGH); menjadi CM kedalam INCHI
16 void loop() Untuk mengkondisikan perintah digital
17 raw = bacaSensor(); Memanggil fungsi bacaSensor() dan menyimpan
hasilnya dalam variabel raw
18 cm = 0.01723-raw; Menghitung jarak dalam cm menggunakan rumus
konversi yang sesuai dengan sensor yang digunakan
19 in = cm/2.54; Menghitung jarak dalam inch dengan membagi jarak
dalam cm dengan 2.54 (konversi dari cm ke inch)
20 Serial.print (raw);
Serial.print(","); Mencetak nilai mentah, jarak dalam cm, dan jarak
Serial.print (cm); dalam inch ke serial monitor
Serial.print (in);
Serial.println("in,");
21 delay(100); Menunda oprasi selama 100 milidetik sebelum
mengulang loop
2. Video 2
A. Tulikan koding yang digunakan
#define pirPin 2
#define ledPin 13
int statusSensor = 0;
void setup() {
Serial.begin (9600);
pinMode (pirPin, INPUT);
pinMode (ledPin, OUTPUT);
}
void loop() {
statusSensor = digitalRead (pirPin);
if (statusSensor == 1) {
digitalWrite (ledPin, HIGH);
Serial.println ("awas ada gerakan!");
}
else {
digitalWrite (ledPin, LOW);
}
Delay (100)
}
No Koding Fungsi
1 #define pirPin 2 Untuk mendefinisikan pin yang akan diolah
2 #define ledPin 13 Untuk mendefinisikan pin yang akan diolah
3 int statusSensor = 0; Variabel untuk mendeklarasikan sensor
4 void setup() Untuk memberikan tindakan inisialisasi funsi yang
akan dijalankan pertama kali
5 Serial.begin (9600); Menginisialisasi komunikasi serial pada baud rate 9600
bps untuk mengirim data ke komputer
6 pinMode (pirPin, INPUT); Mengatur pin sinyal sebagai input
7 pinMode (ledPin, Mengatur pin sinyal sebagai input
OUTPUT);
8 void loop() Untuk mengkondisikan perintah digital
9 statusSensor = Membaca nilai digital dari pin yang terhubung dengan
digitalRead (pirPin); sensor PIR
10 if (statusSensor == 1) Untuk percabangan jika nilai bernilai benar / TRUE
11 digitalWrite (ledPin, Menyalakan LED yang terhubung dengan pin ledPin
HIGH);
12 Serial.println ("awas ada Mencetak pesan "awas ada gerakan!" ke serial monitor
gerakan!");
13 else Memulai blok kode yang akan dijalankan jika kondisi
dalam if salah
14 digitalWrite (ledPin, LOW); Mematikan LED yang terhubung dengan pin ledPin
15 Delay (100) Menunda program selama 100 milidetik sebelum
kembali ke awal loop