Anda di halaman 1dari 22

APLIKASI TOMBOL PUSH BUTTON

(Laporan Tugas Mikrokontroler)

Oleh
Jovizal Aristian
1217041025

JURUSAN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS LAMPUNG
BANDAR LAMPUNG
2015
HASIL DAN PEMBAHASAN

Push button adalah saklar tekan yang berfungsi sebagai pemutus atau
penyambung arus listrik dari sumber arus ke beban listrik. Suatu sistem saklar
tekan push button terdiri dari saklar tekan start, stop reset, dan saklar tekan untuk
emergency. Push button memiliki kontak NC (normally close) dan NO (normally
open). Prinsip kerja push button apabila dalam keadaan normal tidak ditekan
maka kontak tidak berubah, apabila ditekan maka kontak NC akan berfungsi
sebagai stop (memberhentikan) dan kontak NO akan berfungsi sebagai start
(menjalankan). Push button dibedakan menjadi beberapa tipe, yaitu:
a. Tipe Normally Open (NO)
Tombol ini disebut juga dengan tombol start karena kontak akan menutup bila
ditekan dan kembali terbuka bila dilepaskan. Bila tombol ditekan maka kontak
bergerak akan menyentuh kontak tetap sehingga arus listrik akan mengalir.

b. Tipe Normally Close (NC)


Tombol ini disebut juga dengan tombol stop karena kontak akan membuka bila
ditekan dan kembali tertutup bila dilepaskan. Kontak bergerak akan lepas dari
kontak tetap sehingga arus listrik akan terputus.

c. Tipe NC dan NO
Tipe ini kontak memiliki 4 buah terminal baut, sehingga bila tombol
tidakditekan maka sepasang kontak akan NC dan kontak lain akan NO, bila
tombol ditekan maka kontak tertutup akan membuka dan kontak yang
membuka akan tertutup

Alat yang dibuat pada percobaan ini adalah untuk mengaplikasikan tombol push
button tipe normally open sebagai masukkan untuk memberikan respon pada
keluaran rangkaian sistem minimum (sismin).
Ada 3 rangkaian yang akan dibuat pada percobaan ini, yaitu aplikasi push button
dengan led, aplikasi push button dengan 7 segment, dan aplikasi push button
dengan LCD. Percobaan dilakukan dengan simulasi software proteus dan untuk
aplikasi push button dengan LCD dibuat juga dalam bentuk real.

1. Aplikasi Push Button dengan Led

Percobaan pertama ini dilakukan untuk memberikan masukkan push button


pada PORT B mikrokontroler, dan keluarannya pada PORT A mikrokontroler.
Push button yang digunakan sebanyak 8, dan indikator led sebagai keluarannya
juga sebanyak 8. Langkah yang dilakukan adalah sebagai berikut:
a. Membuat simulasi rangkaian pada software proteus, sebagai berikut:

Push Button Led

Port B
Port A

Gambar 1. Rangkaian push button dengn Led

b. Membuat program untuk menghidupkan Led ketika push button ditekan,


pada software CV AVR. Program yang dibuat adalah sebagai berikut:
*****************************************************/
#include <mega8535.h>
// Declare your global variables here
void main(void)
{
PORTA=0x00;
DDRA=0xFF;
PORTB=0xFF;
DDRB=0x00;
while (1)
{
// Place your code here
PORTA = PINB;
}
}
Program yang dibuat bertujuan untuk menyalakan led pada PORT A ketika
push button pada PORT B ditekan. #include <mega8535.h>, untuk
menginisialisasi jenis atemega yang digunakan, PORTA=0x00;
DDRA=0xFF; untuk menginisialisasi keluaran pada PORT A agar led
menyala semua pada saat kondisi push button terhubung dan mati ketika
push button tidak terhubung. PORTB=0xFF; DDRB=0x00; bertujuan
untuk menginisialisasi PORT B pada saat kondisi high 1111 1111 ketika
push button tidak ditekan dan kondisi low 0000 0000 pada saat ditekan.
PORTA = PINB; bertujuan untuk memberikan perintah keluaran PORT A
untuk masukkan pada PORT B pada setiap pinnya.
c. Mendowload program dari CV AVR ke mikrokontroler dengan cara
melakukan double klik pada mikrokontroler, dan melakukan browse
program yang dibuat. Proses download program adalah sebagai berikut:

