PEMROGRAMAN MICROKONTROLLER 
OUTPUT DISPLAY 7 SEGMENT 
1. TUJUAN 
 Mahasiswa memahami rangkaian interface mikrokontroller dengan 7 
segmen 
 Mahasiswa memahami beberapa instruksi assembly dasar, yaan 
dengan pemrograman output display 7 segment 
 Mahasiswa dapat memahami program assembly untuk menampilkan 
data ke 7 segment 
2. TEORI DASAR 
2.1 Rangkaian interface display 7 segment
Bagian Rangkaian output display 7 segment 
Rangkaian decoder 
Tabel kebenaran 74LS139 
B A 1Y0 / Q0 1Y1/Q1 1Y2/Q2 1Y3/Q3 
0 0 0 1 1 1 
0 1 1 0 1 1 
1 0 1 1 0 1 
1 1 1 1 1 0 
Pada tabel kebenaran tersebut tampak bahwa seven segmen yang hidup 
tergantung pada output dari dekoder 74LS139, yang sedang mengeluarkan 
logika low ”0”, sehingga dari 4 buah display tersebut, selalu hanya satu 
display yang akan dihidupkan. Agar display tampak nyala secara 
bersamaan maka ketiga display tersebut harus dihidupkan secara 
bergantian dengan waktu tunda tertentu.Pada gambar tersebut seven 
segment commont anoda dikendalikan dengan menggunakan transistor
PNP melalui decoder 74LS139, apabila ada logika low pada basis 
transistor, maka 7 segment akan nyala dan sebaliknya akan padam. 
Display 7 segment 
Hubungan Display ke port ( P1 ) 
Apabila P1.0 = 0 maka display a aktif 
Apabila P1.1 = 0 maka display b aktif 
Apabila P1.2 = 0 maka display c aktif 
Apabila P1.6 = 0 maka display g aktif
Tampilan ke display 7 segment 
Display h g f e d c b a Data 
0 0 1 0 0 0 0 0 0 40 
1 0 1 1 1 1 0 0 1 79 
2 0 0 1 0 0 1 0 0 24 
3 0 0 1 1 0 0 0 0 30 
4 0 0 0 1 1 0 0 1 19 
5 0 0 0 1 0 0 1 0 12 
6 0 0 0 0 0 0 1 0 02 
7 0 1 1 1 1 0 0 0 78 
8 0 0 0 0 0 0 0 0 00 
9 0 0 0 1 0 0 0 0 10 
A 0 0 0 0 1 0 0 0 08 
b 0 0 0 0 0 0 1 1 03 
C 0 1 0 0 0 1 1 0 46 
d 0 0 1 0 0 0 0 1 21 
E 0 0 0 0 0 1 1 0 06 
F 0 0 0 0 1 1 1 0 0E 
Pada tabel tersebut tampak bahwa untuk menghidupkan sebuah segmen, harus 
dikirimkan data logika low ”0” dan sebaliknya untuk mematikan segmen, harus 
dikirimkan data logika high ”1”. 
Deoder 
P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 D3 D2 D1 D0 DATA 
0 0 0 0 0 0 0 0 OFF OFF OFF ON 00
0 0 0 0 1 0 0 0 OFF OFF ON OFF 08 
0 0 0 1 0 0 0 0 OFF ON OFF OFF 10 
0 0 0 1 1 0 0 0 ON OFF OFF OFF 18 
Output display 7 segment 
Tabel Data Display 7 Segmen 
P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 Display 
g f e d c b a 
1 0 0 0 0 0 0 0 
1 1 1 1 0 0 1 1
0 1 0 0 1 0 0 2 
0 1 1 0 0 0 0 3 
: : : : : : : : 
0 0 0 1 0 0 0 A 
0 0 0 0 0 1 1 b 
3. MATERI PRATIKUM 
PROGRAM 
Data register output display D0 ( huruf b ) 
Org 0h 
Loop: 
Mov p3,#00h 
Mov p1,#03h 
Sjmp loop 
Data register output display D1 ( huruf A ) 
Org 0h 
Loop: 
Mov p3,#08h 
Mov p1,#08h 
Sjmp loop 
Data register output display D2 ( huruf A ) 
Org 0h 
Loop: 
Mov p3,#10h 
Mov p1,#08h
Sjmp loop 
Data register output display D3 (angka 1 ) 
Org 0h 
Loop: 
Mov p3,#18h 
Mov p1,#79h 
Sjmp loop 
Tugas 
Buatlah program untuk menampilkan 
Huruf b pada D3 
Huruf A pada D2 
Huruf b pada D1 
Angka 1 pada D0 
Program 
Org 0h 
Loop: 
Mov p3,#18h 
Mov p1,#03h 
call delay 
Mov p3,#10h 
Mov p1,#08h 
call delay 
Mov p3,#08h 
Mov p1,#03h 
call delay 
Mov p3,#00h 
Mov p1,#79h 
call delay 
sjmp loop 
delay: 
mov r7,#10h 
tunda: mov r6,#10h 
djnz r6,$
djnz r7,tunda 
ret 
Hasil Tampilan 
TUGAS LANJUTAN 
 Buatlah program untuk menampilkan angka 0 sampai 9 
