Você está na página 1de 9

57

BAB IV
Aplikasi Seven Segmen
dengan Mikrokontroller
PENDAHULUAN
Peralatan keluaran yang sering digunakan dalam menampilkan bilangan adalah
penampil seven segmen yang ditunjukkan pada gambar 4.1 (a). tujuh segmen tersebut
dilabelkan dengan huruf a sampai g.
a
f

b
g

c
d
(a)

(b)

Gambar 4.1. (a) Tampilan Fisik LED, (b) Skema dalam LED
Peraga seven segmen dapat dibuat dalam berbagai cara. Tiap tujuh segmen
tersebut dapat berupa filamen tipis yang berpijar. Jenis peraga ini disebut peraga pijar
(meandescent display), dan sama dengan bola lampu biasa. Peraga jenis lain adalah
LCD (liquid crystal display), peraga cairan, yang ,menghasilkan angka angka
berwarna kelabu atau puth perak. Dioda pemancar cahaya (LED, Light Emiting Dioda)
menghasilkan cahaya kemerah merahan. Pada peraga LED, LED membutuhkan arus
khusus sebesar 20 mA. Karena berupa dioda, LED sensitif terhadap polaritas. Katoda

58

(K) harus dihubung ke negatif (GND) dari catu daya dan Anoda (A) dihubung ke positif
dari catu daya. Seven segmen ini mempunyai 2 tipe yaitu common anoda dan common
katoda. Gambar 4.1(b) memperlihatkan catu daya yang dihubungkan ke seven segmen
common anoda.

RANGKAIAN SEVEN SEGMENT TUNGGAL 1


Rangkaian seven segment tunggal adalah rangkaian untuk menggerakkan
penampil 7 segment secara langsung dari port keluaran mikrokontroller. Penampil seven
segment yang digunakan common anoda. Data yang digunakan untuk menghasilkan
angka atau huruf tertentu didapatkan dengan cara seperti pada Tabel 4.1
C

1
2
3
4
5
J

3
3
3
3
3
3
3
3

9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8

1 9
1 8
X 1
V
1 2 M

A
R

.
.
.
.
.
.
.
.

0
1
2
3
4
5
6
7

P
P
P
P
P
P
P
P

1
1
1
1
1
1
1
1

.
.
.
.
.
.
.
.

0
1
2
3
4
5
6
7

/
/
/
/
/
/
/
/

A
A
A
A
A
A
A
A

DP
DP
PD
PD
PD
PD
PD
PD

2
2
2
2
2
2

20
21
2.
3.
4.
5.
6.
7.

.
.
2
3
4
5
6
7

2 1
0 / A2 28
1 / A2 39
/ A 2 14
/ A 2 15
/ A 2 16
/ A 2 17
/ A 2 18
/ A 1

0
1
2
3
4
5

1 0
P 3 . 0 / R 1 X1 D
P 3 . 1 / T 1X 2D
P 3 . 2 / I N 1 3T 0
P 3 . 3 / I N 1 4T 1
P 3 . 4 / 1T 50
P 3 . 5 / 1T 61
P 3 . 6 / W 1 7R
P 3 . 7 / R D
L 1A
L 2

A / V
S T
T 8 9 S

L E
P

3 0
/ P R 2 O9
S E N

5 1

3 0 p R
C 7

0
0
0
0
0
0
0
0

E
R

z
C 3
1 0 u

3 0 p
C 6

P
P
P
P
P
P
P
P

X T A
X T A

3 1
9

1
2
3
4
5
8
9
10

R 2
4 K 7

4 0 0 2

1 N

Gambar 4.2. Rangkaian aplikasi penggerak seven segmen tunggal


Tabel 4.1 Data Karakter Angka Pada 7 Segment

59

0
1
2
3
4
5
6
7
8
9

b7
dp
1
1
1
1
1
1
1
1
1
1

b6
g
1
1
0
0
0
0
0
1
0
0

b5
f
0
1
1
1
0
0
0
1
0
0

b4
e
0
1
0
1
1
1
0
1
0
1

b3
d
0
1
0
0
1
0
0
1
0
0

b2
c
0
0
1
0
0
0
0
0
0
0

b1
b
0
0
0
0
0
1
1
0
0
0

b0
a
0
1
0
0
1
0
0
0
0
0

HEX
DATA
COH
F9H
A4H
BOH
99H
92H
82H
F8H
80H
90H

PEMROGRAMAN SEVENT SEGMENT TUNGGAL 1


4.2.1.1. Program Seven Segment 1_1
Setelah rangkaian seven segment dibuat dan dihubungkan dengan port pararel
mikrokontroller, maka sekarang saatnya anda membuat program Program Seven
Segment 1. Program ini digunakan untuk menampilkan data 3 dan 2 secara bergantian.
Program sebagai berikut ini

60

'-------------------------------------------------------'Program Bab 7-Segment Menyala


'-------------------------------------------------------'DEKLARASI CRISTAL 12MHz
$crystal = 12000000
'-------------------------------------------------------'DEKLARASI HEADER
$regfile = "REG51.dat"
'-------------------------------------------------------'DEKLARASI VARIABEL
Dim Datae As Integer
'-------------------------------------------------------'DEKLARASI RUTIN
Declare Sub Segment()
'-------------------------------------------------------'rutin utama
Do
Datae = 5
Call Segment()
Waitms 500
Datae = 1
Call Segment()
Waitms 500
Loop
End
'-------------------------------------------------------' Rutin 7-segment
Sub Segment()
Select Case Datae
Case 0 : P3 = 192
Case 1 : P3 = 249
Case 2 : P3 = 164
Case 3 : P3 = 176
Case 4 : P3 = 153
Case 5 : P3 = 146
Case 6 : P3 = 130
Case 7 : P3 = 248
Case 8 : P3 = 128
Case 9 : P3 = 144
End Select
End Sub