Klik disini untuk


browse program
yang dibuat

Gambar 2. Proses download program CV AVR dengan proteus

d. Langkah terakhir yaitu melakukan running pada rangkaian yang dibuat.


Hasil yang diperoleh pada saat dilakukan running adalah sebagai berikut:
Gambar 3. Hasil running pada saat semua push button dalam keadaan
tidak terhubung

Gambar 4. Hasil running pada saat push button PINB.0 dalam keadaan
terhubung

Gambar 5. Hasil running pada saat push button PINB.1 dalam keadaan
terhubung
Gambar 6. Hasil running pada saat push button PINB.2 dalam keadaan
terhubung

Gambar 7. Hasil running pada saat push button PINB.3 dalam keadaan
terhubung

Gambar 8. Hasil running pada saat push button PINB.4 dalam keadaan
terhubung
Gambar 9. Hasil running pada saat push button PINB.5 dalam keadaan
terhubung

Gambar 10. Hasil running pada saat push button PINB.6 dalam keadaan
terhubung

Gambar 11. Hasil running pada saat push button PINB.7 dalam keadaan
terhubung
Gambar 12. Hasil running pada saat semua push button dalam keadaan
terhubung

2. Aplikasi Push Button dengan 7 Segment

Percobaan kedua dilakukan untuk memberikan masukkan push button pada


PORT B mikrokontroler, dan keluarannya pada PORT A mikrokontroler seperti
pada percobaan pertama, namun keluarannya digunakan indikator 7 segment.
Push button yang digunakan sebanyak 8, dan 1 buah 7 segment. Langkah yang
dilakukan adalah sebagai berikut:
a. Membuat simulasi rangkaian pada software proteus, sebagai berikut:

Gambar 13. Rangkaian push button dengn 7 segment

b. Membuat program untuk menampilkan angka pada 7 segment, ketika push


button ditekan, pada software CV AVR. Program yang dibuat adalah
sebagai berikut:
*****************************************************/

#include <mega8535.h>
void main(void)
{
PORTA=0x00;
DDRA=0xFF;
PORTB=0xFF;
DDRB=0x00;
while (1)
{
// Place your code here
if(PINB.0==0) PORTA=0x79;
if(PINB.1==0) PORTA=0x24;
if(PINB.2==0) PORTA=0x30;
if(PINB.3==0) PORTA=0x19;
if(PINB.4==0) PORTA=0x12;
if(PINB.5==0) PORTA=0x02;
if(PINB.6==0) PORTA=0x78;
if(PINB.7==0) PORTA=0x00;
if(PINB==255) PORTA=0x40;
}
}

Program yang dibuat bertujuan untuk menampilkan angka 1 sampai dengan


8 menggunakan 7 segment. Percobaan ini masih menggunakan atemega
8535. Masukkan nya dari PORT B sehingga diaktifkan dengan
PORTB=0xFF; DDRB=0x00;, artinya ketika push button belum
dihubungkan maka setiap PORT B dalam keadaan high sebaliknya jika push
button ditekan dalam keadaan terhubung maka PORT B dalam keadaan low.
Sedangkan untuk mengaktifkan PORT A diberikan kode PORTA=0x00;
DDRA=0xFF; artinya ketika push button belum dihubungkan maka setiap
PORT A dalam keadaan low sebaliknya jika push button ditekan dalam
keadaan terhubung maka PORT A dalam keadaan high. Selanjutnya kode
if(PINB.0==0) PORTA=0x79; yang berarti ketika PINB.0 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 79
dalam bilangan biner 0111 1001, yang menunjukkan angka 1. Kode
if(PINB.1==0) PORTA=0x24; yang berarti ketika PINB.1 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 24
dalam bilangan biner 0010 0100, yang menunjukkan angka 2. Kode
if(PINB.2==0) PORTA=0x30; yang berarti ketika PINB.2 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 30
dalam bilangan biner 0011 0000, yang menunjukkan angka 3. kode
if(PINB.3==0) PORTA=0x19; yang berarti ketika PINB.3 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 19
dalam bilangan biner 0001 1001, yang menunjukkan angka 4. Kode
if(PINB.4==0) PORTA=0x12; yang berarti ketika PINB.4 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 12
dalam bilangan biner 0001 0010, yang menunjukkan angka 5. Kode
if(PINB.5==0) PORTA=0x02; yang berarti ketika PINB.5 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 02
dalam bilangan biner 0000 0010, yang menunjukkan angka 6. Kode
if(PINB.6==0) PORTA=0x78; yang berarti ketika PINB.6 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 78
dalam bilangan biner 0111 1000, yang menunjukkan angka 7. Kode
if(PINB.7==0) PORTA=0x00; yang berarti ketika PINB.7 dalam keadaan
terhubung yaitu kondisi low maka akan menyala pada 7 segment led 00
dalam bilangan biner 0000 0000, yang menunjukkan angka 8. Terakhir kode
if(PINB.==255) PORTA=0x40; yang berarti ketika semua push button pada
PINB dalam keadaan tidak terhubung, yaitu kondisi high maka akan
menyala pada 7 segment led 40 dalam bilangan biner 0100 0000, yang
menunjukkan angka 0.

c. Selanjutnya dilakukan download program CV AVR ke mikrokontroler


seperti pada percobaan pertama. Langkah terakhir melakukan running pada
rangkaian yang dibuat. Hasil yang diperoleh adalah sebagai berikut:

Gambar 14. Hasil running pada saat push button dalam keadaan tidak terhubung
Gambar 15. Hasil running pada saat push button PINB.0 dalam keadaan
terhubung

Gambar 16. Hasil running pada saat push button PINB.1 dalam keadaan
terhubung

Gambar 17. Hasil running pada saat push button PINB.2 dalam keadaan
terhubung
Gambar 18. Hasil running pada saat push button PINB.3 dalam keadaan
terhubung

Gambar 19. Hasil running pada saat push button PINB.4 dalam keadaan
terhubung

Gambar 20. Hasil running pada saat push button PINB.5 dalam keadaan
terhubung
Gambar 21. Hasil running pada saat push button PINB.6 dalam keadaan
terhubung

Gambar 22. Hasil running pada saat push button PINB.7 dalam keadaan
terhubung

3. Aplikasi Push Button dengan LCD

Percobaan ketiga dilakukan untuk memberikan masukkan push button pada


PORT B mikrokontroler, dan keluarannya pada PORT A mikrokontroler seperti
pada percobaan sebelumnya, namun keluarannya menggunakan indikator LCD.
Percobaan ini dilakukan dengan menggunakan simulasi software proteus dan
dibuat secara real menggunakan sismin.
1) Simulasi pada software proteus
Langkah yang dilakukan yaitu:
a. Membuat rangkaian push button dan LCD sebagai berikut:

Gambar 23. Rangkaian push button dengan LCD pada proteus


