Anda di halaman 1dari 11

JOBSHEET PRAKTIKUM 4

DISPLAY SEVEN SEGMENT DENGAN INPUT KEYPAD PADA


MIKROKONTROLER ATMEGA16

Guru Matapelajaran:
Nihayatul Fitriyah

SEKOLAH MENENGAH KEJURUAN NEGERI 1JABON


JURUSAN TEKNIK ELEKTRONIKA INDUSTRI
OKTOBER 2015
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
Judul : DISPLAY SEVEN SEGMENT DENGAN INPUT KEYPAD MIKROKONTROLLER Atmega 16

A. Tujuan :
1. Memahami rangkaian display seven segment dengan input keypad mikrokontroler
ATmega16
2. Mengetahui dan memahami cara mengantarmukakan mikrokontroler dengan
keypad dengan output Steven segment
3. Mengetahui dan memahami bagaimana memrogram mikrokontroler untuk membaca
masukan dari keypad.
4. Memahami kode hexadecimal untuk digit angka pada mikrokontroler ATmega16
5. Membuat program penampil angka pada seven segment dengan input keypad
6. Membuat program counter angka pada seven segment dengan input keypad

B. Dasar Teori

Blok diagram system

Toggle
Keypad
Switch

input
output

PC Rangkaian
PC // LAPTOP
LAPTOP Rangkaian Rangkaian Seven segment
Downloader Minimum Sistem
Downloader

Keypad

Keypad merupakan tombol push button yang disusun sebagai baris dan kolom sehingga
membentuk matriks. Keypad banyak digunakan sebagai piranti masukan dalam piranti
elektronik. Gambar 1 memperlihatkan bentuk fisik keypad. Keypad ini memiliki 16 tombol yaitu
0,1,2,3,4,5,6,7,8,9,A,B,C, D,* dan #.

Gambar 1. Keypad 4x4

Halaman 2 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
Rangkaian Keypad pada ATmega16

Gambar 2. Rangkaian keypad pada Atmega16

Operasi LED 7-Segmen

Penampil seven segment adalah sebuah piranti penampil untuk menampilkan angka
desimal. Tampilan LED seven segmen pada dasarnya terbuat dari tujuh buah diode pemancar
cahaya (Light Emitting Diode, LED) yang saling terpisah yang dikemas dalam satu paket.
Penampil seven segment banyak digunakan dalam jam digital, meter elektronik, dan piranti
elektronik yang lain. Gambar 1 memperlihatkan bentuk fisik dan layout dasar penampil seven
segment. Penampil seven segment terdiri atas 8 LED yang disusun seperti dalam
Gambar1(b). Setiap LED diidentifikasi sebagai huruf a, b, c, d, e, f, g, yang dimulai dari huruf
a di sebelah atas. Di sebelah kanan terdapat satu LED tambahan yang digunakan sebagai
koma (dp).

Gambar 3. (a) Penampil seven segment (b) Layout LED

Tampilan LED Common Anoda

Tampilan 7-Segmen mempunyai dua macam konfigurasi yaitu common Anode dan
common Katode. Pada konfigurasi common anode ketujuh pin anode dari LED dihubungkan
secara bersama (pada simpul yang sama) seperti yang ditunjukkan pada gambar 4. Gambar 4.
ini memperlihatkan bahwa masing-masing segmen dari anoda LED tersebut dihubungkan
bersama ke suplay +5 Volt.

Halaman 3 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :

Gambar 4.konfigurasi LED pada tampilan 7-segment common Anode


dan common Katoda

Cara Pengkodean LED 7-Segmen

Untuk menampilkan sebuah karakter, minimal 2 LED harus dinyalakan dalam tabel 1.
memperlihatkan kode heksadesimal untuk menampilkan angka 0 sampai 9.
Dalam modul I/O yang dipakai dalam praktikum, seven segment yang digunakan ada
2 buah, semuanya bertipe common anoda. Kedua seven segment tersebut dimultipleks
sehingga data diperoleh dari satu kaki (D0-D7), sedangkan untuk menyalakannya digunakan
kaki kontrol yang berbeda (DO1 dan DO2). Rangkaian lengkap seven segment dapat dilihat
dalam gambar 4.
Tabel 1. Kode heksadesimal untuk angka 0-9

