I. Tujuan Praktikum
· Praktikan mempelajari fungsi keyped
· Praktikan membuat program untuk memeriksa tombol yang ditekan pada keyped.
II. Teori Dasar
Keyped adalah kumulan beberapa switch yang tersusun atas baris dan kolom, yang mempunyai sifat yang unik yaitu kolom barisnya tidak dapat diubah. Dalam melakukan proses pembacaan dan penggiriman data keyped dapat bekerja dengan menggunakan dua metode, yaitu metoda scanning dan poling. Keyped pada AT89S52 yang kita gunakan menggunakan metoda scanning yang berfungsi untuk menerima input tombol keyped serta menampilkan digit atau karakter yang diinginkan kealat penampil serta seven segment atau LCD.
Berikut ini merupakan gambar rangkaian dari keyped :
Pada rangkaian diatas menggunakan beberapa resistor pull up, hal ini dilakukan agar tidak terjadi tegangan ambang. Berikut gambar rangkaian dari resistor pull up :
III. Tugas Pendahuluan
1. Jelaskan cara kerja keyped AT89S52 !
Keyped pada AT89S52 yang kita gunakan menggunakan metoda scanning yang berfungsi untuk menerima input tombol keyped serta menampilkan digit atau karakter yang diinginkan kealat penampil serta seven segment atau LCD.
2. Jelaskan perbedaan antara resistor pull up dengan resistor pull down, sertakan dengan gambar masing – masing !
Resistor pull up adalah salah satu dari jalan yang yang paling umum untuk menghubungkan suatu tombol kepada suatu logika masuk seperti suatu I/O tujuan umum memasang dengan peniti suatu microcontroller. Kebanyakan masukan memerlukan yang voltase jadilah di atas ambang pintu beberapa atau di bawah beberapa ambang pintu. Jika sirkit hanya diputus masukan akan diijinkan untuk mengapung dan it'd jadilah terkaan sesiapapun apa yang nilai masukan peniti/lencana akan di dalam chip.
Resistor pull down adalah Listrik bertindak sedikit seperti air insomuch bahwa itu akan mengalir ke tempat mana [itu] menghadapi pembalasan paling sedikit [itu]. Ketika suatu tombol TUTUP ia/nya tidak punya pembalasan- dalam hal ini yang sekarang akan mengalir sepanjang tombol [itu] [karena;sejak] [itu] mempunyai lebih sedikit pembalasan dibanding pull-up/down resistor [kita/kami]. Ketika tombol bersikap terbuka [itu] mempunyai pembalasan tanpa batas- dalam hal ini yang sekarang akan mengalir sepanjang pull-up/down resistor [kita/kami] untuk + 5V atau GND [yang] maka.
3. Analisa listing program 1 yang terdapat pada prosedur percobaan dan buat flowchartnya !
4. Download aplikasi yang berhubungan dengan keyped AT8S52! Sertakan sumbernya !
IV. Prosedur Percobaan
· Percobaan 1
$regfile
Dim cnt as byte
Dim dta as byte
Dim chrl as string * 2
Do
Call scan ()
Call angka ()
Cnt = val (charl)
Cnt = cnt or &B01110000
P0 = cnt
Waitms 1
Loop
End
Sub scan ()
‘============== scan 1================
P3 = &HFF
P3.4 = 0
P3.5 = 1
P3.6 = 1
P3.7 = 1
Waitms 1
Cnt = p3
Cnt = cnt and &HOF
If cnt < > &H0F then
Dta = p3
P2 = dta
Goto pass
End if
‘==============================
‘==============================
P3 = &HFF
P3.4 = 1
P3.5 = 0
P3.6 = 1
P3.7 = 1
Waitms 1
Cnt = P3
Cnt = cnt and &H0F
If cnt < > &H0F then
Dta = P3
P2 = dta
Goto pass
End if
‘==============================
‘===========scan 3==============
P 3 = &HFF
P3.4 = 1
P3.5 = 0
P3.6 = 1
P3.7 = 1
Waitms 1
Cnt = P3
Cnt = cnt and &H0f
If cnt < > &HOF then
Dta = p3
P2 = dta
Goto pass
End if
‘============================
‘=========scan 4==============
P3 =&HFF
P3.4 = 1
P3.5 = 1
P3.6 = 1
P3.7 = 0
Waitms 1
Cnt = P3
Cnt =cnt and &H0F
If cnt < > &H0F then
Dta = p3
P2 = dta
Goto pass
End if
‘============================
End sub
Sub angka ( )
Select case dta
Case 238 :
Chrl = ”1”
Case 222:
Chrl =”2”
Case 190 :
Chrl = ”3”
Case 237 :
Chrl = ”4”
Case 221 :
Chrl = ”5”
Case 189 :
Chrl = ”6”
Case 235 :
Chrl = ”7”
Case 219 :
Chrl = ”8”
Case 187 :
Chrl = ”9’’
Case 215 :
Chrl = ”0”
End select
End sub
· Percobaan 2
$regfile
Dim seven as byte,cnt as byte, dta as byte
Do
P3 = &HFF
P3.4 = 0
P3.5 = 1
P3.6 = 1
P3.7 = 1
Waitms 10
Cnt = p3
Cnt = cnt and &H0F
If cnt < > &H0F then
Select case cnt
Case 14 : dta = 1
Case 13: dta = 4
Case 11 : dta = 7
Case 7 : dta = &H0A
End select
End if
‘===========================
P3 = &HFF
P3.4 = 1
P3.5 = 0
P3.6 = 1
P3.7 = 1
Waitms 10
Cnt = p3
Cnt cnt and &H0f
If cnt < > &H0f then
Select case cnt
Case 14 : dta =
Case 13: dta = 4
Case 11 : dta = 7
Case 7 : dta = &H0A
End select
End if
‘===========================
P3 = &HFF
P3.4 = 1
P3.5 = 0
P3.6 = 1
P3.7 = 1
Waitms 10
Cnt = p3
Cnt cnt and &H0f
If cnt < > &H0f then
Select case cnt
Case 14 : dta =
Case 13: dta = 4
Case 11 : dta = 7
Case 7 : dta = &H0A
End select
End if
‘===tampilkan dta seven segment ====
‘========= kolom 1 ===========
If dta = 1 then
P0 = 1 or &B11100000
Waitms 1
End if
If dta = 4 then
P0 = 4 or &B11100000
Waitms 1
End if
If dta = 7 then
P0 = 7 or &B11100000
Waitms 1
End if
‘=========kolom 2 =========
If dta = 2then
P0 = 2 or &B11010000
Waitms 1
End if
If dta = 5 then
P0 = 5 or &B11010000
Waitms 1
End if
If dta = 8 then
P0 = 8or &B11010000
Waitms 1
End if
If dta = 0 then
P0 = 0 or &B11010000
Waitms 1
End if
‘==========kolom 3===========
If dta = 3 then
P0 = 3 or &B10110000
Waitms 1
End if
If dta = 6 then
P0 = 6 or &B11010000
Waitms 1
End if
If dta = 9 then
P0 = 9 or &B11010000
Waitms 1
End if
Loop
End
No comments:
Post a Comment