Anda di halaman 1dari 12

LAPORAN PRAKTIKUM

PEMOGRANAB MIKROKONTROLER
DIGITAL INPUT DAN OUTPUT

Disusun oleh :
Shakeiya Joey
2042201096 / 5C

Departemen Teknik Instrumentasi


Fakultas Vokasi
Intitut Teknologi Sepuluh Nopember
Surabaya
2022
1.1 Hasil Praktikum
a. Program 1 led

#include <Arduino.h>

int led = 13;


int button = 2;

void setup() {
pinMode (led, OUTPUT);
pinMode (button, INPUT);
}

void loop() {
if (digitalRead(button)==HIGH){
digitalWrite(led, HIGH);
}
else{
digitalWrite(led, LOW);
}
}

Figure 1 Hasil running program 1 led pada software Visual Studio Code
Figure 2 Pembuatan rangkaian modul praktikum

Figure 3 Pembuatan rangkaian modul praktikum


b. Program 3 led

#include <Arduino.h>

int ledred = 13;


int ledgreen = 12;
int ledblue = 11;
int button1 = 2;
int button2 = 3;

void setup() {
// Setting Pin Mode
pinMode (ledred, OUTPUT);
pinMode (ledgreen, OUTPUT);
pinMode (ledblue, OUTPUT);
pinMode (button1, INPUT);
pinMode (button2, INPUT);
}

void loop() {
if(digitalRead(button1)==HIGH){
digitalWrite(ledblue, HIGH);
digitalWrite(ledgreen, HIGH);
digitalWrite(ledred, HIGH);
}
if(digitalRead(button2)==HIGH){
digitalWrite(ledblue, LOW);
digitalWrite(ledgreen, LOW);
digitalWrite(ledred, LOW);
}

}
Figure 4 Figure 5 Hasil running program 3 led pada software Visual Studio Code

Figure 6 Pembuatan Wiring Exercise Praktikum


1.2 Analisis

Praktikum kali ini dilakukan 2 kali percobaan berdasarkan perintah yang


tertulis pada modul praktikum 1. Praktikum ini memiliki tujuan untuk
memahami konsep Pemograman Mikrokontroller dalam sebuah sistem
pengendalian. Serta memahami penerapan fungsi Pemograman
Mikrokontroller dalam sebuah sistem pengendalian melalui metode
praktikum. Aplikasi software yang digunakan praktikan dalam menjalankan
praktikum adalah software u Visual Studio Code dengan extension adalah
PlatformI/O. Kemudian, pada modul praktikum 1 terdapat gambaran daripada
rangkaian yang nantinya akan disusun. Dengan menggunakan beberapa
komponen antara lain Arduino Uno, resistor, push button, LED, dan beberapa
kabel jumper. Pada modul pun tersedia terkait coding program dalam
melakukan percobaan ini. Berikut ialah merupakan code dari program
tersebut :

#include <Arduino.h>
int led = 13;
int button = 2;
void setup() {
pinMode (led, OUTPUT);
pinMode (button, INPUT);
}
void loop() {
if (digitalRead(button)==HIGH){
digitalWrite(led, HIGH);
}
else{
digitalWrite(led, LOW);
}
}

Coding Program Keterangan


