sesi 6 aplikasi keypad

Upload: hendrian

Post on 25-Feb-2018

227 views

Category:

Documents


0 download

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!!!!