Halaman 4 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
C. Alat dan Bahan
Alat :
1. Alat tulis
2. Tool set
3. Trainer Mikrokontroller ATMega16
4. Downloader USBasp
5. Kabel Downloader Mikrokontroller ATMega16
6. Soket Jumper
7. PC/Laptop
Bahan :
1. Gambar rangkaian seven segment
2. Laporan kerja (kertas HVS F4/A4)

D. Langkah Kerja:

1. Amati dan fahami rangkaian dibawah ini dan buat rangkaiannya pada proteus

a. Rangkaian input keypad b. Rangkaian ouput seven segment

2. Selesai menggambar rangkaian pada proteus, buka program Code Vision AVR
3. Buatlah project baru, pilih Chip Atmega16 dengan clock 12MHz
4. Atur PORT sesuai dengan gambar berikut:

Gambar Inisialisasi PORT


5. Klik File  Generate, save and exit
6. Buat Listing Program sbb :
a. Pemrograman-3 A Program Menampilakan angka pada kedua seven segmen
while (1)
{
PORTA.7=0; //aktifkan seven segment kanan

Halaman 5 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
PORTA.6=1; //nonaktifkan seven segmen kiri
PORTD=0x6D; //tampilkan data angka 5
delay_ms(5);
PORTA.7=1; //nonaktifkan seven segment kanan
PORTA.6=0; //aktifkan seven segmen kiri
PORTD=0x66; //tampilkan data angka 4
delay_ms(5);
}

b. Pemrograman-3 B Program counter up angka 00-99


#include <mega16.h>
#include <delay.h>

// Declare your global variables here


unsigned char
bil[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void main(void)
{
// Declare your local variables here
int kanan;
int kiri;
int timer;

while (1)
{
kanan=0;
kiri=0;
for (kiri=0;kiri<10;kiri++){
for (kanan=0;kanan<10;kanan++)
{
for (timer=0;timer<10;timer++)
{
PORTA.7=0;
PORTA.6=1;
PORTD=bil[kanan];
delay_ms(5);
PORTA.7=1;
PORTA.6=0;
PORTD=bil[kiri];
delay_ms(5);}
}
}
}
}

Halaman 6 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :

c. Pemrograman-3 c Mengkaktifkan keypad

// Declare your global variables here


unsigned char keypad();
// Declare your local variables here
char key;
while (1)
{
// Place your code here
key=keypad();
switch (key)
{
case 100:
PORTA.7=0;
PORTA.6=1;
PORTD=0x3f;
break;
case 1:
PORTA.7=0;
PORTA.6=1;
PORTD=0x06;
break;
case 2:
PORTA.7=0;
PORTA.6=1;
PORTD=0x5b;
break;
case 3:
PORTA.7=0;
PORTA.6=1;
PORTD=0x4f;
break;
case 4:
PORTA.7=0;
PORTA.6=1;
PORTD=0x66;
break;
case 5:
PORTA.7=0;
PORTA.6=1;
PORTD=0x6d;
break;
case 6:
PORTA.7=0;
PORTA.6=1;
PORTD=0x7d;
break;
case 7:
PORTA.7=0;
PORTA.6=1;
PORTD=0x07;
break;

Halaman 7 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
case 8:
PORTA.7=0;
PORTA.6=1;
PORTD=0x7f;
break;
case 9:
PORTA.7=0;
PORTA.6=1;
PORTD=0x6f;
break;
}

}
}
unsigned char keypad()
{
PORTC = 0b11111110; //aktifkan baris1 (memberi logika 0 ke
baris1)
delay_ms(10);
if(PINC.7==0) return (10);
if(PINC.6==0) return (3);
if(PINC.5==0) return (2);
if(PINC.4==0) return (1);
//========================
PORTC = 0b11111101; //aktifkan baris2
delay_ms(10);
if(PINC.7==0) return (11);
if(PINC.6==0) return (6);
if(PINC.5==0) return (5);
if(PINC.4==0) return (4);
//========================
PORTC = 0b11111011; //aktifkan baris3
delay_ms(10);
if(PINC.7==0) return (12);
if(PINC.6==0) return (9);
if(PINC.5==0) return (8);
if(PINC.4==0) return (7);
//========================
PORTC = 0b11110111; //aktifkan baris4
delay_ms(10);
if(PINC.7==0) return (13);
if(PINC.6==0) return (15);
if(PINC.5==0) return (100);
if(PINC.4==0) return (14);
}

