0% menganggap dokumen ini bermanfaat (0 suara)
889 tayangan14 halaman

Praktikum 2 - Push Button

Prakikumnya membahas percobaan mengontrol LED menggunakan push button pada Arduino. Terdapat empat uji coba yaitu satu LED dan satu tombol, dua LED dan dua tombol, satu tombol untuk empat LED, dan dua tombol untuk empat LED dengan fungsi berbeda. Program Arduino digunakan untuk mengatur input dan output serta menyalakan LED sesuai dengan tekanan tombol. Hasil percobaan sesuai dengan program yang ditulis.

Diunggah oleh

Artonihan
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
889 tayangan14 halaman

Praktikum 2 - Push Button

Prakikumnya membahas percobaan mengontrol LED menggunakan push button pada Arduino. Terdapat empat uji coba yaitu satu LED dan satu tombol, dua LED dan dua tombol, satu tombol untuk empat LED, dan dua tombol untuk empat LED dengan fungsi berbeda. Program Arduino digunakan untuk mengatur input dan output serta menyalakan LED sesuai dengan tekanan tombol. Hasil percobaan sesuai dengan program yang ditulis.

Diunggah oleh

Artonihan
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 14

LAPORAN PRAKTIKUM MIKROPROSESOR

Nama : Artoni Yulhanapis

NIM : 11140970000003

Fakultas : Sains & Teknologi

Jurusan : Fisika

Nama percobaan : PERCOBAAN PUSH BUTTON

Nomor percobaan :2

Tanggal percobaan : 3 Oktober 2017

Asisten : Ika
PRAKTIKUM 2

PERCOBAAN PUSH BUTTON

A. TUJUAN

1. Mahasiswa memahami rangkaian mikrokontroler dengan interface ke saklar.

2. Mahasiswa dapat memahami program Anduino untuk mengambil data saklar dan mengeluarkan

data ke LED.

3. Mahasiswa memahami beberapa instruksi Arduino dasar, digitalRead, if, dan for.

B. TEORI DASAR

Salah satu jenis saklar yang Anda gunakan setiap hari adalah lampu. Sebuah lampu adalah

perangkat sederhana dengan dua posisi, dan mematikan. Ketika di, dua kawat yang terhubung di

dalam, yang memungkinkan arus mengalir. Ketika off, dua kabel yang terputus.

Gambar Fungsi Saklar

Di sebelah kiri, saklar terbuka dan tidak ada arus mengalir. Di sebelah kanan, saklar ditutup, arus dan

lampu menyala. Push Button adalah saklar tekan yang berfungsi untuk menghubungkan atau