61

4.2.1.2. Program Seven Segment 1_2


Setelah rangkaian LED dibuat dan dihubungkan dengan port pararel
mikrokontroller, maka sekarang saatnya Anda membuat Program Seven Segment 2.
Program ini digunakan untuk menampilkan angka mulai 0 sampai dengan 9.
Program sebagai berikut ini
'-------------------------------------------------------'Program Bab 7-Segment Mencacah Naik
'-------------------------------------------------------'DEKLARASI CRISTAL 12MHz
'-------------------------------------------------------$crystal = 12000000
'-------------------------------------------------------'DEKLARASI HEADER
$regfile = "REG51.dat"
'-------------------------------------------------------'DEKLARASI VARIABEL
Dim Datae As Integer
Dim Dae As Integer
'-------------------------------------------------------'DEKLARASI RUTIN
Declare Sub Segment()
'-------------------------------------------------------'rutin utama
Do
B = 0
Do
Datae = B
Call Segment()
Waitms 5
Incr B
Loop Untilb = 11
Loop
End
'-------------------------------------------------------' Rutin 7-segment

62

Sub Segment()
Select Case Datae
Case 0 : P3 = 192
Case 1 : P3 = 249
Case 2 : P3 = 164
Case 3 : P3 = 176
Case 4 : P3 = 153
Case 5 : P3 = 146
Case 6 : P3 = 130
Case 7 : P3 = 248
Case 8 : P3 = 128
Case 9 : P3 = 144
End Select
End Sub

APLIKASI SEVEN SEGMENT TUNGGAL 2


Rangkaian seven segment tunggal 2 adalah rangkaian untuk menggerakkan
penampil 7 segment secara langsung dari port keluaran mikrokontroller dengan data
input BCD. Penampil seven segment yang digunakan common anoda.

63

3
3
3
3
3
3
3
3
H

1
2
3
4
5
J

1
2
3
4
5
6
7
8

V
M

0
0
0
0
0
0
0
0

.
.
.
.
.
.
.
.

0
1
2
3
4
5
6
7

P
P
P
P
P
P
P
P

1
1
1
1
1
1
1
1

.
.
.
.
.
.
.
.

0
1
2
3
4
5
6
7

3 1
E
9
R

z
C 3
1 0 u

3 0 p R
C 7

A
R

/
/
/
/
/
/
/
/

2 0. 0
2 1. 1
.2 2
.3 3
.4 4
.5 5
.6 6
.7 7

/
/
/
/
/
/

2
/ 2A
/ 2A
A2
A2
A2
A2
A2
A

1
2
3
41
51
61
71
81
1

8
9
0
1
2
3
4
5

1 0
P 3 . 0 / R 1 X1 D
P 3 . 1 / T1 X2 D
P 3 . 2 / I 1N 3 T 0
P 3 . 3 / I 1N 4 T 1
P 3 . 4 /1 T 5 0
P 3 . 5 /1 T 6 1
P 3 . 6 / W1 7 R
P 3 . 7 / R D
3 0
L A 1 L E / P R2 9O
L 2
P S E N

A / V
S T
T 8 9

A PD
A PD
AP D2
AP D2
AP D2
AP D2
AP D2
AP D2

7
1
2
6
3
4
5

A
B
C
D
L T
B I
L E

A
B
C
D
E
F
G

1
1
1
1
9
1
1

3
2
1
0
5
4

4 5 1 1

G
V

5 1

3 0 p
C 6

P
P
P
P
P
P
P
P

1 9
1 8 X T A
X T A

X 1
1 2

9
8
7
6
5
4
3
2

1
2
3
4
5
8
9
10

R 2
4 K 7

3
4 0 0 2

1 N

Gambar 4.3. Rangkaian aplikasi penggerak seven segmen tunggal dengan BCD

PEMROGRAMAN SEVENT SEGMENT TUNGGAL 2


4.3.1.1. PROGRAM SEVEN SEGMENT 2_1
Setelah rangkaian seven segment dibuat dan dihubungkan dengan port pararel
mikrokontroller, maka sekarang saatnya Anda membuat program Program Seven
Segment 1. Program ini digunakan untuk menampilkan data 3 dan 2 secara bergantian.
Program sebagai berikut ini
'-------------------------------------------------------'Program Bab 7-Segment Menyala Tunggal IC 4511
'-------------------------------------------------------'DEKLARASI Cristal
'-------------------------------------------------------$crystal = 12000000

64

'-------------------------------------------------------'DEKLARASI Header
$regfile = "REG51.dat"
'-------------------------------------------------------'rutin utama
Do
P3 = 0
Waitms 1000
P3 = 2
Waitms 1000
Loop
End

4.3.1.2. PROGRAM SEVEN SEGMENT 2_2


Setelah program Seven Segment 2_1 dibuat dan di jalankan, maka sekarang
saatnya Anda membuat Program Seven Segment 2_2. Program ini digunakan untuk
menampilkan angka mulai 0 sampai dengan 9.
Program sebagai berikut ini
'-------------------------------------------------------'Program Bab 7-Segment Mencacah Naik IC 4511
'-------------------------------------------------------'DEKLARASI Cristal
'-------------------------------------------------------$crystal = 12000000
'-------------------------------------------------------'DEKLARASI Header
$regfile = "REG51.dat"
'-------------------------------------------------------'DEKLARASI VARIABEL
Dim Data1 As Integer
'-------------------------------------------------------'rutin utama
Do
Data1 = 0
Do

65

P3 = Data1
Waitms 5000
Incr Data1
Loop Until Data1 = 11
Loop
End