#include <Arduino.h> #Include berfungsi untuk memanggil library.
Library disini ialah library Arduino.h.
int led = 13; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama led dengan
tipe data Int untuk untuk menyimpan angka
13 yang nantinya akan digunakan kofigurasi
pin output pada arduino.
int button = 2; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama button
dengan tipe data Int untuk untuk
menyimpan angka 2 yang nantinya akan
digunakan kofigurasi pin input pada
arduino.
void setup() { Sebuah fungsi yang dipanggil ketika sketch
atau program dimulai dan hanya akan
berjalan sekali saja. Fungsi yang digunakan
sebagai deklarasi atau konfigurasi dari
variable led dan button.
pinMode (led, OUTPUT); Mendeklarasikan variable led sebagai
output
pinMode (button, INPUT); Mendeklarasikan variable button sebagai
input
} Merupakan batas perintah dari fungsi void
setup().
void loop() { Merupakan fungsi untuk melaksanakan
atau mengeksekusi perintah dari program
yang dibuat secara berulang dan berjalan
terus menerus.
if (digitalRead(button)==HIGH){ If merupakan fungsi percabangan,
digitalRead(button) adalah fungsi untuk
membaca keadaan pin button ketika
dipencet atau tidak. Fungsi == HIGH
digunkan untuk perbandingan apabila
tombol ditekan maka fungsi percabangan
akan dijalankan begitu juga sebaliknya.
digitalWrite(led, HIGH); Untuk memerintahkan pin digital untuk
menjalankan led tersebut dalam kondisi
high (Mengaktifkan pin output).
} Merupakan batas perintah dari fungsi if.
else{ else merupakan fungsi apabila if tidak
dijalankan atau kondisi tidak terpenuhi
maka else akan dijalankan.
digitalWrite(led, LOW); Untuk memerintahkan pin digital untuk
menjalankan led tersebut dalam kondisi low
(Mematikan pin output).
} Merupakan batas perintah dari fungsi if.
} Merupakan batas perintah dari fungsi void
loop().

Kemudian pada percobaan kedua juga masih menggunakan software yang


sama. Disini praktikan membuat sebuah rangkaian dengan ketentuan terdapat
komponen berupa 3 led, 2 push button yang memilik fungsi on dan off dari
masing-masing push button. Nantinya, ketiga led tersebut akan menyala
secara bersamaan dengan menekan push button 1 dan akan dimatikan secara
bersamaan pula dengan menekan push button 2.

Berikut merupakan Program 13 led :


#include <Arduino.h>

int ledred = 13;


int ledgreen = 12;
int ledblue = 11;
int button1 = 2;
int button2 = 3;

void setup() {
// Setting Pin Mode
pinMode (ledred, OUTPUT);
pinMode (ledgreen, OUTPUT);
pinMode (ledblue, OUTPUT);
pinMode (button1, INPUT);
pinMode (button2, INPUT);
}

