Professional Documents
Culture Documents
PENDAHULUAN
1.2 Tujuan
1. Memahami interface ke display 7 – segment.
2. Dapat mengendalikan dan menampilkan data pada display 7 – segment.
3. Untuk mengetahui aplikasi dari seven segment.
BAB II
TINJAUAN PUSTAKA
Membentuk sebuah GDT untuk code segment 32 bit dengan segment limit 4 Gb,
Privilege Level 00, dan isi segment dapat dibaca. Berdasarkan ilustrasi yang telah diberikan,
maka akan didapat nilai yang akan diisikan ke Acces Right – 1, yaitu:
10011010b atau 0 x 9A
P (Bit 7) 1 Segment present in memory
DPL (Bit 6.5) 00 DPL highest
S (Bit 4) 1 Descriptor is segment
E (Bit 3) 1 Code segment
C (Bit 2) 0 Working rules of calling
segment via gates, using PL
R (Bit 1) 1 Enable reading
A (Bit 0) 0 None accesses into segment was
Tabel 2.1
Sedangkan nilai untuk Acces Rights – 2 adalah:
11001111b atau 0 x CF
G (Bit 23) 1 Segment limit calculated in pages
of 4000 (up to 2^32 bytes)
D (Bit 22) 1 32 – bit segment
Not Used 0
Tabel 2.2
Berdasarkan susunan segment descriptor, Access Rights – 2 digabung dengan
Segment Limit High (Access Rights – 2 / Segment Limit High) karena menggunakan batas
maksimal 4 Gb. Jadi, Segment Limit High akan mendapat nilai 1111b atau 0 x F dan jika
digabung dengan Access Rights – 2 akan menjadi 11001111b atau 0 x CF.
Membentuk segment descriptor untuk data segment 32 bit dengan segment limit 4 Gb,
Privilege Level 00, dan lokasi segment dapat dibaca / ditulis. Berdasarkan ilustrasi yang telah
diberikan, maka akan didapatkan nilai yang akan diisikan ke Access Right – 1, yaitu:
10010010b atau 0 x 92
P (Bit 7) 1 Segment present in memory
DPL (Bit 6.5) 00 DPL highest
S (Bit 4) 1 Descriptor is segment
E (Bit 3) 0 Data segment
ED (Bit 2 0 Expand up
W (Bit 1) 1 Write enable
A (Bit 0) 0 None accesses into segment was
Tabel 2.3
Sedangkan nilai untuk Access Rights – 2 / Segment Limit High sama seperti code
segment, yaitu 11001111b atau 0 x CF.
Setelah membentuk segment descriptor untuk code segment dan data segment,
langkah selanjutnya yang harus dilakukan ialah me-load GDT tersebut ke GDTR (global
descriptor table register) dengan instruksi lgdt (load global descriptor table).
Langkah yang perlu dilakukan ialah mempersiapkan data GDTR. Data GDTR terdiri
dari 6 byte, yang masing-masing digunakan untuk GDT SIZE 2 byte dan 4 byte untuk alamat
lokasi GDT. Setelah kita mengisikan data tersebut barulah kita dapat me-load GDT tersebut
ke GDTR.
Segment-segment yang didefinisikan di dalam GDT seperti GdtCS dan GdtDS disebut
segment descriptor. Untuk mengakses segment descriptor, diperlukan segment selector atau
selector dan selector-selector tersebut mempunyai nilai yang mewakili segment descriptor.
Penilaian dilakukan mulai dari GdtZero yang mempunyai nilai 0, GdtCS mempunyai
nilai 8, GdtDS mempunyai nilai 16, dan seterusnya. Selector-selector di bawahnya akan
mempunyai nilai dengan kelipatan 8. Nilai-nilai selector untuk GdtCS dan GdtDS tidak selalu
8 dan 16. Nilai tersebut tergantung posisi dimana selector tersebut ditempatkan.
(Budi Halus Santoso & Jubilee Enterprise. 2005)
Angka-angka yang sering kita baca pada lat-alat digital ditampilkan dengan lampu
peraga yang terdiri dari 7 bagian (segment). Penampil macam itu dikenal sebagai peraga 7
segment.
Sebenarnya setiap segment merupakan sebuah LED (Light Emitting Dyode), dan
masing-masing segment diberi nama secara berurutan sebagai segment-segment a, b, c, d, e, f,
dan g.
Angka desimal yang ditampilkan terbentuk dari segmen-segmen yang menyala. Misal
agar tampil 7 maka segmen yang dinyalakan a, b, dan c. Jika segmen-segmen f, g, b, dan c
yang menyala maka akan muncul angka 4. Demikian seterusnya.
Agar peraga 7 – segmen dapat menampilkan suatu angka (desimal), maka diperlukan
rangkaian pengendali untuk menterjemahkan keadaan logika masukan BCD menjadi angka
yang sesuai. Rangkaian pengendali itu disebut dekoder BCD ke peraga 7 segmen. Selanjutnya
marilah kita merancang dekoder tersebut.
Terlebih dahulu kita susun tabel kebenaran yang menyatakan hubungan antara angka
yang akan ditampilkan (BCD) dengan segmen dari peraga 7 segmen yang harus dinyalakan.
Untuk itu perhatikan tabel 2.1 berikut:
(nomor baris) A B C D A b c d E f g
0 0 0 0 0 1 1 1 1 1 1 0
1 0 0 0 1 0 1 1 0 0 0 0
2 0 0 1 0 1 1 0 1 1 0 1
3 0 0 1 1 1 1 1 1 0 0 1
4 0 1 0 0 0 1 1 0 0 1 1
5 0 1 0 1 1 0 1 1 0 1 1
6 0 1 1 0 1 0 1 1 1 1 1
7 0 1 1 1 1 1 1 0 0 0 0
8 1 0 0 0 1 1 1 1 1 1 1
9 1 0 0 1 1 1 1 1 0 1 1
Tabel 2.4
Segmen yang menyala pada tabel 2.1 merupakan fungsi keluaran sehingga terdapat 7
fungsi keluaran yang masing-masing dapat dinyatakan sebagai:
a = ∑m (0, 2, 3, 5, 6, 7, 8, 9)
b = ∑m (0, 1, 2, 3, 4, 7, 8, 9)
c = ∑m (0, 1, 3, 4, 5, 6, 7, 8, 9)
d = ∑m (0, 2, 3 5, 8, 9)
e = ∑m (0, 2, 6, 8, 9)
f = ∑m (0, 4, 5, 6 , 8, 9)
g = ∑m (2, 3, 4, 5, 6, 8, 9)
Perlu diperhatikan di sini bahwa pengubahan suatu bilangan desimal ke bilangan biner
berbeda dengan penyandian suatu bilangan desimal, meskipun dalam kedua hal tersebut
hasilnya sama-sama berupa suatu deretan bit. Untuk sandi BCD ini sandi bilangan desimal 0
sampai 9 itu sama dengan bilangan biner setaranya. Di atas 9, sandi BCD berbeda dengan
bilangan biner setaranya. Misalnya, setara biner bentuk 11 adalah 1011, tetapi sandi BCD
untuk 11 adalah 0001 0001. Contoh yang lain, bilangan 45 mempunyai setara biner 10110;
sedangkan sandi BCD untuk bilangan tersebut adalah 0100 0101. Oleh karena itu, perlu
diingat bahwa suatu deretan bit (angka) 0 dan 1 dalam suatu sistem digital kadang-kadang
mewakili suatu bilangan biner dan pada saat yang merupakan informasi disket yang
ditentukan oleh suatu sandi biner tertentu.
Keunggulan utama sandi BCD adalah mudahnya mengubah dari dan kebilangan
desimal, dalam hal ini hanyalah bilangan biner untuk 0 sampai 9 saja, karena yang disandikan
adalah suatu angka desimal demi satu angka desimal. Kerugiannya adalah sandi yang tidak
akan dapat berlaku untuk operasi matematika yang hasilnya melebihi 9.
Sandi BCD tersebut hanya menggunakan 10 dari 16 kombinasi yang tersedia. 6
kelompok bit yang tidak terpakai adalah 1010, 1011, 1100, 1101, 1110, dan 1111. Jika salah
satu dari bilangan terlarang, berarti terdapat kesalahan dalam mesin BCD.
Sebuah Decoder adalah rangkaian logika yang menerima input-input biner dan
mengaktifkan salah satu output-nya sesuai dengan urutan biner input-nya. Rangkaian dekoder
mempunyai sifat yang berkebalikan dengan enkoder yaitu merubah kode biner menjadi sinyal
diskrit. Syarat perancangan sebuah dekoder adalah m <= 2n dimana m adalah kombinasi
keluaran dan n adalah jumlah bit masukan. Satu kombinasi masukan hanya dapat mewakili
satu kombinasi keluaran.Sehingga dapat disimpulkan bahwa variabel keluaran bebas tapi
harus tetap memperhatikan unsur efisiensi rangkaian. Misal dekoder 3 bit memiliki 8 atau
kurang kombinasi keluaran tetapi bisa memiliki jumlah saluran keluaran lebih dari 8 (10 atau
55 atau 100 dan sebagainya). Contoh rangkaian dekoder adalah rangkaian dekoder dot matrik,
dan dekoder seven segmen yang terdapat dalam keterangan dibawah ini.
Penampilan bilangan-bilangan biner dari sandi BCD menjadi bilangan decimal selain
dalam tabung angka (nixie tube) yang sudah berbentuk angka – angka decimal dari 0 sampai 9
juga dapat diwujudkan oleh lampu – lampu penunjuk kecil (LED : light emitting diodes).
Dalam hal ini lampu – lampu penunjuk kecil/LED tersebut disusun menjadi tujuh segmen,
dan angka decimal dari 0 sampai 9 dapat ditampilkan dengan cara mengatur cara penyalaan
dari tujuh segmen tersebut.
Perlu diketahui, bahwa LED adalah suatu dioda yang bersifat mengemisi atau menyala
bila mendapat suatu arus maju (forward Biased). Dengan sifatnya yang demikian, LED
banyak dipakai sebagai lampu – lampu penunjuk kecil yang serba guna, misalnya saja untuk
menunjukkan keadaan “ON” dari suatu peralatan atau untuk lampu – lampu test.
(Sumarna. 2006)
Bila semua segmen menyala, maka dapat dibaca sebagai angka decimal 8. Angka
decimal 0 dan 3 terlihat pada menyalanya segmen – segmen sesuai gambar. Untuk
penampilan huruf, hanya beberapa huruf saja yang dapat dibaca dari tujuh segmen.
Jika kita perhatikan decoder ini sebenarnya mirip dengan demultiplexer, dengan
satu pengecualian yaitu pada decoder ini tidak mempunyai data input. Input hanya
digunakan sebagai data control. Pada bagian masukkan decoder terdapat lebih dari satu jalur
tunggal yang aktif. Sedangkan pada bagian keluarannya yang aktif hanya satu saja, tetapi
bagian masukan ini harus berupa sistem bilangan biner. Beberapa rangkaian Decoder yang
sering dijumpai adalah decoder 3x8 ( 3 bit input dan 8 output line), decoder 4x16, decoder
BCD to Decimal (4 bit input dan 10 output line), decoder BCD to 7 segment (4 bit input dan 8
output line).
Khusus untuk BCD to 7 segment mempunyai prinsip kerja yang berbeda dengan
decoder-decoder yang lain, di mana kombinasi dari setiap inputnya dapat mengaktifkan
beberapa output line-nya (bukan salah satu line).
Operasi pada decoder dapat dijelaskan lebih lanjut dari hubungan input-
output. Amatilah pada variabel output yang mana, satu sama
lainnya saling eksklusif, karena hanya ada satu output yang bernilai 1 pada satu waktu.
Jalur output ditunjukkan dengan minterm yang ekivalen dengan angka biner. Bila
semua segmen menyala, maka dapat dibaca sebagai angka decimal 8. Angka desimal 0 dan 3
terlihat pada menyalanya segmen – segmen sesuai gambar. Untuk penampilan huruf, hanya
beberapa huruf saja yang dapat dibaca dari tujuh segmen. Dekoder dapat dibentuk dari
susunan gerbang logika dasar atau menggunakan IC dekoder yang telah ada dipasaran seperti
74LS48, 74LS154, 74LS138, 74LS155 dan sebagainya. Untuk lebih jelasnya lagi dapat di
lihat pada gambar yang terdapat di bawah ini. Jalur output ditunjukkan dengan mainterm yang
ekuivalen dengan angka biner.
Keterangan :
a. Seven segment
Fungsinya untuk menampilkan program yang kita nuat di seven segment
b. Tombol program
Fungsinya untuk memasukan atau menginput program yang akan kita jalankan
c. Adaptor
Fungsinya sebagai penghubung sumber arus PLN ke percobaan
3.2 Prosedur Percobaan
3.2.1 Program menghidupkan semua segment pada semua 7-segment
Program menghidupkan semua segment pada semua 7-segment
3.2.3 Program untuk menampilkan angka 8 pada seven segment ke-1 (A1)
menggunakan delay (waktu tunda) .
Tabel Program untuk menampilkan angka 8 pada seven segment ke-1 (A1)
menggunakan delay (waktu tunda) .
ALAMAT KODE MNEUMATIK KODE MESIN
2000 LD A, 01H 3E 01
2002 OUT 85H,A D3 85
2004 LD B, 00H 06 00
2006 LOOP1: LD A, B 78
2007 OUT (85), A D3 84
2009 INC B 04
200A CALL DELAY CD 00 21
200D JP LOOP 1 C3 06 20
Untuk melanjutkan program maka digunakan AD. Misalnya AD 2100 AD
3.3.3 Program untuk menampilkan angka 8 pada seven segment ke-1 (A1)
menggunakan delay (waktu tunda) .
Penjelasan :
Pada alamat 2000 dan kode mesinnya yang berfungsi untuk mengubah tampilan pada
segment contohnya angka 8 (01H)
Pada alamat 2004 dan kode mesinnya yang berfungsi untuk menampilkan tampilan
segment pada 7-segment contohnya (00H) maka tampilan yang hidup pada segment 7-
segment adalah segment pada 7-segment ke 1.
Pada alamat 2100 dan kode mesinnya yang berfungsi sebagai delay contoh 60
Kemudian, tekan tombol (reset+Fn+0) yang berfungsi untuk mereset, kemudian
muncul tampilan segment pada 7-segment seperti dibawah ini :
Gambar 4.3 Menampilkan sebuah angka pada seven segment dengan waktu tunda
Penjelasan :
Pada alamat 2000 dan kode mesinnya yang berfungsi untuk mengubah tampilan pada
segment (FIFA)
Pada alamat 2004 dan kode mesinnya yang berfungsi untuk menampilkan tampilan
segment pada 7-segment contohnya (A0H) maka tampilan yang hidup pada segment
7-segment adalah segment pada 7-segment ke 1.
Pada alamat 2027 dan kode mesinnya yang berfungsi sebagai delay contoh 00
Kemudian, tekan tombol (reset+Fn+0) yang berfungsi untuk mereset, kemudian
muncul tampilan segment pada 7-segment seperti dibawah ini :
5.1. Kesimpulan
1. Dapat memahami interface ke display seven segment, yaitu :
Interfacing berarti menghubungkan keluaran dari satu rangkaian atau system
kemasukan dari rangkaian atau system yang lain yang mempunyai karakteristik elektrik yang
berbeda. Sering hubungan langsung dilakukan karena perbedaan karakteristik elektrik dari
rangkaian penggerak yang menyediakan sinyal keluaran dan rangkaian beban yang menerima
sinyal. Seven segmen ini tersusun atas 7 batang LED yang disusun membentuk angka 8
dengan menggunakan huruf a-f yang disebut DOT MATRIKS. Setiap segmen ini terdiri dari 1
atau 2 Light Emitting. Keluaran 74LS47 menunjukkan bahwa segmen menyala pada kondisi
logika rendah yaitu konfigurasi common anoda. Jadi, bila misalnya bilangan heksadesimal
atau BCD 1 ( satu ) didekode oleh 74LS47 untuk masukan ke seven segmen, maka data
masukannya adalah D3, D2, D1, D0 = 0001 dan data keluarannya adalah a = 1, b = 0, c = 0, d
= 1, e = 1, f = 1, g = 1.
Untuk memperogram tampilan sebuah angka pada seven segemen dilakukan dengan
mengirimkan data yang sudah disusun tadi melalui port.
Program yang dimodifikasi untuk menampilkan angka 3 pada seven segment ketiga, yaitu :
Alamat Kode Mnemonik Kode Mesin
2000 LD A, 4FH 3E 4F
2002 OUT 84H, A D3 84
2004 LD A, 04H 3E 04
2006 OUT 85H, A D3 85
2008 HALT 76
Menampilkan angka sacara berurut dilakukan dengan cara mengirimkan komposisi
data melalui port sepaket demi sepaket dan yang diselingi dengan delay. Artinya setelah
sebuah angka tampil harus ditahan dulu sebentar baru dikrimkan data beriktunya. Jika anda
ingin menampilkan angka secara berurut turun maka dapat dilakukan dengan mengirimkan
data mulai dari komposisi data angka 9 menuju ke angka 0.
Persoalan berikutnya adalah menampilkan angka lebih dari satu. Sebenarnya angka yang
ditampikan tetap satu demi satu juga, tetapi ditampilkan secara bergantian dengan kecepatan
50 kali setiap detik. Yang perlu diperhatikan juga adalah bahwa tampilan bukan sekedar
hanya bergantian tetapi yang lebih penting lagi adalah posisi tampilan angka tersebuat harus
sesuai dengan bobotnya, apakah angka itu satuan, puluhan atau ratusan.
3. Kode-kode mneumonik dan artinya:
LD A, FFH (Mengisi akumulator dengan isi dari
lokasi memori FFH )
5.2 Saran
1. Sebaiknya praktikan selanjutnya harus bisa mengubah bilangan biner ke bilangan
heksa
2. Sebaiknya praktikan selanjutnya agar mempelajari arti-arti pada kode mneumonik
3. Sebaiknya praktikan selanjutnya fokus pada saat melakukan praktikum judul interface
ke-display sevent segment dimulai
DAFTAR PUSTAKA
Responsi
1. Buatlah program dengan menggunakan interface ke display 7 – segment untuk
menampilkan nama sendiri!
ALAMAT KODE MNEUMONIK KODE MESIN
2000 LD A, 6DH 3E 6D
2002 OUT 84H,A D3 84
2004 LD A, A0H 3E A0
2006 OUT 85H,A D3 85
S
2007 CALL DELAY CD 00 21
2009 LD A. 06H 3E 06
200B OUT 84H,A D3 84
200D LD A, 90H 3E 90
200F OUT 85H,A D3 85
I
2011 CALL DELAY CD 00 21
2013 LD A, 78H 3E 78
2015 OUT 84H,A D3 84
2017 LD A, 08H 3E 08
2019 OUT 85H,A D3 85
t
201B CALL DELAY CD 00 21
201D LD A, 06H 3E 06
201F OUT 84H,A D3 84
2021 LD A, 04H,A 3E 04
2023 OUT 85H,A D3 85
I
2025 CALL DELAY CD 00 21
Untuk melanjutkan program maka digunakan AD. Misalnya AD 2100 AD
2027 DELAY : LD DE 60FF 11 FF 00
2028 Loop 2: DEC DE 1B
202B LD A,E 7B
202D OR DE B2
202F JP NZ,LOOP2 C2 03 21
2031 RET C9
2. Ubahlah NIM satu kelompok ke bilangan biner dan bilangan heksa!
142411001 : 0000 0001 = 01H
142411011 : 0000 1011 = 0BH
142411023 : 0001 0111 = 17H
142411037 : 0010 0101 = 26H
142411046 : 0011 0010 = 32H
142411056 : 0100 1000 = 48H
142411072 : 0100 1000 = 48H
142411088 : 0101 1000 = 58H