Anda di halaman 1dari 6

FAKULTAS TEKNIK

UNIVERSITAS NEGERI YOGYAKARTA


LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/05 Revisi : 02 Senin 010218 Hal. 1 dari 5 hal.
Sem.: Genap Seven Segmen 2 x 50 menit

A. Teori Singkat
Seven segment adalah sejumlah lampu LED sebanyak 7 buah yang disusun dengan
susunan tertentu, sehingga jika dinyalakan akan membentuk sebuah karakter angka yang
diinginkan. Penyusunan lampu LED ini disusun dengan cara menyambung pada semua kutub
anodanya yang sering disebut dengan common anoda atau dengan cara menyambung pada
semua kutub katodanya atau sering disebut common katoda.
Penampil seven segment ini sangat mudah dan praktis karena daya yang digunakan
relative kecil dan mudah dalam pemrogramannya. Sebagai penampil seven segment masih
mempunyai kekurangan karena hanya bisa menampilkan bentuk angka saja, walaupun bisa
menampilkan karakter huruf tetapi sangat tidak sempurna. Gambar dibawah ini adalah
penampil seven segment

Gambar 1. Penampil seven segment

Penyalaan seven segment sama halnya dengan lampu LED yaitu dengan
mengeluarkan data pada port. Untuk menyalakan seven segment, port pada mikrokontroler
diprogram sebagai keluaran. Susunan LED pada seven segment dapat dilihat pada gambar
dibawah ini:

Gambar 2. Susunan LED Common Cathode dan Anode

Susunan LED tersebut, jika dinyalakan pada segment tertentu akan membentuk
sebuah karakter angka ataupun huruf. Ada dua macam penyambungan seven segment yaitu:
commond anode dan common cathode. Penyambungan common anode ditandai oleh
disambungnya pin LED positip menjadi satu dengan VCC. Seven segment common anode
akan menyala jika pada pin a, b, c, d, e, f, g dan p dihubungkan ground atau logika rendah.
Dalam membentuk tampilan karakter atau angka yang diinginkan dapat dilihat pada tabel
dibawah ini:
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/05 Revisi : 02 Senin 010218 Hal. 2 dari 5 hal.
Sem.: Genap Seven Segmen 2 x 50 menit

Tabel 1. Data pembentuk karakter pada seven segment


Tampilan a b c d e f g
0 0 0 0 0 0 0 1
1 1 0 0 1 1 1 1
2 0 0 1 0 0 1 0
3 0 0 0 0 1 1 0
4 1 0 0 1 1 0 0
5 0 1 0 0 1 0 0
6 0 1 0 0 0 0 0
7 0 0 0 1 1 1 1
8 0 0 0 0 0 0 0
9 0 0 0 1 1 0 0
A 0 0 0 1 0 0 0
b 1 1 0 0 0 0 0
C 0 1 1 0 0 0 1
d 1 0 0 0 0 1 0
E 0 1 1 0 0 0 0
F 0 1 1 1 0 0 0

Penyalaan seven segment dapat dilakukan dengan dua cara yaitu: penyalaan statik dan
dinamik. Penyalaan statik adalah penyalaan yang terus menerus dan biasanya digunakan
untuk menyalaan penampil seven segment tunggal, artinya bahwa tiap pin seven segment
akan dihubungkan dengan pin pada mikrokontroler. Cara ini tidak effektif karena
menggunakan jumlah pin mikrokontroler yang banyak. Apalagi jika seven segment yang
dipasang lebih dari satu.
Penyalaan dimanik adalah penyalaan yang bergantian dengan waktu yang sangat
cepat. Pergantian ini dilakukan dalam waktu milidetik, sehingga mata manusia tidak bisa
mengikutinya. Karena pergantian yang cepat, sehingga seolah-olah penyalaannya bersifat
statik. Metode penyalaan seperti ini sering disebut penyalaan scanning. Penyalaan seperti ini
sangat effektif karena tidak menggunakan jumlah pin mikrokontroler yang banyak. Gambar
rangkaian seven segment dapat dilihat pada gambar dibawah ini:

Gambar 3. Rangkaian seven segment


FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/05 Revisi : 02 Senin 010218 Hal. 3 dari 5 hal.
Sem.: Genap Seven Segmen 2 x 50 menit