d. Pemograman-3 D
// Declare your global variables here
unsigned char keypad();
unsigned char
bil[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

// Declare your local variables here

Halaman 8 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
char key;
int kanan, kiri, time;

while (1)
{
// Place your code here
key=keypad();
switch (key)
{
case 2:
kanan=0;
kiri=0;
for (kiri=0;kiri<10;kiri++)
{
for (kanan=0;kanan<10;kanan++)
{
for (time=0;time<5;time++)
{
PORTA.7=1;
PORTA.6=0;
PORTD=bil[kiri];
delay_ms(5);
PORTA.7=0;
PORTA.6=1;
PORTD=bil[kanan];
delay_ms(5);
}
}
break;
case 3:
PORTA.7=1;
PORTA.6=1;
break;
}
}
}

}
unsigned char keypad()
{
PORTC = 0b11111110; //aktifkan baris1 (memberi logika 0 ke baris1)
delay_ms(10);
if(PINC.7==0) return (10);
if(PINC.6==0) return (3);
if(PINC.5==0) return (2);
if(PINC.4==0) return (1);
//========================
PORTC = 0b11111101; //aktifkan baris2

delay_ms(10);
if(PINC.7==0) return (11);
if(PINC.6==0) return (6);
if(PINC.5==0) return (5);
if(PINC.4==0) return (4);

Halaman 9 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :
//========================
PORTC = 0b11111011; //aktifkan baris3
delay_ms(10);
if(PINC.7==0) return (12);
if(PINC.6==0) return (9);
if(PINC.5==0) return (8);
if(PINC.4==0) return (7);
//========================
PORTC = 0b11110111; //aktifkan baris4
delay_ms(10);
if(PINC.7==0) return (13);
if(PINC.6==0) return (15);
if(PINC.5==0) return (0);
if(PINC.4==0) return (14);
}

e. Pemograman-3 F
Buatlah program apabila keypad angka 1 ditekan maka seven segment akan menampilkan
counter up dari 00-99

7. Simulasikan pada proteus yang telah dibuat untuk masing-masing program


8. Jika program dapat berjalan uji cobakan pada Trainer Atmega16
9. Sambungkan kabel jumper pada PORTC ke rangkaian input keypad
10. Sambungkan kabel jumper pada PORTD ke rangkaian output Seven Segmen
11. Sambungkan kabel USB downloader ke PC/Laptop, Buka software Khazamah
12. Download hasil compile program yang ber-ekstensikan .hex
13. Amati hasil pemrograman pada trainer mikrokontroller
14. Catat hasil pemrograman pada Laporan Hasil Kerja
15. Setelah berhasil melaksanakan pemrograman-2 buatlah laporannya

E. Petunjuk Keselamatan Kerja:


1. Gambarlah gambar rangkaian display seven segment dengan menggunakan alat bantu
(penggaris)
2. Rakitlah pengkabelan trainer mikrokontroller ATMega16 sesuai dengan gambar rangkaian
dengan teliti
3. Berikan sumber tegangan 5 VDC pada rangkaian sesuai polaritas tegangan kerjanya
(jangan sampai terbalik)
4. Hindari terjadinya laporan kerja sobek / kotor

F. Laporan Hasil Kerja:

1. Gambar Blok diagram sistem


..........................................................

2. Kode hexadecimal untuk penampil seven segmen angka 0-9 common katoda
...........................................................

3. Hasil pemograman :

a. Pemograman 3-A
.................................................

Halaman 10 dari 3
Kurikulum SMKN 1 Jabon
Nama :
No absen :
SMKN 1 JABON Kelompok :
Program Studi Keahlian Teknik Elektronika Kelas :
Kompetensi Keahlian T.Elektronika Industri Job ke :

b. Pemograman 3-B
.................................................

c. Pemograman 3-C
Tombol keypad Hasil tampilan seven Keterangan
segment
0
1
2
3
4
5
6
7
8
9

d. Pemograman 3-D
................................................
e. Pemograman 3-F(listing pemograman)
................................................

G. Kesimpulan:
………………………

Jabon,....................2015
Guru Pembimbing

.......................................

Halaman 11 dari 3
Kurikulum SMKN 1 Jabon

Anda mungkin juga menyukai