void loop() {
if(digitalRead(button1)==HIGH){
digitalWrite(ledblue, HIGH);
digitalWrite(ledgreen, HIGH);
digitalWrite(ledred, HIGH);
}
if(digitalRead(button2)==HIGH){
digitalWrite(ledblue, LOW);
digitalWrite(ledgreen, LOW);
digitalWrite(ledred, LOW);
}

Coding Program Keterangan


#include <Arduino.h> #Include berfungsi untuk memanggil library.
Library disini ialah library Arduino.h.
int led1 = 7; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama led1 dengan
tipe data Int untuk untuk menyimpan angka
7 yang nantinya akan digunakan kofigurasi
pin output pada arduino.
int led2 = 6; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama led2 dengan
tipe data Int untuk untuk menyimpan angka
6 yang nantinya akan digunakan kofigurasi
pin output pada arduino.
int led3 = 5; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama led3 dengan
tipe data Int untuk untuk menyimpan angka
5 yang nantinya akan digunakan kofigurasi
pin output pada arduino.
int led4 = 4; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama led4 dengan
tipe data Int untuk untuk menyimpan angka
4 yang nantinya akan digunakan kofigurasi
pin output pada arduino.
int led5 = 3; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama led5 dengan
tipe data Int untuk untuk menyimpan angka
3 yang nantinya akan digunakan kofigurasi
pin output pada arduino.
int button1 = 8; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama button1
dengan tipe data Int untuk untuk
menyimpan angka 8 yang nantinya akan
digunakan kofigurasi pin input pada arduino.
int button2 = 9; Int merupakan tipe data, dan pada baris ini
merupakan variable bernama button2
dengan tipe data Int untuk untuk
menyimpan angka 9 yang nantinya akan
digunakan kofigurasi pin input pada arduino.
void setup() { Sebuah fungsi yang dipanggil ketika sketch
atau program dimulai dan hanya akan
berjalan sekali saja. Fungsi yang digunakan
sebagai deklarasi atau konfigurasi dari
variable led dan button.
pinMode (led1, OUTPUT); Mendeklarasikan variable led1 sebagai
output
pinMode (led2, OUTPUT); Mendeklarasikan variable led2 sebagai
output
pinMode (led3, OUTPUT); Mendeklarasikan variable led3 sebagai
output
pinMode (led4, OUTPUT); Mendeklarasikan variable led4 sebagai
output
pinMode (led5, OUTPUT); Mendeklarasikan variable led5 sebagai
output
pinMode (button1, INPUT); Mendeklarasikan variable button1 sebagai
input
pinMode (button2, INPUT); Mendeklarasikan variable button2 sebagai
input
} Merupakan batas perintah dari fungsi void
setup().
void loop() { Merupakan fungsi untuk melaksanakan atau
mengeksekusi perintah dari program yang
dibuat secara berulang dan berjalan terus
menerus.
if (digitalRead(button1)==HIGH){ If merupakan fungsi percabangan,
digitalRead(button1) adalah fungsi untuk
membaca keadaan pin button1 ketika
dipencet atau tidak. Fungsi == HIGH
digunkan untuk perbandingan apabila
tombol ditekan maka fungsi percabangan
akan dijalankan begitu juga sebaliknya.
digitalWrite(led1, HIGH); Untuk memerintahkan pin digital untuk
menjalankan led1 tersebut dalam kondisi
high (Mengaktifkan pin output).
digitalWrite(led2, HIGH); Untuk memerintahkan pin digital untuk
menjalankan led2 tersebut dalam kondisi
high (Mengaktifkan pin output).
digitalWrite(led3, HIGH); Untuk memerintahkan pin digital untuk
menjalankan led3 tersebut dalam kondisi
high (Mengaktifkan pin output).
digitalWrite(led4, HIGH); Untuk memerintahkan pin digital untuk
menjalankan led4 tersebut dalam kondisi
high (Mengaktifkan pin output).
digitalWrite(led5, HIGH); Untuk memerintahkan pin digital untuk
menjalankan led5 tersebut dalam kondisi
high (Mengaktifkan pin output).
} Merupakan batas perintah dari fungsi if.
else if Else if merupakan fungsi percabangan ketika
digitalRead(button2)==HIGH){ fungsi if tidak terpenuhi,
digitalRead(button2) adalah fungsi untuk
membaca keadaan pin button1 ketika
dipencet atau tidak. Fungsi == HIGH
digunkan untuk perbandingan apabila
tombol2 ditekan maka fungsi percabangan
akan dijalankan begitu juga sebaliknya.
digitalWrite(led1, LOW); Untuk memerintahkan pin digital untuk
menjalankan led1 tersebut dalam kondisi
low (Mematikan pin output).
digitalWrite(led2, LOW); Untuk memerintahkan pin digital untuk
menjalankan led2 tersebut dalam kondisi
low (Mematikan pin output).
digitalWrite(led3, LOW); Untuk memerintahkan pin digital untuk
menjalankan led3 tersebut dalam kondisi
low (Mematikan pin output).
digitalWrite(led4, LOW); Untuk memerintahkan pin digital untuk
menjalankan led4 tersebut dalam kondisi
low (Mematikan pin output).
digitalWrite(led5, LOW); Untuk memerintahkan pin digital untuk
menjalankan led5 tersebut dalam kondisi
low (Mematikan pin output).
} Merupakan batas perintah dari fungsi else
if.
} Merupakan batas perintah dari fungsi void
loop().
1.3 Dokumentasi

Figure 7 Kondisi lampu menyala pada program 1 led

Figure 8 Kondisi Lampu mati dan menyala

Anda mungkin juga menyukai