memisahkan bagian bagian dari suatu instalasi listrik satu sama lain (suatu sistem saklar tekan push

button terdiri dari saklar tekan start. Pada dasarnya, terdapat 2 jenis Push-Button di pasaran: Push-On

dan Push-Off. Tetapi yang kita gunakan pada tutorial ini adalah yang berjenis Push-On, yaitu

komponen yang terdiri atas dua kutub yang saling terpisah / tidak terhubung, dan sebuah tombol yang
ketika ditekan akan menghubungkan kedua kutub tersebut sehingga akan mengalirkan arus listrik dari

satu sisi kutub ke sisi kutub berikut ini.

C. ALAT DAN BAHAN

1. Project Board

2. LED

3. Push Button

4. Arduino ATMega2560

5. Kabel USB

6. Kabel Jumper

7. Resistor

8. Aplikasi Arduino 1.6.12

D. LANGKAH-LANGKAH PERCOBAAN

1. Menyalakan komputer dengan program Arduino.

2. Menyambungkan Trainer mikrokontroler dengan komputer menggunakan kabel USB.

3. Menyambungkan kabel-kabel jumper sesuai dengan praktikum yang dilaksanakan seperti pada

gambar di bawah ini :

UJI PERTAMA
Gambar Rangkaian satu push-button dan satu LED

UJI KEDUA

Gambar Rangkaian dua push-button dan dua LED

UJI KETIGA

Gambar Rangkaian satu push-button dan empat LED


UJI KEEMPAT

Gambar. Rangkaian dua push-button dan empat LED

4. Mengetik program yang dibawah ini pada software Arduino :

UJI PERTAMA
//Menghidupkan satu LED dengan satu Push Button
const int ledPin = 13;
const int inputPin = 5;

void setup() {
pinMode (ledPin, OUTPUT);
pinMode (inputPin, INPUT);
digitalWrite(inputPin, HIGH);

void loop() {
int val = digitalRead(inputPin);
if (val == HIGH) {
digitalWrite(ledPin, LOW);
}
else
{
digitalWrite (ledPin, HIGH);
}
}

UJI KEDUA
//Menghidupkan dua LED dengan dua Push Button
unsigned int inputPin[] = {4,5};
unsigned int ledPin[] = {12,13};
void setup() {
for (int indeks = 0; indeks < 2; indeks++)
{
//Declare LED as output
pinMode (ledPin[indeks],OUTPUT);
pinMode (inputPin[indeks],INPUT);
//Mengaktif resistor Pull-Up
digitalWrite (inputPin[indeks],HIGH);
}

void loop() {
for (int indeks = 0; indeks < 2; indeks++)
{
//read input value
int val = digitalRead (inputPin[indeks]);
if (val == LOW) //cek switch ditekan
{
//switch ditekan LED on
digitalWrite (ledPin[indeks], HIGH);
}
else
{
//LED off
digitalWrite(ledPin[indeks], LOW);
}
}
}

UJI KETIGA
unsigned int inputPin[] = {5};
unsigned int ledPin[] = {10,11,12,13};

void setup() {
for(int indeks = 0; indeks < 4; indeks++)
{
pinMode(ledPin[indeks], OUTPUT);
pinMode(inputPin[indeks], INPUT);

digitalWrite(inputPin[indeks], HIGH);

}
void loop() {
for(int indeks = 0; indeks < 4; indeks++)
{
int val = digitalRead(inputPin[indeks]);
if (val == LOW)
{
digitalWrite(ledPin[indeks], HIGH);
}
else
{
digitalWrite(ledPin[indeks], LOW);
}
}
}

UJI KEEMPAT
unsigned int inputPin[] = {5};

unsigned int ledPin[] = {10,11,12,13};

unsigned int inputPin1[] = {9};

void setup() {

for (int i = 0; i < 4; i++)

pinMode (ledPin[i], OUTPUT);

pinMode (inputPin[i], INPUT);

pinMode (inputPin1[i], INPUT);

//Push Button LED berkedip

digitalWrite(inputPin[i], HIGH);

//Push Button LED Berjalan Kiri-Kanan

digitalWrite(inputPin1[i], HIGH);

}
}

void loop() {

for (int i = 0; i < 4; i++)

//Program LED Berkedip

int val = digitalRead(inputPin[i]);

if (val == LOW)

digitalWrite(ledPin[i], HIGH);

else

digitalWrite(ledPin[i], LOW);

//Program LED Berjalan Kiri-Kanan

int val1 = digitalRead (inputPin1[i]);

if (val1 == LOW)

digitalWrite(10, HIGH);

digitalWrite(11, LOW);

digitalWrite(12, LOW);

digitalWrite(13, LOW);

delay(500);

digitalWrite(10, LOW);

digitalWrite(11, HIGH);

digitalWrite(12, LOW);
digitalWrite(13, LOW);

delay(500);

digitalWrite(10, LOW);

digitalWrite(11, LOW);

digitalWrite(12, HIGH);

digitalWrite(13, LOW);

delay(500);

digitalWrite(10, LOW);

digitalWrite(11, LOW);

digitalWrite(12, LOW);

digitalWrite(13, HIGH);

delay(500);

5. Melakukan verifikasi terhadap program untuk mengecek error atau tidaknya.

6. Jika tidak terjadi error melanjutkan dengan mengupload program ke dalam mikrokontroler.

7. Mengamati hasil jika sudah sesuai dengan perintah instruktur atau belum, kalau belum mengulangi

editing program dan kembali ke langkah 5.

E. DATA PERCOBAAN

1. UJI PERTAMA

Gambar hasil rangkaian satu LED dan satu push-button


Kondisi saat push-button sebelum ditekan Kondisi saat push-button sesudah ditekan

2. UJI KEDUA

Gambar hasil rangkaian dua LED dan dua push-button

Kondisi saat kedua push-button sebelum ditekan Kondisi saat push-button pertama ditekan
Kondisi saat push-button kedua ditekan Kondisi saat kedua push-button sesudah ditekan

3. UJI KETIGA

Gambar hasil rangkaian empat LED dan satu push-button

Kondisi saat kedua push-button sebelum ditekan Kondisi saat push-button ditekan

4. UJI KEEMPAT

Gambar hasil rangkaian empat LED dengan dua fungsi push-button :

Push-button pertama berfungsi sebagai menyalakan LED berkedip, dan push-button kedua

berfungsi sebagai LED berjalan dari kiri ke kanan.


Kondisi saat kedua push-button sebelum ditekan Kondisi saat push-button pertama setelah ditekan

Kondisi push-button kedua setelah ditekan, LED berjalan dari kiri ke kanan :

F. PEMBAHASAN

Pada praktikum ini membahas tentang percobaan push-button pada LED dengan

menggunakan alat dan aplikasi program Arduino ATMega2560. Push button berfungsi sebagai saklar
seperti memerintahkan program yang tersedia di program di Arduino tersebut, menyalakan dan

memutuskan LED yang tertera pada program tersebut.

Praktikum pertama melakukan program menyalakan satu buah LED dengan satu buah push-

button. Dimana output terletak di pin 13 (const int ledPin=13) sebagai memanggil perintah untuk

LED, dan input pada pin 5 (cons tint inputPin=5) sebagai perintah memanggil program untuk push-

button. Pada program membuat perintah menggunakan fungsi if yang berfungsi memilih suatu

percabangan dalam program. Nilai Val bisa HIGH atau LOW, artinya jika HIGH maka menyala dan

LOW maka mati. Sedangkan fungsi digitalRead() berfungsi untuk membaca nilai input yaitu push-

button pada Pin 5. Sebagai contoh pada program jika fungsi if nilai Val HIGH maka yang terbaca

pada LED akan mati, jika tidak (LOW) maka yang terbaca pada LED akan menyala setelah menekan

push-button.

Pada praktikum kedua menggunakan dua LED dan dua push-button. Berarti satu LED akan di

kontrol oleh satu push-button. Dengan menggunakan program yang sama seperti pada percobaan

pertama dimana pin yang digunakan lebih dari satu, sehingga menggunakan perintah unsigned int,

yang artinya digunakan untuk mendeklarasikan tipe data, yaitu 12 dan 13 untuk perintah output LED

diatur sebagai ledPin untuk pin output, 4 dan 5 untuk perintah input push-buttonnya yang diatur

sebagai inputPin untuk inputnya supaya HIGH. Pada bagian loop, mendeklarasi sebuah variabel

indeks. Kemudian dilakukan pengulangan dengan menggunakan pernyataan for. Nilai inisiasi awal

untuk variabel indeks = 0, kemudian dilakukan test kondisi indeks < 2, artinya selama nilai variabel

indeks < 2, pengulangan terus dilakukan artinya semua LED terprogram secara bersamaan pada satu

instruksi. Variabel indeks merupakan pernyataan yang diulang-ulang secara teratur. Pada bagian loop,

membaca nilai input push-button. Jika kedua push-button ditekan maka dua LED akan menyala

bersamaan dan jika tidak ditekan maka LED akan LOW alias mati. Namun, jika push-button pertama

ditekan maka LED pertama akan menyala dan begitu berikutnya.

Kemudian praktikum ketiga menjalankan program empat LED menyala dengan satu buah

push-button. Sama dengan pada program praktikum kedua diatas tetapi dengan menambah perintah
dekalarasi ledPin dengan empat buah LED, pada pin output di pin 10, 11, 12, 13 dengan input push-

button di pin 5. Dan mengubah indeks < 2 menjadi indeks < 4 karena menggunakan empat buah LED

program. Dalam program ini ketika ditekankan push-button maka akan menyala keempat LED-nya.

Selanjutnya pada praktikum keempat menggunakan empat buah LED dan dua push button

dengan fungsi push-button yang berbeda-beda. Push button pertama difungsikan untuk program

perintah menyalakan LED ketika push-button itu ditekankan. Sedangkan push-button yang kedua

berfungsi sebagai program LED berjalan dari kiri ke kanan. Pada deklarasi program unsigned int

inputPin dibuat untuk program LED menyala, sedangkan unsigned int inputPin1 sebagai deklarasi

program LED berjalan, dan unsigned int ledPin untuk perintah output LED. Kemudian pada program

digitalRead berfungsi untuk membaca perintah (nilai) yang sudah diprogramkan pada Arduino dari

pin digital tertentu. Berarti dalam praktikum ini dibuat dua program yang diperintahkan yaitu program

menyalakan LED dan program LED berjalan. Jadi, artinya program Val dan digitalRead akan dibuat

secara terpisah.

G. KESIMPULAN

1. Sakelar atau push-button berfungsi sebagai penghubung atau pemutus aliran arus listrik dan diatur

HIGH atau LOW yang disambungkan dengan LED sebagai indikator fungsi saklar.

2. Pengambilan data pada saklar dan LED disesuaikan dengan pada bagian deklarasi awal, bagian

setup, dan bagian loop. Logika program harus sesuai pada masing-masing bagian.

3. Pada digitalRead berfungsi untuk membaca perintah (nilai) yang sudah diprogram pada arduino

dari pin digital tertentu (HIGH atau LOW).

4. Fungsi if adalah membandingkan dua kondisi logika.

5. Fungsi for adalah proses inkremental/dekremental, pengulangan suatu blok program.

Anda mungkin juga menyukai