sesi 6 aplikasi keypad
TRANSCRIPT
-
7/25/2019 Sesi 6 Aplikasi Keypad
1/17
Aplikasi Mikrokontroler
[KT015]
Oleh : Akhmad Musafa, M.T.
Teknik Elektro Fakultas Teknik
Universitas Budi Luhur
-
7/25/2019 Sesi 6 Aplikasi Keypad
2/17
Sesi 6 :
Aplikasi Keypad
-
7/25/2019 Sesi 6 Aplikasi Keypad
3/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 3
Tujuan Pembelajaran
Setelah mempelajari bab ini, mahasiswa dapat :
Mengetahui dan memahami interfacingmikrokontroler dengan keypad.
Mengetahui dan memahami prinsip dasar
pemrograman mikrokontroler AVR untuk aplikasikeypad.
Merancang dan membuat program aplikasi
keypad dengan mikrokontroler AVR.
-
7/25/2019 Sesi 6 Aplikasi Keypad
4/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 4
Pokok Bahasan
Konsep Interfacing Mikrokontroler AVR
dengan Keypad
Pemrograman Aplikasi Keypad
-
7/25/2019 Sesi 6 Aplikasi Keypad
5/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 5
Interfacing Mikrokontroler AVR
dengan Kepad
Jenis Kwypad :
3 kolom x 4 baris
4 kolom x 4 baris 1 2 3
4 5 6
7 8 9
0 #
BARIS 1
BARIS 2
BARIS 3
BARIS 4
KOLOM 1 KOLOM 2 KOLOM 3
*
-
7/25/2019 Sesi 6 Aplikasi Keypad
6/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 6
Skematik Rangkaian Internal
Keypad 4 x 41 2 3
4 5 6
7 8 9
* 0 #
PORT uC
PORT uC
PORT uC
PORT uC
PORT
uC
PORT
uC
PORT
uC
1 2 3
4 5 6
7 8 9
0 #
BARIS 1
BARIS 2
BARIS 3
BARIS 4
KOLOM 1 KOLOM 2 KOLOM 3
*
-
7/25/2019 Sesi 6 Aplikasi Keypad
7/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 7
Teknik Pemrograman
Baris dan kolom dari keypad dihubungkan
dengan port mikrokontroler.
Dalam kasus ini, salah satu dari baris atau
kolom dijadikan sebagai input data(menerima data dari mikrokontroler) dan
yang lainnya sebagai output data
(mengirimkan data ke mikrokontrolerketika ada tombol yang ditekan)
-
7/25/2019 Sesi 6 Aplikasi Keypad
8/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 8
Contoh Kasus
Keypad dihubungkan dengan PORTB mikrokontroler
Baris digunakan sebagai input sedangkan kolomdigunakan sebagai output
PORTB.0
PORTB.1
PORTB.2
PORTB.3
PORTB.7
PORTB.6
PORTB.5
1 2 3
4 5 6
7 8 9
0*#
-
7/25/2019 Sesi 6 Aplikasi Keypad
9/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 9
Teknik Pembacaan Data Keypad (1)
Langkah 1 :
Pengecekan baris 1 Set kondisi PORTB =
11111110
Baca kondisi PORTB
(cek kolom keypad) : Jika PB.7 = 0, maka
tombol 1 ditekan
Jika PB.6 = 0, maka
tombol 2 ditekan Jika PB.5 = 0, maka
tombol 3 ditekan
PB.0 = 0
PB.1 = 1
PB.2 = 1
PB.3 = 1
PB.7=1
PB.6=1
PB.5=1
1 2 3
4 5 6
7 8 9
0*#
-
7/25/2019 Sesi 6 Aplikasi Keypad
10/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 10
Teknik Pembacaan Data Keypad (2)
Langkah 2 :
Pengecekan baris 2 Set kondisi PORTB =
11111101
Baca kondisi PORTB (cek
kolom keypad) : Jika PB.7 = 0, maka
tombol 4 ditekan
Jika PB.6 = 0, maka
tombol 5 ditekan
Jika PB.5 = 0, maka
tombol 6 ditekan
PB.0 = 1
PB.1 = 0
PB.2 = 1
PB.3 = 1
PB.7=1
PB.6=1
PB.5=1
1 2 3
4 5 6
7 8 9
0*#
-
7/25/2019 Sesi 6 Aplikasi Keypad
11/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 11
Teknik Pembacaan Data Keypad (3)
Langkah 3 :
Pengecekan baris 3 Set kondisi PORTB =
11111011
Baca kondisi PORTB
(cek kolom keypad) : Jika PB.7 = 0, maka
tombol 7 ditekan
Jika PB.6 = 0, maka
tombol 8 ditekan Jika PB.5 = 0, maka
tombol 9 ditekan
PB.0 = 1
PB.1 = 1
PB.2 = 0
PB.3 = 1
PB.7=1
PB.6=1
PB.5=1
1 2 3
4 5 6
7 8 9
0*#
-
7/25/2019 Sesi 6 Aplikasi Keypad
12/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 12
Teknik Pembacaan Data Keypad (4)
Langkah 4 :
Pengecekan baris 4 Set kondisi PORTB =
11110111
Baca kondisi PORTB
(cek kolom keypad) : Jika PB.7 = 0, maka
tombol * ditekan
Jika PB.6 = 0, maka
tombol 0 ditekan Jika PB.5 = 0, maka
tombol # ditekan
PB.0 = 1
PB.1 = 1
PB.2 = 1
PB.3 = 0
PB.7=1
PB.6=1
PB.5=1
1 2 3
4 5 6
7 8 9
0*#
-
7/25/2019 Sesi 6 Aplikasi Keypad
13/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 13
Rangkaian
1
abcd
efgdp
PA0 (ADC 0)
PA1 (ADC 1)
PA2 (ADC 2)
PA3 (ADC 3)
PA4 (ADC 4)
PA5 (ADC 5)
PA6 (ADC 6)
PA7 (ADC 7)
PC1 (SDA)
PC2 (TCK)
PC3 (TMS)
PC4 (TDO)
PC5 (TDI)
PC6 (TOSC1)
PC7 (TOSC2)
PC0 (SCL)
PB0 (XCK / T0)
PB1 (T1)
PB2 (AIN0 / INT2
PB3 (AIN1 / OC0)
PB4 (SS)
PB5 (MOSI)
PB6 (MISO)
PB7 (SCK)
PD1 (TXD)
PD2 (INT0)
PD3 (INT1)
PD4 (OC1B)
PD5 (OC1A)
PD6 (ICP)
PD7 (OC2)
PD0 (RXD)
ATMEG
A8535
RESET
XTAL2
XTAL1
VCC
4K7
10nF
XTAL
11.0592
MHz 22pF22pF
VCC
AVCC
AREF
GND
GND
VCC
40
39
38
37
3635
34
33
22
23
24
2526
27
28
29
1
2
3
4
56
7
8
14
15
16
1718
19
20
21
9
12
13
10
30
3231
11
2
4
6
5
10
7
9
VCC
1 2 3
4 5 6
7 8 9
* 0 #
-
7/25/2019 Sesi 6 Aplikasi Keypad
14/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 14
Flowchartstart
inisialisasi port
7 segmen blank
tampilkan 1Tombol 1 ?
tampilkan 2Tombol 2 ?
Aktifkan baris 1
tampilkan 3Tombol 3 ?
tampilkan 7Tombol 7 ?
tampilkan 8Tombol 8 ?
Aktifkan baris 3
tampilkan 9Tombol 9 ?
A
Y
T
Y
T
Y
Y
T
Y
T
Y
delay delay
tampilkan 4Tombol 4 ?
tampilkan 5Tombol 5 ?
Aktifkan baris 2
tampilkan 6Tombol 6 ?
A
tampilkan ATombol * ?
tampilkan 0Tombol 0 ?
Aktifkan baris 4
tampilkan BTombol # ?
Y
T
Y
T
Y
T
Y
T
Y
T
Y
T
delay delay
B
B
T T
-
7/25/2019 Sesi 6 Aplikasi Keypad
15/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 15
Tugas
1) Gambarkan dan buat skematik rangkaian
minimum sistem mikrokontrolerATmega8535 dengan input keypad 3x4
(3 kolom 4 baris) dihubungkan dengan
PORTC dan 8 buah 7 segmen common
anoda dihubungkan dengan PORTD !
-
7/25/2019 Sesi 6 Aplikasi Keypad
16/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 16
2) Buatlah flowchart dan program (assembly danbahasa C) untuk kasus berikut : Ketika program pertama kali aktif (keypad tidak
ditekan), display 7 segmen menampilkan inisial namaAnda.
Jika tombol angka 0,1,2,3,4,5,6,7,8, dan 9 padakeypad ditekan maka display 7 segmen paling kirimenampilkan angka tersebut !
Jika tombol * pada keypad ditekan, display 7 segmensebelah kiri menampilkan tulisan ELEKTRO yang
berkedip-kedip. Jika tombol # pada keypad ditekan, display 7 segmen
menampilkan tulisan FT-UBL yang berkedip-kedip.
-
7/25/2019 Sesi 6 Aplikasi Keypad
17/17
Aplikasi Mikrokontroler Sesi-5 : Aplikasi 7 Segmen 17
Terima kasihTerima kasihTerima kasihTerima kasih!!!!