Professional Documents
Culture Documents
Dodit Suprianto
Pertemuan 4
Buatlah rancangan berikut dengan aplikasi Fritzing, kemudian implementasikan ke kondisi nyata
dengan project board, LED< dan ain-lain.
Buka aplikasi Arduino IDE, kemudian buat sketch baru dengan shortcut Ctrl+N atau melalui
menu berikut:
Lakukan pengaturan board target pada system Arduino IDE, dalam hal ini kita menggunakan
board NodeMCU dengan cara berikut ini: Menu Tools > Board > esp8266 > NodeMCU 1.0 (ESP-
12E Module):
Perhatikan referensi alamat pin NodeMCU dari link berikut:
https://randomnerdtutorials.com/esp8266-pinout-reference-gpios/. Dimana yang menjadi
alamat pin yang digunakan adalah berdasarkan GPIO-nya:
Tuliskan kode program berikut pada sketch baru tersebut pada Arduino IDE:
/***************************
Program belum saya uji
****************************/
/*************************
Konstantan variabel
**************************/
#define pinled1 5
#define pinled2 4
#define pinled3 0
#define pinled4 2
#define pinled5 14
#define pinled6 12
#define pinled7 13
/**************************************
Variabel array untuk alamat pin
agar lebih sederhana untuk dikelola
***************************************/
int led[7] = { pinled1, pinled2, pinled3, pinled4, pinled5, pinled6, pinled7
};
void setup() {
// Setting serial monitor
Serial.begin(115200);
Serial.println("Hello world!");
Serial.println("Microkontroller");
/*************************
Penentuan Mode Pin
**************************/
pinMode(pinled1, OUTPUT);
pinMode(pinled2, OUTPUT);
pinMode(pinled3, OUTPUT);
pinMode(pinled4, OUTPUT);
pinMode(pinled5, OUTPUT);
pinMode(pinled6, OUTPUT);
pinMode(pinled7, OUTPUT);
}
void loop() {
/*******************************
Pemanggilan Method/Function
********************************/
// Pilih salah satu dari method ini untuk mengujinya
animasiKiriKanan();
//animasiKiriKananCaraBarbar();
}
/****************************************************
Membuat animasi LED hidup dari kiri ke kanan
dengan cara perulangan sehingga lebih sederhana
*****************************************************/
void animasiKiriKanan() {
for (int i = 0; i < 7; i++) {
matikanSemuaLED();
digitalWrite(led[i], HIGH);
Serial.println("LED No: " + String(i) + " hidup");
Serial.println("-----------------------------");
delay(200);
}
}
/************************************
Method untuk mematikan semua LED
*************************************/
void matikanSemuaLED() {
for (int i = 0; i < 7; i++) {
digitalWrite(led[i], LOW);
}
}
/****************************************************
Membuat animasi LED hidup dari kiri ke kanan
dengan cara yang kurang efektif
*****************************************************/
void animasiKiriKananCaraBarbar() {
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled1, HIGH);
delay(200);
Serial.println("LED No: 1");
Serial.println("-----------");
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled2, HIGH);
delay(200);
Serial.println("LED No: 2");
Serial.println("-----------");
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled3, HIGH);
delay(200);
Serial.println("LED No: 3");
Serial.println("-----------");
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled4, HIGH);
delay(200);
Serial.println("LED No: 4");
Serial.println("-----------");
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled5, HIGH);
delay(200);
Serial.println("LED No: 5");
Serial.println("-----------");
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled6, HIGH);
delay(200);
Serial.println("LED No: 6");
Serial.println("-----------");
matikanSemuaLEDCaraBarbar();
digitalWrite(pinled7, HIGH);
delay(200);
Serial.println("LED No: 7");
Serial.println("-----------");
}
void matikanSemuaLEDCaraBarbar() {
digitalWrite(pinled1, LOW);
digitalWrite(pinled2, LOW);
digitalWrite(pinled3, LOW);
digitalWrite(pinled4, LOW);
digitalWrite(pinled5, LOW);
digitalWrite(pinled6, LOW);
digitalWrite(pinled7, LOW);
}
Board yang
menjadi target
Untuk mengecek
sintaks kode program
apakah sudah benar
Jika tidak ada kesalahan sintaks kode program, maka tampilan di bawahnya kurang lebih akan
seperti ini:
Tugas: