PRAKTIKUM 2
MEMBACA TOMBOL TEKAN
MEMBACA TOMBOL TEKAN
2.1 Tujuan Instruksional
Khusus
·
Dapat
mengetahui cara kerja tombol tekan
·
Dapat
melakukan interface mikroprosesor dengan input tombol tekan
·
Dapat
melakukan pemrograman mikrokontroler untuk mengakses input tombol tekan
2.2 Dasar Teori
Tombol Tekan
Tombol tekan dapat digunakan untuk memberikan masukan
ke mikrokntroler. Prinsip kerja
yang sederhana untuk membaca tombol
tekan ini nantinya dapat Anda kembangkan untuk membaca piranti masukan lain
seperti sensor-sensor.
Tombol tekan merupakan sebuah piranti masukan
mekanis yang berfungsi untuk memberikan data kepada mikrokontroler. Terdapat
dua macam tombol, yaitu tombol tekan geser dan tombol tekan tekan.
Cara menghubungkan tombol tekan ke mikrokontroler seperti
yang ditunjukkan pada Gambar 2.3. Dengan cara pertama (a), Anda dapat menghubungkan
tombol tekan ke port mikrokontroler yang mempunyai resistor pull-up
internal. Pada lembar
data, disebutkan bahwa port 1, port 2, dan port 3 memiliki resistor
pull-up internal sedangkan
port 0 tidak.
Bila tombol tekan pada
posisi terbuka maka logika yang dibaca oleh mikrokontroler adalah 1
karena resistor pull-up internal bekerja. Sedangkan saat tombol tekan pada
posisi tertutup maka logika yang dibaca oleh mikrokontroler adalah 0.
Cara kedua (b) sama seperti cara pertama. Resistor pull- up eksternal
yang dipasang memungkinkan kita untuk menghubungkannya ke port 0. Cara ketiga
(c) juga dapat
dihubungkan ke port
manapun dengan logika
kerja yang berkebalikan dengan
cara pertama maupun
cara kedua. Pada
cara ketiga terdapat kekurangan yaitu bila dihubungkan ke
port yang mempunyai resistor pull-up internal maka akan selalu timbul arus yang
mengalir dari port ke ground.
(A) (B) (C)
Gambar 2.3. Menghubungkan tombol tekan ke mikokontroler
Saat
Anda menekan atau
menggeser tombol, pulsa
yang dihasilkan tidak
berbentuk persegi yang halus
tetapi mempunyai sedikit
getaran. Ini disebabkan
karena tombol adalah peralatan
mekanis dimana pelat-pelat
logamnya bergetar sebentar
setelah bertabrakan atau terlepas.
Perhatikan gambar 2.4.
Getaran tersebut dikenal
dengan istilah efek bouncing.
Efek bouncing ini
dapat mengganggu kinerja
mikrokontroler saat
mengambil nilai logika
saklar. Getaran yang
terjadi dapat menimbulkan
nilai logika saklar yang berubah dengan cepat.
Gambar 2.4. Efek bouncing yang muncul pada saklar
mekanis
2.3 Daftar
alat dan bahan
1. Software Proteus 7
2. Software MIDE-51
3. Unit Komputer
2.4 Keselamatan
Kerja
1. Menggunakan
pakaian praktikum dengan baik dan rapi
2. Sambungkan
perangkat-perangkat yang digunakan sesuai dengan petunjuk pembimbing praktikum
3. Jalankan
sistem setelah mendapat izin dari pembimbing praktikum.
4. Bila
praktikum telah selesai, maka bongkar
semua perangkat yang digunakan dan simpan pada tempat semula dengan rapi
2.5. Gambar
Kerja
Gambar 2.5. Rangkaian
interface input tombol / output LED
2.6 Program Mikrokontroler
Program 1.
ORG 0000h
|
||
Loop:
|
MOV A,P2
|
;ambil nilai saklar
|
MOV P1,A
|
;keluarkan
ke LED
|
|
SJMP loop
|
;ulangi
proses terus menerus
|
Program 2.
ORG 0000h
|
||
Loop:
|
MOV A,P2
|
;ambil nilai saklar
|
CJNE A,#0F7h,tidaksama
|
;apakah nilai tombol = 4 ?
|
|
MOV A,#0FFh
|
;ya, siapkan A
dengan FFh
|
|
SJMP LED
|
;lompat ke label
LED
|
|
Tidaksama:
|
MOV A, #00
|
;tidak, siapkan
A dengan 0
|
LED:
|
MOV P1,A
|
;nyalakan led
dengan nilai A
|
SJMP loop
|
;ulangi
proses terus menerus
|
Program 3.
ORG 0000h
|
||
Mov A,#1
|
; nilai awal
|
|
Loop:
|
Mov p1,A
|
; nyalakan LED pada posisi A
|
Baca:
|
Mov C,P2.0
|
; baca tombol bit ke-0
|
JC Baca
|
: ulangi sampai saklar ditekan
|
|
Tambah:
|
INC A
|
; increment acumulator
|
SJMP loop
|
; ulang menyalakan LED
|
Program 4.
ORG 0000h
|
||
MOV A,#1
|
; NILAI AWAL
|
|
LOOP:
|
MOV P1,A
|
; NYALAKAN LED PADA POSISI
|
TEKAN:
|
MOV C,P2.0
|
; BACA TOMBOL BIT KE-0
|
JC TEKAN
|
; ULANGI SAMPAI TOMBOL DITEKAN
|
|
LEPAS:
|
MOV C,P2.0
|
; BACA TOMBOL BIT KE-0
|
JNC LEPAS
|
; ULANGI SAMPAI SAKLAR
DI LEPAS
|
|
TAMBAH:
|
INC A
|
; increment acumulator
|
SJMP LOOP
|
; ulang menyalakan LED
|
2.7
Langkah Percobaan
a. Hubungkan LED ke
port 1 dan
saklar ke port
2 seperti pada Gambar 2.5.
b. Buat program untuk algoritma pada Gambar 2.6, seperti pada program 1 dan kompile serta jalankan program tersebut. Program ini
akan membaca nilai
saklar dan menampilkannya ke
LED.
c. Catat penunjukkan indikator LED untuk setiap penekanan tombol tekan
pada Tabel 2.1
d. Buat program untuk algoritma pada Gambar 2.7, seperti pada program 2 dan kompile serta jalankan program tersebut.
e. Catat penunjukkan indikator LED untuk setiap penekanan tombol tekan
pada Tabel 2.2
f. Buat program untuk algoritma pada Gambar 2.8,
seperti pada program 3 dan kompile serta
jalankan
program tersebut.
g. Catat penunjukkan indikator LED untuk setiap penekanan tombol tekan
pada Tabel 2.3
h. Buat program untuk algoritma pada Gambar 2.9, seperti pada program 4 dan kompile serta jalankan program tersebut.
i. Catat penunjukkan indikator LED untuk setiap penekanan tombol tekan
pada Tabel 2.4
2.8 Data
Tabel. 2.1
Hasil Program 1
Penekanan Tombol
|
Tampilan LED
|
|||||||
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
|
0
|
||||||||
1
|
||||||||
2
|
||||||||
3
|
||||||||
4
|
||||||||
5
|
||||||||
6
|
||||||||
7
|
Tabel. 2.2 Hasil Program 2
Penekanan
Tombol
|
Tampilan LED
|
|||||||
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
|
0
|
||||||||
1
|
||||||||
2
|
||||||||
3
|
||||||||
4
|
||||||||
5
|
||||||||
6
|
||||||||
7
|
Tabel. 2.3
Hasil Percobaan 3
Penekanan Tombol
|
Tampilan LED
|
|||||||
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
|
Data awal
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
1
|
||||||||
2
|
||||||||
3
|
||||||||
4
|
||||||||
5
|
||||||||
6
|
||||||||
7
|
Tabel. 2.4
Hasil Program 4
Penekanan Tombol
|
Tampilan LED
|
|||||||
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
|
Data awal
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
0
|
||||||||
1
|
||||||||
2
|
||||||||
3
|
||||||||
4
|
||||||||
5
|
||||||||
6
|
||||||||
7
|
2.9 Pertanyaan
a. Lakukan analisis terhadap hasil percobaan
b. Buatlah kesimpulan terhadap hasil analisis yang
telah dilakukan
c. Perhatikan apa saja perbedaan pada program 4
dengan program 3 terhadap hasilnya
d. Bagaimana alternatif lain yang dapat digunakan
pada program 3 agar hasilnya dapat serupa dengan hasil program 4
e. Buat konfigurasi nyala LED dalam bentuk berbeda untuk setiap penekanan
masing-masing tombol
Posted by 12:03 AM and have
0
comments
, Published at
No comments:
Post a Comment