disiplay ( up-counter ) 
 Buatlah program untuk menampilkan angka 9 sampai 0 
disiplay ( Down -counter )

Materi praktek-10-pemrograman-output-display-7-segment

  • 1.
    PEMROGRAMAN MICROKONTROLLER OUTPUTDISPLAY 7 SEGMENT 1. TUJUAN  Mahasiswa memahami rangkaian interface mikrokontroller dengan 7 segmen  Mahasiswa memahami beberapa instruksi assembly dasar, yaan dengan pemrograman output display 7 segment  Mahasiswa dapat memahami program assembly untuk menampilkan data ke 7 segment 2. TEORI DASAR 2.1 Rangkaian interface display 7 segment
  • 2.
    Bagian Rangkaian outputdisplay 7 segment Rangkaian decoder Tabel kebenaran 74LS139 B A 1Y0 / Q0 1Y1/Q1 1Y2/Q2 1Y3/Q3 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 Pada tabel kebenaran tersebut tampak bahwa seven segmen yang hidup tergantung pada output dari dekoder 74LS139, yang sedang mengeluarkan logika low ”0”, sehingga dari 4 buah display tersebut, selalu hanya satu display yang akan dihidupkan. Agar display tampak nyala secara bersamaan maka ketiga display tersebut harus dihidupkan secara bergantian dengan waktu tunda tertentu.Pada gambar tersebut seven segment commont anoda dikendalikan dengan menggunakan transistor
  • 3.
    PNP melalui decoder74LS139, apabila ada logika low pada basis transistor, maka 7 segment akan nyala dan sebaliknya akan padam. Display 7 segment Hubungan Display ke port ( P1 ) Apabila P1.0 = 0 maka display a aktif Apabila P1.1 = 0 maka display b aktif Apabila P1.2 = 0 maka display c aktif Apabila P1.6 = 0 maka display g aktif
  • 4.
    Tampilan ke display7 segment Display h g f e d c b a Data 0 0 1 0 0 0 0 0 0 40 1 0 1 1 1 1 0 0 1 79 2 0 0 1 0 0 1 0 0 24 3 0 0 1 1 0 0 0 0 30 4 0 0 0 1 1 0 0 1 19 5 0 0 0 1 0 0 1 0 12 6 0 0 0 0 0 0 1 0 02 7 0 1 1 1 1 0 0 0 78 8 0 0 0 0 0 0 0 0 00 9 0 0 0 1 0 0 0 0 10 A 0 0 0 0 1 0 0 0 08 b 0 0 0 0 0 0 1 1 03 C 0 1 0 0 0 1 1 0 46 d 0 0 1 0 0 0 0 1 21 E 0 0 0 0 0 1 1 0 06 F 0 0 0 0 1 1 1 0 0E Pada tabel tersebut tampak bahwa untuk menghidupkan sebuah segmen, harus dikirimkan data logika low ”0” dan sebaliknya untuk mematikan segmen, harus dikirimkan data logika high ”1”. Deoder P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 D3 D2 D1 D0 DATA 0 0 0 0 0 0 0 0 OFF OFF OFF ON 00
  • 5.
    0 0 00 1 0 0 0 OFF OFF ON OFF 08 0 0 0 1 0 0 0 0 OFF ON OFF OFF 10 0 0 0 1 1 0 0 0 ON OFF OFF OFF 18 Output display 7 segment Tabel Data Display 7 Segmen P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 Display g f e d c b a 1 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1
  • 6.
    0 1 00 1 0 0 2 0 1 1 0 0 0 0 3 : : : : : : : : 0 0 0 1 0 0 0 A 0 0 0 0 0 1 1 b 3. MATERI PRATIKUM PROGRAM Data register output display D0 ( huruf b ) Org 0h Loop: Mov p3,#00h Mov p1,#03h Sjmp loop Data register output display D1 ( huruf A ) Org 0h Loop: Mov p3,#08h Mov p1,#08h Sjmp loop Data register output display D2 ( huruf A ) Org 0h Loop: Mov p3,#10h Mov p1,#08h
  • 7.
    Sjmp loop Dataregister output display D3 (angka 1 ) Org 0h Loop: Mov p3,#18h Mov p1,#79h Sjmp loop Tugas Buatlah program untuk menampilkan Huruf b pada D3 Huruf A pada D2 Huruf b pada D1 Angka 1 pada D0 Program Org 0h Loop: Mov p3,#18h Mov p1,#03h call delay Mov p3,#10h Mov p1,#08h call delay Mov p3,#08h Mov p1,#03h call delay Mov p3,#00h Mov p1,#79h call delay sjmp loop delay: mov r7,#10h tunda: mov r6,#10h djnz r6,$
  • 8.
    djnz r7,tunda ret Hasil Tampilan TUGAS LANJUTAN  Buatlah program untuk menampilkan angka 0 sampai 9 disiplay ( up-counter )  Buatlah program untuk menampilkan angka 9 sampai 0 disiplay ( Down -counter )