Percobaan 4 PENGUBAH SANDI BCD KE PERAGA 7-SEGMEN Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail :
[email protected]
Tujuan : 1. Mengenal cara kerja dari peraga 7-segmen 2. Mengenal cara kerja rangkaian pengubah sandi (decoder) BCD ke peraga 7-segmen 3. Dapat menyusun rangkaian pengubah sandi BCD ke peraga 7-segmen dari beberapa komponen yang diperlukan. 4. Menggunakan IC BCD to Seven Segment Decoder maupun Peraga 7-Segmen dan sejenisnya menjadi rangkaian yang dapat mengubah sandi BCD ke peraga 7-segmen. Alat-alat : Catu daya (5V, 500 mA), multimeter, LED, resistor, beberapa IC dengan seri 7404, 7447/7448, peraga 7-segmen (Anoda bersama atau Katoda bersama), dan kabelkabel penghubung.
Dasar Teori : Dekoder (Demultiplekser) Dalam suatu mesin digital, instruksi dan informasi (data) disajikan dalam bentuk biner, karena mesin digital hanya dapat menanggapi dan mengolah data dalam bentuk biner. Kita sering melihat atau bahkan menggunakan mesin-mesin digital seperti multimeter digital, termometer digital, jam digital, komputer, kalkulator, dan lain-lain. Tampilan yang langsung dapat kita lihat dari alat tersebut berupa angka desimal, padahal proses yang terjadi di dalamnya berbentuk biner. Instruksi ataupun informasi dalam bentuk biner tidak kita sukai, selain karena lebih rumit juga kurang praktis dan di luar kebiasaan. Kita telah terbiasa dengan huruf dari A sampai Z maupun angka-angka 0, 1, 2, ... 9. Sehingga apabila disajikan angka atau kata dalam bentuk biner pada umumnya tidak segera
diketahui maknanya . Misalkan disajikan sederet bit 0001011, kita tidak
1
segera tahu deretan bit itu menyatakan angka atau huruf. Jika angka, sederet bit tersebut dapat menunjukkan angka 17 atau bahkan angka 23 sebagaimana biasa kita kenal. Agar 00010111 dapat tampil sebagai 17 atau 23 diperlukan teknik maupun rangkaian tertentu. Hal ini juga berlaku untuk langkah sebaliknya, agar angka 17 atau 23 dapat dikenali oleh suatu mesin digital sebagai 00010111 diperlukan teknik dan rangkaian tertentu pula. Dalam teknik penyaluran informasi ataupun transmisi data, sering kita jumpai di mana suatu rangkaian menerima masukan dan kemudian menyalurkannya ke salah satu dari sekian banyak jalur keluaran yang tersedia. Sebaliknya juga sering dijumpai suatu rangkaian yang memiliki banyak jalur masukan dan satu jalur keluaran. Misalkan transmisi data pada jaringan telepon, lebih banyak mengirim data paralel dalam bentuk serial karena hanya diperlukan sedikit saluran, sedangkan pada penerimaan akhir data tersebut dikumpulkan kembali dalam bentuk paralel. Dalam pemakaian kalkulator, bilangan yang dimasukkan melalui tombol kunci (tuts) perlu diubah dari bentuk desimal ke dalam biner. Sebaliknya bilangan yang muncul pada tampilan kalkulator juga mengalami proses pengubahan dari bentuk biner ke dalam format 7 segmen yang pada umumnya benbentuk desimal. Perhatikan Gambar berikut.
7
8
9
4
5
6
1
2
3
0
+
=
Enkoder
CPU
Dekoder
Gambar : Diagram aliran pengubahan tampilan
2
Kita hendak memasukkan bilangan desimal 9 dengan cara menekan tombol kunci 9. Rangkaian enkoder mengubah desimal 9 menjadi bentuk biner sebagai 1001. CPU menerina bilangan itu dalam bentuk biner 1001 karena CPU hanya dapat mengolah bentuk biner. Selanjutnya rangkaian dekoder mengubah bilangan biber 1001 kembali menjadi bentuk desimal 9. Akhirnya yang muncul dalam tampilan keluaran adalah desimal 9 seperti mula-mula. Dari penggambaran tersebut memperlihatkan terjadinya proses pengubahan dari satu jenis (kode) sistem bilangan menjadi jenis (kode) sistem bilangan lain. Awalnya dari kode desimal menjadi kode biner, dan akhirnya dari kode biner menjadi kode desimal. Suatu rangkaian pengubah suatu pesan bermakna menjadi kode tertentu disebut enkoder (penyandi). Sedangkan rangkaian pengubah suatu kode tertentu kembali menjadi makna sebernarnya disebut dekoder (pembaca sandi).
Sistem BCD (Biner Coded Decimal) Dalam kehidupan sehari-hari kita telah terbiasa dengan sistem bilangan desimal dan karenanya sistem ini dianggap sebagai kode yang paling bermakna. Dalam peralatan digital seperti pencacah frekuensi, multimeter digital, kalkulator, komputer, dan lain-lain menampilkan bilangan (angka) dalam bentuk desimal. Kita tahu bahwa mekanisme komputasi dalam alat alat tersebut terjadi dalam bentuk biner. Jika hasil komputasi tetap ditampilkan dalam bentuk biner, kita mengalami hambatan atau bahkan sulit memahaminya, karena kita tidak terbiasa dengan bilangan yang tampil dalam bentuk biner. Jadi jelaslah bahwa dalam pemakaiannya tampilan desimal lebih mudah difahami dari pada taampilan biner. Oleh karena itu diperlukan suatu cara penyandian dari biner ke desimal atau sebaliknya. Sebagai contoh, dengan menggunakan sandi biner paling sederhana, bilangan desimal 25 dan 43 masing-masing disandikan sebagai berikut 25(10) = 11001(2) 43(10) = 101011(2) Pada dasarnya dikenal dua jenis sandi biner yaitu sandi tak berbobot dan sandi berbobot. Seperti dua contoh di atas termasuk dalam sandi tak berbobot, setiap angka biner memiliki nilai sesuai dengan posisinya (satuan, duaan, empatan, dan seterusnya). Dalam sandi tak berbobot, semua digit bilangan desimal disandikan langsung, atau
3
sebaliknya semua pernyataan biner menyandikan suatu bilangan desimal, jadi bukan digit per digit. Dalam sandi berbobot hanya bilangan-bilangan 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9 yang disandikan. Untuk menyatakan bilangan desimal lebih dari satu digit, maka setiap digit disandikan sendiri. Salah satu sistem sandi berbobot adalah BCD (Biner Coded Dacimal) atau desimal yang disandikan biner. Untuk menyatakan setiap digit desimal diperlukan 4 bit biner. Susunan 4 bit biner tersebut menghasilkan 16 kombinasi yang berbeda, tetapi hanya diperlukan 10 kombinasi di antaranya. Untuk menyatakan bilangan desimal N digit diperlukan N x 4 bit biner. Kelompok 4 bit yang pertama (paling kanan) menyatakan satuan, kelompok 4 bit ke dua adalah puluhan, kelompok 4 bit ke tiga merupakan ratusan, dan seterusnya. Sebagai contoh bilangan desimal 468 (adalah 3 digit) memerlukan tiga kelompok 4 bit. Perhatikan Tabel berikut.
Bobot Sandi BCD Digit desimal
800 400 200 100 80 40 20 10 0 1 0 0 0 1 1 0 4 6
8 4 2 1 1 0 0 0 8
Tiga kelompok 4 bit tersebut dapat menyajikan bilangan antara 0 sanpai dengan 999 (seribu buah bilangan), dan karenanya dikatakan memiliki resolusi 1/1000 atau 0,1 %.
Dekoder Biner Ke BCD Data atau bilangan dalam mesin digital diproses dalam bentuk biner dan disajikan dalam bentuk kode. Untuk mengenal arti suatu kode diperlukan suatu rangkaian yang dikenal sebagai dekoder. Untuk merancang suatu rangkaian dekoder pada prinsipnya sama dengan merancang rangkaian
logika
pada umumnya. Salah
satu rangkaian dekoder adalah untuk mengenal (mengubah) data atau bilangan dalam bentuk biner tak berbobot menjadi sandi biner berbobot. Rangkaian tersebut dinamakan dekoder biner ke BCD. Perhatikan bilangan desimal 25 dan 43 yang disajikan dalam biner tak berbobot dan biner berbobot (BCD) seperti pada Tabel berikut. Tak berbobot Berbobot (BCD) Desimal
11001 0010 0101 2
5
4
101011 0100 0011 4
3
Selanjutnya, marilah kita rancang rangkaian dekoder biner ke BCD dan dibatasi untuk bilangan biner 4 bit sehingga bilangan terbesarnya adalah biner 1111 atau desimal 15. Untuk bit atau bilagan yang lebih besar prinsipnya sama. Rangkaian yang akan dibuat memiliki 4 terminal masukan (ABCD) dan 8 terminal keluaran (P3P2P1P0S3S2S1S0). Diperlukan 8 terminal keluaran karena bilangan-bilangan yang dihasilkan ada yang terdiri dari 2 digit (10, 11, 12, 13, 14, dan 15 masing-masing 2 digit). Tabel kebenaran rangkan yang dimaksud adalah tampak pada Tabel di bawah ini.
Biner Nomor Baris (Desimal) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
BCD D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
P3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Puluhan P2 P1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
P0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1
S3 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
Satuan S2 S1 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0
S0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Dari tabel di atas tampak bahwa ada 8 fungsi keluaran, tetapi 3 fungsi di antaranya, yaitu P3, P2, dan P1 selalu 0. Sehingga tinggal 5 fungsi masing-masing dapat dinyatakan dalam bentuk minterm sebagai : S0 = m (1,3,5,7,9,11,13,15) S1 = m (2,3,6,7,12,13) S2 = m (4,5,6,7,14,15) S3 = m (8,9) P4 = m (10,11,12,13,14,15).
5
Fungsi-fungsi tersebut jika dituangkan dalam peta Karnough dapat dilihat seperti pada Gambar di bawah ini.
AB CD
AB AB
0 1 1 0
C D CD C D CD
AB A B AB
0 1 1 0
0 1 1 0
CD
0 1 1 0
AB
C D CD C D CD
0 0 1 1
(a)
0 0 0 0
AB A B AB
1 1 1 1
0 0 1 1
CD
0 0 0 0
C D CD C D CD
(c)
C D CD C D CD
0 0 0 0
AB
0 0 0 0
AB A B AB
0 0 0 0
0 0 0 0
1 1 0 0
(d)
a). S0 = D
AB CD
1 1 0 0
AB AB
C D CD C D CD
0 0 1 1 (b)
AB CD
AB A B AB
AB
0 0 0 0
b). S1 = A C + AB C
AB A B AB
0 0 0 0
1 1 1 1
c). S2 = A B + BC
0 0 1 1
d). S3 = A B C e). P0 = AB + AC.
(e)
Gambar : Peta Karnough untuk keluaran-keluaran dari Tabel di atas.
6
Realisasi rangkaian dekoder biner ke BCD berdasarkan tabel
dan gambar di atas
ditunjukkan pada Gambar di bawah ini.
A
B
C
D
S0
S1
S2
S3
P0
P1 P2 P3
Gambar : Diagram rangkaian dekoder biner 4 bit ke BCD
7
Dekode BCD ke Desimal Data atau bilangan yang disajikan baik dalam sandi biner tak berbobot maupun dalam sandi BCD masih sulit untuk difahami orang pada umumnya, karena orang telah terbiasa
dengan bilangan desimal. Dengan demikian perlu rangkaian
untuk
mengubah dari sandi BCD ke desimal. Rangkaian inilah yang kita kenal sebagai dekoder BCD ke desimal. Marilah kita mencoba memahami pengubahan sandi BCD untuk menampilkan desimal 1 digit, misalnya desimal 9, yang tentu saja memerlukan 4 bit biner yang menyandi BCD. Operasi pengubahan
ini
dapat dihasilkan dengan
gerbang AND 4 masukan. Perhatikan Gambar berikut ini.
A = 1 (MSB)
A
B=0
B
C=0
C D
D = 1 (LSB) Gambar :
Saluran 9
Diagram rangkaian dekoder BCD (4 bit) Ke desimal 1 digit dengan gerbang AND 4 masukan.
Keluaran gerbang pada gambar di atas dalam keadaan 1 jika dan hanya jika masukanmasukan dalam sandi BCD bernilai A = 1 (MSB), B = 0, C = 0, dan D = 1 (LSB). Karena sandi ini akan menampilkan desimal 9, maka keluarannya ditandai dengan "saluran 9", (ABCD - 1001). Sebuah dekoder BCD ke desimal yang lebih lengkap dapat dilihat pada Gambar di bawah nin. Pada dekoder tersebut tetap digunakan gerbang NAND sehingga sebuah keluaran 0 (rendah) untuk kode BCD yang benar dan 1 (tinggi) pada kode lain yang salah. Dekoder tersebut memiliki 4 jalur masukan A, B, C, D dan 10 jalur keluaran untuk 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Untuk mendapatkan masukan komplemen A , B , C , D dapat digunakan gerbang NOT.
8
S
A B (MSB)
C
D (LSB)
A B C D = 0000
0
A B C D = 0001
1
A B C D = 0010
2
. . .
A B C D = 1001 9
Gambar : Dekoder BCD ke desimal menggunakan gerbang NAND.
Dekoder seperti gambar di atas juga dikenal sebagai dekoder 4 jalur ke 10 jalur (saluran), karena menunjukkan suatu kode masukan 4 bit yang memilih 1 di antara 10
9
saluran keluaran.Dengan kata lain dekoder tersebut bekerja sebagai saklar (switch) 10 posisi yang tanggap terhadap sebuah perintah masukan BCD. Kadang-kadang diperlukan agar sebuah dekoder bekerja hanya dalam selang waktu tertentu. Dalam fungsi demikian diperlukan satu tambahan terminal masukan pada setiap gerbang NAND. Terminal tambahan itu disebut sebagai STROBE atau ENABLE. Semua masukan STROBE (S) disambung bersama dan dibangkitkan dengan sinyal biner S. Jika S = 1 maka satu gerbang diijinkan (enable) dan terjadi proses penyandian. Jika S = 0 maka tidak ada kejadian yang mungkin dan proses penyandian dicegah. Suatu masukan STROBE tersebut
dapat digunakan suatu
dekoder yang memiliki sejumlah masukan dan keluaran sembarang.
Dekode BCD ke Peraga 7 Segmen Angka-angka yang sering kita baca pada alat-alat digital ditampilkan dengan lampu peraga yang terdiri dari 7 bagian (segmen). Penampil macam itu dikenal sebagai peraga 7 segmen. Perhatikan Gambar berikut. a
f
g
e
b
c
d Gambar : Peraga 7 segmen
Sebenarnya setiap segmen merupakan sebuah LED (Light Emitting Dyode), dan masingmasing segmen diberi nama secara berurutan sebagai segmen-segmen a, b, c, d, e, f, dan g seperti pada gambar 6.6. Angka desimal yang ditampilkan terbentuk dari segmensegmen yang menyala. Misal agar tampil angka 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.
10
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 berikut. Desimal
BCD
Segmen yang menyala
(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
Segmen yang menyala pada tabel tersebut 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).
11
Berdasarkan fungsi-fungsi keluaran di
atas
kita
dapat menuangkannya ke dalam
peta Karnough seperti tampak pada Gambar berikut.
AB CD
AB AB
C D CD C D CD
1 0 1 1
AB A B AB
0 1 1 1
X X X X
CD
1 1 X X
AB
C D CD C D CD
1 1 1 1
(a)
1 1 1 0
AB A B AB
1 1 1 1
X X X X
CD
1 1 X X
AB
C D CD C D CD
1 0 1 1
(c)
AB A B AB
0 1 0 0
X X X X
1 1 X X
AB AB
C D CD C D CD
1 1 X X
(d)
AB CD
X X X X
AB AB
C D CD C D CD
1 0 1 0 (b)
AB CD
AB A B AB
1 0 0 1
AB A B AB
0 0 0 1
X X X X
CD
1 1 X X
C D CD C D CD
(e)
AB
1 0 0 0
AB A B AB
1 1 0 1
X X X X
1 1 X X
(f)
AB CD
C D CD C D CD
AB
0 0 1 1
Gambar :
AB A B AB
1 1 0 1
X X X X
Peta Karnough rangkaian dekoder BCD ke peraga 7 segmen
1 1 X X
X : tak peduli (don’t care)
(g)
12
Persamaan logika untuk setiap jalur keluaran berdasarkan pada gambar di atas adalah :
a = A + BD + B D + CD b = B + C D + CD c=B+ C +D d = B D + BC D + C D + B C e = B D + CD f = C D + B D + BC + A g = B C + B C + C D + A.
Realisasi rangkaian dekoder BCD ke peraga 7 segmen dapat diperhatikan pada Gambar di bawah ini.
Diagram rangkaian seperti gambar berikut bukanlah satu-satunya rangkaian BCD ke peraga 7-segmen. Anda dapat mencoba rangkaian sejenis yang berbeda tergantung dari
teknik penyandian, pernyataan fungsi keluaran dalam bentuk maxterm atau
minterm, dan cara penggabungan atau penyederhanaan dari peta Karnuoghnya.
13
A
B
C
D
g
f
e
d
c
b
a
Gambar : Diagram rangkaian dekoder BCD ke peraga 7-segmen.
14
Langkah-langkah Percobaan : Untuk IC seri 7447/7448 (BCD To Seven Segment \ Decoder), maka bentuk, letak dan fungsi dari kaki-kakinya (pin) adalah sebagai berikut :
16
15
14
13
12
11
10
9
Vcc
f
g
a
b
c
d
e Vcc Gnd
7447 A
B
1
2
LT BI/RBO 3
4
RBI
C
D
Gnd
5
6
7
8
: + 5 volt : tanah
Keluaran pada IC 7447 akan aktif apabila berlogika rendah. Oleh karena itu, jika menggunakan IC 7447 sebagai dekoder, maka peraga 7-segmennya menggunakan jenis anoda bersama (Commond anoda) atau kaki-kaki keluarannya sebelum dihubungkan dengan peraga 7-segmen harus terlebih dahulu dilewatkan pada INVERTER (7404) agar logika yang diterima peraga sesuai bila digunakan peraga jenis katoda bersama. Tetapi bila digunakan dekoder lain seperti 7448, maka INVERTER tidak diperlukan lagi bila menggunakan peraga jenis katoda bersama. Jadi keluaran dari 7448 langsung dihubungkan ke kaki-kaki peraga yang sesuai setelah dilewatkan pada resistor pembatas arus. Keadaan kaki-kaki IC 7448 adalah sebagai berikut :
16
15
14
13
12
11
10
9
Vcc
f
g
a
b
c
d
e Vcc Gnd
7448 A
B
1
2
LT BI/RBO RBI 3
4
5
C
D
Gnd
6
7
8
15
: + 5 volt : tanah
Ukurlah tegangan keluaran a,b,c,d,e,f, dan g pada 7447/7448, atau amatilah gejala yang terjadi pada indikator LED (berperan sebagai peraga 7-segmen) atau segmen-segmen pada peraga 7-segmen berdasarkan variasi masukan pada A, B, C dan D (ada 16 variasi). Pin 3 ( LT ), pin 4 ( BI / RBO ), dan pin 5 ( RBI ) dalam percobaan ini dipasang pada keadaan logika
tinggi. Kemudian masukkanlah data pengamatan itu ke dalam tabel di bawah ini :
Masukan
Keluaran
B
C
D
a
b
C
d
e
f
g
Bentuk yang ditampilkan
dst. dst.
dst.
dst.
dst.
dst.
dst.
dst.
dst.
dst.
dst.
dst.
A
Apabila decoder 7447 dihubungkan dengan peraga 7-segmen anoda bersama (CA), maka skema rangkiannya dapat dilihat pada gambar berikut ini :
+ 5 volt
16 A B C D
a b c d e f g
13 12 11 10 9 15 14
7 1 2 6 8 7447
a f e
b g
c
d
150
Selanjutnya adalah mengulangi percobaan seperti di atas tetapi untuk nilai LT , BI / RBO , dan RBI yang bervariasi. Carilah pengaruh keadaan logik pada LT , BI / RBO , dan RBI terhadap tampilan pada peraga 7-segmen. Berdasarkan hasil pengamatan bandingkanlah hasilnya dengan hasil yang diperoleh secara teoritis. Kesimpulan apa yang dapat diperoleh setelah melakukan perbandingan tadi ?
16
Apabila decoder 7448 dihubungkan dengan peraga 7-segmen katoda bersama (CC), maka skema rangkiannya dapat dilihat pada gambar berikut ini :
+ 5 volt 150
16 A B C D
13 12 11 10 9 15 14
8 1 2 7 8
a b c d e f g
a f e
b g
c
d
7448
Ulangi pengamatan sebagaimana langkah-langkah sebelumnya !
17