Rangkaian tersebut diatas, seven segment dihubungkan dengan dua buah port yaitu
PD dan PB. PD berfungi sebagai port data dimana data-data akan dikirimkan dan PB
berfungsi sebagai pemilih seven segment mana yang akan dinyalakan. Misalnya jika akan
menampilkan karakter angka 1, 2, 3, 4, maka datanya adalah sebagai berikut:

Tabel 2. Data angka 1, 2, 3, 4 pada seven segment


Display a b c d e f g
1 1 0 0 1 1 1 1
2 0 0 1 0 0 1 0
3 0 0 0 0 1 1 0
4 1 0 0 1 1 0 0

Data tersebut dikeluarkan melalui PD, dan selanjutnya adalah menentukan data PB. Data
pemilih seven segment dapat dilihat pada tabel dibawah:

Tabel. 3. Data pemilih seven segment


Menyala PB.3 PB.2 PB.1 PB.0
Seven segment 1 1 0 0 0
Seven segment 2 0 1 0 0
Seven segment 3 0 0 1 0
Seven segment 4 0 0 0 1

B. Rangkaian
Rangkaian 1

C. Program
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/05 Revisi : 02 Senin 010218 Hal. 4 dari 5 hal.
Sem.: Genap Seven Segmen 2 x 50 menit

Program 1
#include <mega16.h>

void main(void)
{
DDRC = 0xFF;
PORTC = 0x66;
}

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

void main(void)
{
DDRC = 0xFF;
PORTC = 0x00;

while(1)
{
PORTC = 0x3F; //angka 0
delay_ms(200);
PORTC = 0x06; //angka 1
delay_ms(200);
PORTC = 0x5B; //angka 2
delay_ms(200);
PORTC = 0x4F; //angka 3
delay_ms(200);
PORTC = 0x66; //angka 4
delay_ms(200);
PORTC = 0x6D; //angka 5
delay_ms(200);
PORTC = 0x7D; //angka 6
delay_ms(200);
PORTC = 0x07; //angka 7
delay_ms(200);
PORTC = 0x7F; //angka 8
delay_ms(200);
PORTC = 0x6F; //angka 9
delay_ms(200);
};
}

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

char digit[16]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};

unsigned char i;

void main(void)
{
DDRC = 0xFF;
PORTC = digit[0];
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/05 Revisi : 02 Senin 010218 Hal. 5 dari 5 hal.
Sem.: Genap Seven Segmen 2 x 50 menit

while(1)
{
if(i==10)
{
i=0;
}
else
i++;
delay_ms(500);
PORTC = digit[i];
};
}

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

void main(void)
{
DDRA = 0xFF;
PORTA = 0x00;

DDRC = 0xFF;
PORTC = 0x00;

while(1)
{
PORTA = 0x06; //angka 1
PORTC = 0xFE; //pemilih seven segmen 1
delay_ms(10);

PORTA = 0x5B; //angka 2


PORTC = 0xFD; //pemilih seven segmen 2
delay_ms(10);
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/05 Revisi : 02 Senin 010218 Hal. 6 dari 5 hal.
Sem.: Genap Seven Segmen 2 x 50 menit

PORTA = 0x4F; //angka 3


PORTC = 0xFB; //pemilih seven segmen 3
delay_ms(10);

PORTA = 0x66; //angka 4


PORTC = 0xF7; //pemilih seven segmen 4
delay_ms(10);
};
}

D. Tugas
1. Gambarkan rangkaian mikrokontroller seperti pada gambar rangkaian 1 dan 2, beri nama
file untuk rangkaian 1 menjadi NIM_ANDA_51 dan rangkaian 2 menjadi
NIM_ANDA_52
2. Tulislah program pada Program1 s.d program2 untuk gambar rangkaian mikrokontroller
ATMEGA16 dengan CVAVR
3. Lakukan konversi menjadi file dengan berextensi .c menjadi berextensi .COF dan .HEX
yang siap dimasukan ke dalam mikrokontroller
4. Masukan file yang berextensi COF atau HEX ke dalam mikrokontroller ATMEGA16
rangkaian 1
5. Buatlah program untuk rangkaian 2 supaya seven segmen dapat menampilkan angka
0000 s.d. 9999
6. Buatlah jam dengan tampilan 00:00:00, dimana perubahannya angkanya di sebabkan
oleh looping programnya. Penggunaan port-nya bebas.

Anda mungkin juga menyukai