b. Membuat program untuk menampilkan respon dari push button pada
LCD. Program yang dibuat adalah sebagai berikut:
/*****************************************************
#include <mega8535.h>
#include <stdio.h>
#asm
.equ __lcd_PORT=0x15;PORTC
#endasm
#include <lcd.h>
unsigned int temp=15;
char buf[33];
void main(void)
{
PORTB=0xFF;
DDRB=0x00;
lcd_init(16);
while (1)
{
// Place your code here
if(PINB.0==0) temp=1;
if(PINB.1==0) temp=2;
if(PINB.2==0) temp=3;
if(PINB.3==0) temp=4;
if(PINB.4==0) temp=5;
if(PINB.5==0) temp=6;
if(PINB.6==0) temp=7;
if(PINB.7==0) temp=8;
if(PINB==255) temp=0;
lcd_gotoxy (0,0);
sprintf(buf,"Data = %d",temp);
lcd_puts(buf);

} ;
}
Program yang dibuat menggunakan CV AVR, dan mikrokontroler yang
digunakan adalah jenis atemega 8535. Push button yang digunakan
sebanyak 8, yang brfungsi sebagai masukkan pada PORT B. Sedangkan
keluarannya menggunakan LCD pada PORT C. PORT B sebagai
masukkan merupakan aktif low sehingga ketika push button belum
ditekan maka kondisi PORT B dalam keadaan high, namun ketika push
button ditekan maka PORT B dalam keadaan low. Untuk mengaktifkan
LCD pada PORT C maka harus dituliskan kode .equ
__lcd_PORT=0x15;PORTC. Kode if(PINB.0==0) temp=1; akan
menampilkan angka 1 pada saat PINB.0 terhubung atau dalam keadaan
low. Kode if(PINB.1==0) temp=2; akan menampilkan angka 2 pada saat
PINB.1 terhubung atau dalam keadaan low. Kode if(PINB.2==0)
temp=3; akan menampilkan angka 3 pada saat PINB.2 terhubung atau
dalam keadaan low. Kode if(PINB.3==0) temp=4; akan menampilkan
angka 4 pada saat PINB.3 terhubung atau dalam keadaan low. Kode
if(PINB.4==0) temp=5; akan menampilkan angka 5 pada saat PINB.4
terhubung atau dalam keadaan low. Kode if(PINB.5==0) temp=6; akan
menampilkan angka 6 pada saat PINB.5 terhubung atau dalam keadaan
low. Kode if(PINB.6==0) temp=7; akan menampilkan angka 7 pada saat
PINB.6 terhubung atau dalam keadaan low. Kode if(PINB.7==0)
temp=8; akan menampilkan angka 8 pada saat PINB.7 terhubung atau
dalam keadaan low. Selanjutnya kode if(PINB==255) temp=0; akan
menampilkan angka 0 pada saat semua tombol pada push button dalam
keadaan tidak terhubung.
c. Langkah selanjutnya melakukan download program ke rangkaian
mikrokontroler dan melakukan running. Hasil running yang diperoleh
adalah sebagai berikut:

Gambar 24. Hasil running pada saat semua push button tidak terhubung

Gambar 25. Hasil running pada saat push button PINB.0 terhubung
Gambar 26. Hasil running pada saat push button PINB.1 terhubung

Gambar 27. Hasil running pada saat push button PINB.2 terhubung

Gambar 28. Hasil running pada saat push button PINB.3 terhubung
Gambar 29. Hasil running pada saat push button PINB.4 terhubung

Gambar 30. Hasil running pada saat push button PINB.5 terhubung

Gambar 31. Hasil running pada saat push button PINB.6 terhubung
Gambar 32. Hasil running pada saat push button PINB.7 terhubung

2) Pembuatan alat secara real.


Setelah dilakukan simulasi dengan menggunakan software proteus, maka
dilakukan pembuatan alat dengan menggunakan sismin pada PCB.
Rangkaian sismin yang dibuat adalah sebagai berikut:

PORT B
Keramikl PORT D

IC 7805
Elco 10 uF

Terminal catu daya


PORT A
Atmega 8535 PORT C
Gambar 32. Rangkaian sismin
Rancangan alat yang dibuat adalah sebagai berikut:

Push Button
Sismin

Catu
daya

LCD

Gambar 33. Rancangan alat

Langkah selanjutnya melakukan download program yang dibuat pada CV


AVR pada mikrokontroler menggunakan ISP. Setelah selesai dilakukan uji
coba dengan menekan tombol push button dan melihat respon keluarannya
pada LCD. Keluaran yang ditampilkan pada LCD harus sama dengan
keluaran yang ditampilkan pada saat membuat rangkaian dengan
menggunakan software poroteus. Hasil yang ditampilkan saat dilakukan
pengujian adalah sebagai berikut:
6 7 8

3 4 5
1 2
Gambar 34. Tombol push button

Gambar 35. Data yang ditampilkan pada saat semua tombol push button
tidak ditekan
Gambar 36. Data yang ditampilkan pada saat tombol push button PINB.0
ditekan

Gambar 37. Data yang ditampilkan pada saat tombol push button PINB.1
ditekan

Gambar 38. Data yang ditampilkan pada saat tombol push button PINB.2
ditekan
Gambar 39. Data yang ditampilkan pada saat tombol push button PINB.3
ditekan

Gambar 40. Data yang ditampilkan pada saat tombol push button PINB.4
ditekan

Gambar 41. Data yang ditampilkan pada saat tombol push button PINB.5
ditekan
Gambar 41. Data yang ditampilkan pada saat tombol push button PINB.6
ditekan

Gambar 42. Data yang ditampilkan pada saat tombol push button PINB.7
ditekan

Anda mungkin juga menyukai