P. 1
Jam Digital

Jam Digital

5.0

|Views: 359|Likes:
Published by umi marfuah

More info:

Published by: umi marfuah on Jan 05, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/24/2015

pdf

text

original

MAKALAH TUGAS RANCANG PRAKTIKUM SISTEM DIGITAL TAHUN AJARAN 2007/2008

JAM ALARM DIGITAL

Nama Anggota Kelompok Teddy Tjahyadi Friska Setiokoadiputro Stephen Jeffry Vernando Bustam Daniel Giovanni 1000835316 1000836445 1000837624 1000838085 1000838330

BINUS UNIVERSITY JAKARTA 2008

JAM ALARM DIGITAL Diajukan sebagai salah satu syarat untuk menyelesaikan program studi praktikum sistem digital tahun ajaran 2007/2008

Nama Anggota Kelompok Teddy Tjahyadi Friska Setiokoadiputro Stephen Jeffry Vernando Bustam Daniel Giovanni 1000835316 1000836445 1000837624 1000838085 1000838330

Asisten Pembimbing Ronny Haryanto

BINUS UNIVERSITY JAKARTA 2008

Binus University
Jurusan Sistem Komputer Tugas Rancang Sistem Digital semester genap tahun 2007/2008 JAM ALARM DIGITAL Nama Anggota Kelompok Teddy Tjahyadi Friska Setiokoadiputro Stephen Jeffry Vernando Bustam Daniel Giovanni Abstrak Dewasa ini, kita telah mengetahui banyaknya penggunaan jam digital. Hal ini dimaksudkan untuk pembacaan jam yang lebih mudah. Dengan demikian penulis bermaksud untuk membuat aplikasi dari pelajaran Sistem Digital dengan membuat sebuah jam alarm digital. Jam alarm digital yang penulis buat akan ditampilkan pada 6 buah seven segment, dan untuk melakukan setting jam, penulis menyediakan 4 buah tombol yang digunakan untuk melakukan setting terhadap jam alarm digital ini. Sedangkan untuk setting waktu alarm itu sendiri, penulis menyediakan 6 buah toggle-switch yang akan digunakan untuk melakukan setting kepada alarm. Dan 1 buah switch On-Off untuk alarm itu sendiri. Sedangkan untuk bunyi alarm sendiri, penulis menggunakan buzzer. Penulis juga menyediakan 1 buah socket DC yang akan digunakan untuk sebagai tempat masuknya sumber daya utama dari jam alarm digital yang penulis buat ini serta satu buah switch On-Off untuk sumber daya utama tersebut. Untuk pengolahan gerbang-gerbang logika yang digunakan, penulis menggunakan 7 buah IC GAL 16V8, 1 buah IC GAL 22V10, 1 buah IC gerbang NOT (74LS04), dan 1 buah IC gerbang XOR (74LS86). Sementara untuk pencengahan bouncing pada 4 buah tombol yang digunakan untuk pen-settingan waktu maka penulis menggunakan rangkaian monostable dari IC LM555. Kata Kunci: GAL 16V8, GAL 22V10, LM555, Seven Segment, Toggle Switch, Switch OnOff, Buzzer, Socket DC. 1000835316 1000836445 1000837624 1000838085 1000838330

..................................................... 3.............................................................................. 83 85 .. 79 Bab V Kesimpulan.....................................2 Blok Diagram................................................................................1 Gambaran Sistem Secara Umum.....................................................................................................................................................................................................................................................................1 Programmable Logic device (PLD).............5 Flow Chart...............1 Data Hasil Percobaan..............................3 Rangkaian Sekuensial (Stepper) pada PLD.............. i ii iii iv Bab I Pendahuluan........................................................................ 2.............................................5 Timer Dan Multivibrator...................... 2................................................. 2.............................................................................................. 1 1...............................................2 Software Development Tools (Wincupl)...... 2.......................................................................2 Tujuan dan Manfaat........................................................ 3....................... Halaman dalam makalah................................................. Bab III Perancangan Sistem...................................1 Latar Belakang...................... 3...... 82 Daftar Pustaka...... 4 5 8 15 19 21 35 36 38 39 40 69 Bab IV Evaluasi dan implementasi............................................................................................................................................................................ Abstrak................................................................................. 2 1.........................3 Skematik Rangkaian...............................................................4 Seven Segment................................................. Daftar isi... 3......................... Lampiran....................................................................................4 Cara Kerja Rangkaian Dan Coding..................................................................................................................... 2 Bab II Landasaran Teori... 2............ 78 4..............................................DAFTAR ISI Halaman luar makalah................................................................................................................................................... 3.........................................................................................

BAB I PENDAHULUAN TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

kebanyakan orang masih menggunakan jam alarm analog.00 alarm akan langsung berbunyi.BAB 1 PENDAHULUAN 1. pengaturan alarm akan lebih presisi karena menggunakan logiklogik yang membuat alarm akan lebih presisi. Jam analog memiliki beberapa kelemahan seperti ketelitian yang kurang tepat dalam membaca jam analog.2 Tujuan dan Manfaat Tujuan .1 Latar Belakang Seperti kata pepatah “waktu adalah uang”. pada pengaturan alarm jam analog tidak memiliki presisi yang tinggi. Pada Jam analog yang memiliki fasilitas alarm. sampai jam digital dengan alarm.00 maka pada saat jam menunjukan pukul 05. mulai dari jam analog biasa. Ada berbagai macam jenis dan model jam yang sudah beredar di pasaran. sebagai contoh jika jarum jam panjang yang menunjukan menit jika terletak diantara angka tiga dan angka empat. Pada jam digital. sebagai contoh jika ingin mengatur alarm pada pukul 05. Namun.01 atau 04. 1.Sehingga ini membuat penulis tertarik untuk membuat jam alarm digital. dijaman modern seperti sekarang ini waktu adalah hal yang sangat berharga bagi manusia. Jam adalah alat yang digunakan manusia untuk mengetahui waktu. jam analog dengan fitur khusus seperti alarm.59 karena tidak memiliki presisi yang tinggi. akan sangat sulit untuk mengetahui tepat menit berapa saat itu. sebagai contoh pada saat alarm di set pada pukul 05.00 pada jam analog alarm bisa saja bunyi pada pukul 05.

. Pada jam digital. pengaturan alarm juga akan lebih presisi karena menggunakan logika-logika yang membuat alarm akan lebih presisi. Manfaat Penulis berharap agar jam alarm digital yang dibuat dapat bermanfaat bagi banyak orang khususnya dalam hal ketepatan indikasi waktu dan ketepatan alarm sebagai pengingat waktu.Penulis bermaksud agar makalah dan tugas rancang ini dapat membuat pengguna jam akan menjadi mudah untuk membaca. Pada pembacaan jam digital akan sangat mudah untuk dibaca dan sangat tepat karena jam digital menampilkan angka secara presisi karena jam digital menampilkan jam berupa angka-angka. Serta penulis juga merasakan manfaat yaitu penulis dapat mengenal sistem digital dengan lebih baik beserta aplikasi-aplikasinya.

BAB II LANDASAN TEORI TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

Tentunya ini bertujuan untuk memudahkan user dalam membuat gerbang-gerbang logika. Sebelumnya kita harus mengenal dahulu jenis-jenis PLD. IC (Integrated Circuit) yang dapat diprogram gerbang-gerbang logikanya bernama PLD (Programmable Logic Device). Karena perkembangan zaman maka produsen pembuat IC memikirkan bagaimana kita membuat sebuah gerbang logika di dalam IC tidak ditentukan oleh produsen IC tersebut tetapi dapat diprogram oleh User. diantaranya : a) SPLD ( Simple Programmable Logic Device) SPLD adalah sebuah device yang dapat diprogram secara logika yang mempunyai komplekstivitas dibawah CPLD Contoh : GAL 16V8 b) CPLD ( Complex Programmable Logic Device) CPLD adalah sebuah device yang dapat diprogram secara logika yang mempunyai komplekstivitas diantara PAL dan FPGA Contoh : Altera MAX 7000 (mempunyai 2500 gerbang) .1 Progamable Logic Device (PLD) Selama ini kita mengenal pembuatan gerbang-gerbang logika menggunakan IC-IC khusus yang didalam telah terintegrasi gerbang-gerbang logika yang telah ditentukan.BAB 2 LANDASAN TEORI 2.

untuk rangkaian D –FlipFlop yang berada di dalam GAL Pin 2.6.7. Berikut adalah gambar konfigurasi dari pin GAL 16V8 Fungsi. Tetapi sebenarnya GAL 16V8 hanya mempunyai 20 pin. Sehingga nantinya ada pin yang dapat berfungsi sebagai input dan output.8.5. GAL 16V8 sesuai dengan namanya mempunyai 16 pin input dan 8 pin output.Fungsi Pin : Pin 1 : Pin tempat masuknya Clock.3.Konfigurasi GAL GAL 16V8 merupakan IC PLD (Programmable Logic Device) berjenis SPLD (Simple Programmable Logic Device) keluaran perusahaan Lattice.9 Pin 10 : Pin yang berfungsi sebagai input : Pin ground dari Gal 16V8 .4.

1.19 Pin 20 : Pin yang dapat berfungsi sebagai input ataupun output : Pin tempat VCC (5V) sebagai syarat agar GAL dapat bekerja.15.8.14. input daya agar GAL 22V10 dapat bekerja.71.13. - Pin 1 : Pin Tempat masuknya Clock.16. IC GAL dibawah ini diberi nama 22V10 karena memilki 22 pin input (11 pin input dan 11 lainnya pin input yang dapat berfungsi sebagai pin output) dan 10 pin output.Pin 11 : Pin yang harus diaktifkan menggunakan Clock ketika GAL akan Pin 12. Pin 2-11 dan 13 : Pin yang berfungsi sebagai input Pin 12 : Pin Ground dari GAL 22V10 . .Pin 14 – 23 : Pin yang dapat berfungsi sebagai input ataupun output ( tergantung deklarasi pin tersebut) Pin 24 : Pin tempat Vcc (5V).

Lalu akan muncul beberapa dialog box.2 Software Development Tools (WinCupl) WinCUPL adalah program (Software Development Tools) buatan ATMEL yang berfungsi untuk memprogram PLD (Programmable Logic Device). Contohnya PLD keluaran LATTICE GAL 16V8 dapat memakai program ini.2. Klik File  New Project atau Design File. 3. Program ini tidak tertutup untuk digunakan PLD diluar keluaran ATMEL. Bukalah program WinCupl 2. Pembuatan File Baru Untuk pembuatan file baru dapat dilakukan dengan prosedur berikut : 1. 4. Yang lain biarkanlah secara default atau jika diganti tidak akan bermasalah. Isilah Name : (dengan nama file yang akan di save) Device : (dengan nama device yang dipakai Contoh:Gal16V8) Kedua bagian inilah yang terpenting untuk diisi secara benar. diantaranya : a) Input Pin : Isi sebanyak input pin yang akan dipakai b) Output Pin : Isi sebanyak output pin yang akan dipakai c) Pinnode Pin : Pinnode adalah pin virtual yang dapat diubah perannya dalam program (biasanya diisi 0) . Lalu akan muncul dialog box.

file yang dituliskan adalah file yang berekstensi Jed.Dialog box untuk menginput ke 3 pin tersebut hanyalah membantu kita dalam mengisi property yang akan kita gunakan dalam program. dan dialog box ini hanya muncul 1 kali pada saat kita membuat project baru. Sampai langkah ini kita telah siap melakukan pemrograman 7. 5. maka kita dapat menuliskan program ke IC. 8. Perlu diketahui ada beberapa keyword yang cukup penting di WinCupl. diantaranya adalah : a) Pin . Setelah melakukan pemrograman compilelah dengan menggunakan tombol F9 atau Device Dependent Compile dan lakukan simulasi dengan WinSim. Namun demikian property tersebut masih dapat ditambahkan secara manual dengan mengetikkannya di program tersebut. 6. Pin yang telah ditentukan harus diberi inisialisasi dengan mengetikkan no pin sebelum tanda sama dengan dan nama pin sesudah tanda sama dengan. Setelah compile sukses dan hasil simulasi sesuai dengan keinginan.

Dan juga digunakan untuk mendeklarasikan nama dari sebuah pin.D2] . Pada WinCupl penulisan gerbang logika mempunyai syntax sebagai berikut : . Artinya Pin 3 diberi nama In1. Dan untuk selanjutnya jika ingin melakukan operasi logika pada pin 3 cukup menggunakan nama In1. Maka nantinya kita akan sering bermain dengan gerbang-gerbang logika. Dengan table kebenaran yang telah ditentukan oleh user maka user tidak perlu lagi memikirkan gerbang-gerbang logika untuk membuat table kebenaran tersebut. Digunakan untuk mengumpulkan nama-nama pin menjadi satu variable.D1.D1.Pin adalah keyword yang digunakan untuk menyatakan pin yang dipakai pada GAL. c) Table Table adalah sebuah keyword untuk membuat sebuah table kebenaran. Contoh field output =[D0. digunakan untuk pin input maupun output.D2 diberi nama output. artinya pin dengan nama D0. Syntax-Syntax dan Deklarasi Variable pada WinCupl Karena wincupl merupakan software development tools untuk memprogram PLD. Contoh : Pin 3 = In1. b) Field Field yang berarti lapangan. Sehingga dengan table kebenaran ini input yang diberikan akan keluar menjadi output sesuai dengan table kebenaran.

/*gerbang not*/ Penulisannya dengan cara menempatkan character ! sebelum inputnya d) XOR  in0 $ in1 . /*gerbang exclusive or*/ Penulisannya dengan cara menempatkan character $ diantara kedua inputnya e) NAND  ! ( in0 & in1 ) . /*gerbang or*/ Penulisannya dengan cara menempatkan character # diantara kedua inputnya c) Not  ! in0 . /*gerbang and*/ Penulisannya dengan cara menempatkan character & diantara kedua inputnya b) Or  in 0 # in1 . /*gerbang exclusive not or*/ .Misal input yang ada diberi nama in0 dan in1 a) And  in 0 & in1 . /*gerbang not or*/ Penulisannya dengan cara menempatkan character # diantara kedua inputnya lalu diberi tanda kurung serta di depannya diletakkan character ! g) XNOR  ! ( in0 $ in1 ) . /*gerbang not and*/ Penulisannya dengan cara menempatkan character & diantara kedua inputnya lalu diberi tanda kurung serta di depannya diletakkan character ! f) NOR  ! ( in0 # in1 ) .

Penulisannya dengan cara menempatkan character $ diantara kedua inputnya lalu diberi tanda kurung serta di depannya diletakkan character ! Namun demikian kita dapat mengubah character-character tersebut menggunakan kata-kata yang lebih familiar dengan kita. maka character tersebut dapat diganti dengan tulisan and (sesuai dengan kata-kata yang telah kita define di atas untuk mengganti character &) Out 0 = in0 or in1.  Jika sebelumnya untuk menuliskan gerbang or dengan memberikan character # diantara kedua inputnya. maka character tersebut dapat diganti dengan tulisan or (sesuai dengan kata-kata yang telah kita define di atas untuk mengganti character #) .  Jika sebelumnya untuk menuliskan gerbang and dengan memberikan character & diantara kedua inputnya. Hal ini bertujuan untuk mempermudah pembacaan program yang telah kita buat. Hal ini dapat dilakukan dengan melakukan dekalarasi terlebih dahulu sebelum kita memulai menulis program. $define negasi ! $ define and & $define or # $define xor $ Out 0 = in0 and in1.

. Pin 4 = in2.  Jika sebelumnya untuk menuliskan gerbang not dengan memberikan character ! si sebelum inputnya. maka character tersebut dapat diganti dengan tulisan negasi (sesuai dengan kata-kata yang telah kita define di atas untuk mengganti character !) Out 0 = in0 xor in1. maka character tersebut dapat diganti dengan tulisan xor (sesuai dengan kata-kata yang telah kita define di atas untuk mengganti character $) Setelah kita mengenal character-character yang kita gunakan untuk melakukan operasi logika. Pin 3 = in1. Pin 5 = in3.  Jika sebelumnya untuk menuliskan gerbang exclusive or dengan memberikan character $ diantara kedua inputnya.5] = [in0. Ada beberapa hal yang perlu kita ketahui untuk mempermudah pendeklarasian nama pin dan field.3]. Hal diatas dapat diganti dengan menggabungkannya ke dalam sebuah kalimat perintah sebagai berikut : Pin [2.Out 0 = negasi in1.. Pada umumnya kita mendeklarasikan pin input sebagai berikut : Pin 2 = in0. .

Pin [2.out3] .. Pin 3 = out1. Pin [2.5] = [in0.out2. Pin 4 = out2. Pin 5 = out3..in3]. Pin [2.. Ketiga pin diatas tidak mempunyai maksud yang berbeda.out1.3]..in1. Hal ini berlaku juga di pin Output: Pada umumnya kita mendeklarasikan pin output sebagai berikut : Pin 2 = out0..in3] .5] = [out0. Hal ini berlaku juga untuk pendeklarasian field: . Pin [2.5] = [out0.out1. Hal diatas dapat diganti dengan menggabungkannya ke dalam sebuah kalimat perintah sebagai berikut : Pin [2.. Ketiga pin diatas tidak mempunyai maksud yang berbeda.in2.in1.Pada intinya ketiganya mempunyai maksud yang sama dengan pendeklarasian pin output secara umum di atas..Pada intinya ketiganya mempunyai maksud yang sama dengan pendeklarasian pin input secara umum di atas.out3]..5] = [in0.5] = [out0.

Jadi ketika kita menginput sesuatu maka outputnya bisa saja berbeda.3]. walaupun dengan input yang sama. Shift Register .in1. hal ini juga berlaku untuk pendeklarasian field output (dengan cara yang sama).in1.in3] Hal diatas dapat diganti menjadi penulisan yang lebih simple menjadi : Field input = [in0.. Counter. b) Rangkaian Sekuensial Rangkaian Sekuensial adalah rangkaian yang outputnya tergantung output-output sebelumnya. Jadi ketika kita menginput sesuatu maka outputnya akan sama sampai kapanpun selama yang kita input selalu sama. Kedua cara penulisan diatas tidak mempunyai maksud yang berbeda.Pada intinya ketiganya mempunyai maksud yang sama dengan pendeklarasian field secara umum di atas.3 Rangkaian Sekuensial (Stepper) pada PLD Telah kita ketahui bahwa rangkaian digital terdiri dari dua buah yaitu : a) Rangkaian Kombinasional Rangkaian Kombinasional adalah rangkaian yang outputnya tidak tergantung outputoutput sebelumnya. 2.in2.Pada umumnya kita mendeklarasikan field sebagai berikut : Field input = [in0. Contohnya : rangkaian flip-flop. Field input = [in0.3]..

/* ..0] . Dapat dilihat dicontoh program berikut ini: Name PartNo Date HalfStep . /* */ field count = [Q3. Telah diketahui bahwa pada percobaan di LAB CE pada pertemuan 6 bahwa penggunaan rangkaian sekuensial pada PLD dikonsentrasikan untuk menggerakkan motor stepper.0].3] /* *************** OUTPUT PINS *********************/ PIN [12.15] = [Q3. tetapi juga dapat memprogram rangkaian sekuensial. 5/22/2008 . Revision 01 . /* *************** INPUT PINS *********************/ PIN PIN 1 = CLK = [D0. $define S0 'b'0000 ... 00 . Company Atmel ... Assembly None . Location Device .1] . /* */ */ [2. Designer Engineer . G16V8 .Perlu diketahui juga bahwa PLD (Programmable Logic Device) tidak hanya dapat memprogram rangkaian kombinasional.

if back next S8.3] .1]. present S4 if go next S5. if stop next S0. /*Clockwise*/ back = mode :2 . if back next S8. go = mode :1 . /*Stop*/ sequenced count { present S0 if go next S1. if stop next S2. if back next S1. present S5 if go next S6. if back next S3.$define S1 'b'0001 $define S2 'b'0011 $define S3 'b'0010 $define S4 'b'0110 $define S5 'b'0100 $define S6 'b'1100 $define S7 'b'1000 $define S8 'b'1001 field mode = [D0.. if back next S4. present S2 if go next S3. /*Counter CLockWise*/ stop = mode : [0. if stop next S3. present S3 if go next S4. if stop next S1. . if back next S2. present S1 if go next S2. if stop next S4.

} Dapat dilihat bahwa program diatas bertujuan untuk menggerakkan motor stepper secara half step dengan arah yang dapat diatur sesuai input user pada pin 2 maupun pin 3 (Clockwise . if back next S6. if stop next S8. Atau jika mode stop (00 atau 11) yang menjadi input di pin 3 dan pin 2 maka jika clock berikutnya diberikan maka akan tetap berada pada state S1. present S6 if go next S7. . if stop next S6. if stop next S7. Contoh : Ketika output berada pada kondisi State S1 (0001) maka jika input pin 3 dan pin 2 menunjukkan mode go (01) maka jika clock berikutnya diberikan akan meloncat ke State S2. Pada awalnya PLD akan mencheck kondisi mana yang terpenuhi di outputnya kemudian melihat kondisi di pin input (kondisi mana yang ingin dipenuhi oleh user) untuk clock selanjutnya. Tetapi jika mode back (10) yang menjadi input di pin 3 dan pin 2 maka jika clock berikutnya diberikan maka akan meloncat ke State S8.if stop next S5. Counter Clockwise. present S8 if go next S1. present S7 if go next S8. if back next S5. Stop). if back next S7.

. kaki cathode dari setiap LED perlu dihubungkan dengan Ground. Seven Segment dibedakan menjadi dua yaitu : a) Common Anode Common Anode adalah jenis seven segment yang menggabungkan seluruh kaki anode dari LED dan menghubungkannya ke satu pin yang akan diberi dengan Vcc.Logika-logika seperti inilah yang nantinya akan diterapkan pada coding pada Jam Alarm Digital. 2.4 Seven Segment Seven Segment merupakan device yang berfungsi untuk menampilkan bilangan decimal dimana bilangan tersebut dinyatakan oleh segment (LED) yang akan menyala untuk menampilkan bilangan decimal tersebut. Sehingga untuk menyalakan satubuah segment.

Sehingga untuk menyalakan satu buah segment kaki Anode dari setiap LED perlu dihubungkan dengan Vcc (5V). b) Common Cathode Common Cathode adalah jenis seven segment yang menggabungkan seluruh kaki Cathode dari LED dan menghubungkannya ke satu pin yang akan diberi dengan Ground. kaki anode mempunyai tegangan lebih tinggi dari cathode. . harus diberikan logic 1 (Vcc) sehingga segment tersebut dapat menyala karena terjadi perbedaan tegangan di kaki cathode dan anode.Dapat kita lihat dari gambar di atas bahwa untuk menyalakan setiap segment dari LED tersebut pin2 cathode tersebut yang telah diberi nama huruf. kaki anode mempunyai tegangan lebih tinggi dari cathoode. Dapat kita lihat dari gambar di atas bahwa untuk menyalakan setiap segment dari LED tersebut pin2 Anode tersebut yang telah diberi nama huruf.harus diberikan logic 0 (ground) sehingga segment tersebut dapat menyala karena terjadi perbedaan tegangan di kaki cathode dan anode.

IC LM 555 Rangkaian timer (pewaktu) adalah rangkaian yang menghasilkan perubahan keadaan output sesudah selang waktu yang ditentukan.5 Timer dan Multivibrator Pada saat ini sudah banyak rangkaian digital yang menggunakan clock. Pada IC Timer 555. Yang biasanya diberikan kepada suatu rangkaian. Salah satu rangkaian terpadu (IC) yang paling banyak digunakan sebagai timer adalah IC tipe 555. flip-flop RS dan transistor .2. Terutama dalam penggunaan rangakaian synchronous. Clock biasanya terdiri dari logic-logic high dan low. Agar rangkaian tersebut dapat bekerja. IC ini digunakan untuk membuat tundaan waktu atau osilasi (Osilator) yang cukup akurat dari mikro detik sampai beberapa menit. Pada rangkaian ini pengunaan clock amatlah penting. didalamnya digabungkan sebuah osilator relaksasi. Clock dapat dihasilkan dari berbagai cara mulai dari penggunaan gerbang-gerbang logika sampai dengan penggunaan IC contohnya LM555. dua pembanding (comparator).

.Konfigurasi Pin dari LM 555 : Pin 1 Pin 2  Pin Ground  Pin untuk eksternal trigger. Biasanya dilambangkan dengan huruf T dan dalam satuan second (detik). biasanya digunakan untuk mengontrol tegangan agar lebih stabil dengan dihubungkan ke kapasitor. Pin 3 Pin 4  Pin Output  Pin Reset yang berfungsi untuk mereset rangkaian Flip-Flop yang terdapat di dalam LM 555. Pin 5  Pin Control Voltage. diperlukan untuk rangkaian monostable dan bistable pada LM 555. Berikut adalah contoh gambar output dari sebuah clock : Penggunaan clock tidak lepas juga dari hal-hal yang perlu kita ketahui yaitu : a) Periode Periode adalah waktu yang diperlukan suatu signal untuk mendapatkan 1 cycle signalnya. monosatble dan bistable. Pin 8  Pin Vcc merupakan pin input daya untuk LM554 agar bekerja. Pin 7 Pin Discharge merupakan pin tempat masuknya arus discharging dari kapasitor ke ground yang melalui transistor yang terdapat di dalam LM 555. Pin 6  Pin Threshold merupakan pin tempat masuknya tegangan kapasitor yang digunakan untuk konfigurasi rangkaian astbale .

Multivibrator adalah suatu rangkaian yang terdiri dari dua buah piranti aktif . c) Duty Cycle Duty Cycle adalah perbandingan lama waktu suatu signal berada dalam kondisi high dengan lama waktu suatu signal tersebut dalam kondisi (high+low). Rumus Duty Cycle Duty Cycle = Rangkaian pembangkit signal clock sering disebut multivibrator. duty cycle sangat berguna dalam merancang alat-alat yang menggunakan konsep PWM (Pulse Width Modulation). Contoh alat-alat yang menggunakan konsep PWM adalah penggunaan lampu yang dapat diatur terangnya.b) Frekuensi Frekuensi adalah banyaknya cycle yang dapat dibentuk oleh suatu signal dalam 1 detik. Biasanya dilambangkan dengan huruf f dan dalam satuan Hertz (Hz). tidak seperti lampu yang biasa dimana hanya dapat menyala dan mati. namun lampu yang mengunakan konsep PWM dapat membuat derajat terangnya diantara terang total dan mati.

sedangkan piranti yang lain dipaksa melakukan penghantaran. Berikut adalah contoh-contoh rangkaian multivibrator : a) Astable Astable adalah rangkaian pembangkit signal yang outputnya tidak stabil di dua state (high dan lownya) dan terus beroscilasi dari satu state ke state lainnya. Penggunaan konfigurasi astable dengan timer 555 . Dalam hal ini tidak diperlukan sinyal trigger luar untuk menghasilkan perubahan keadaan. Umpan balik positif yang dihasilkan menyebabkan piranti yang satu harus di cut off. monostable dan astable. Karena sifat osilasi diantara dua keadaan ini. rangkaian astabil digunakan untuk menghasilkan gelombang segi empat. Multivibrator dikelompokkan kedalam bistable.dengan keluaran yang saling berhubungan dengan masukan yang lain.

Cara kerja dari konfigurasi Astable pada LM 555  Tegangan kapasitor pada awalnya masih berlogic 0 . Ini membuat Op-Amp atas kaki input . dan ketika tegangan kapasitor mencapai titik tegangan sedikit diatas 1/3 Vcc.  Kemudian karena kapasitor yang terus charging. Kemudian Op-Amp bawah kaki input – mendapatkan tegangan 0 V. dan kaki + mendapatkan tegangan 1/3 Vcc. karena tegangan kaki + lebih besar dari kaki – maka Op-Amp mengeluarkan logic 1. karena tegangan kaki – lebih besar dari kaki + maka op-amp atas akan mengeluarkan logic 0. Sehingga Op-Amp atas kaki input – mendapatkan tegangan 2/3 Vcc sedangkan kaki + mendapatkan tegangan 0V. Kedua hal tersebut diatas membuat pin S mendapatkan logic 0 dan pin R mendapatkan logic 1 sehingga RS Flip-Flop akan membuat Q berlogic 0 (membuat transistor tidak aktif dan kapasitor tidak bisa discharging) dan Q’ (Output) berlogic 1.

Ini membuat Op-Amp atas kaki input – mendapatkan tegangan 2/3 Vcc sedangkan kaki + mendapatkan tegangan sedikit diatas 2/3Vcc. Kedua hal tersebut diatas membuat pin S mendapatkan logic 1 dan pin R mendapatkan logic 0 sehingga RS Flip-Flop akan membuat kondisi Q berlogic 1 (membuat transistor aktif dan kapasitor bisa discharging) dan Q’ (Output) berlogic 0. karena tegangan kaki + lebih kecil dari kaki – maka Op-Amp mengeluarkan logic 0. Kedua hal tersebut diatas membuat pin S mendapatkan logic 0 dan pin R mendapatkan logic 0 sehingga RS Flip-Flop akan membuat kondisi hold dan output sebelumnya yaitu Q berlogic 0 (membuat transistor tidak aktif dan kapasitor tidak bisa discharging) dan Q’ (Output) berlogic 1 akan dipertahankan. . Kemudian Op-Amp bawah kaki input – mendapatkan tegangan sedikit diatas 2/3Vcc. karena tegangan kaki – lebih kecil dari kaki + maka op-amp atas akan mengeluarkan logic 1.– mendapatkan tegangan 2/3 Vcc sedangkan kaki + mendapatkan tegangan sedikit diatas 1/3Vcc. dan kaki + mendapatkan tegangan 1/3 Vcc. karena tegangan kaki – lebih besar dari kaki + maka op-amp atas akan mengeluarkan logic 0.  Kemudian kapasitor akan terus charging sampai tegangan kapasitor mencapai titik tegangan sedikit di atas 2/3 Vcc. karena tegangan kaki + lebih kecil dari kaki – maka Op-Amp mengeluarkan logic 0. Kemudian Op-Amp bawah kaki input – mendapatkan tegangan sedikit diatas 1/3Vcc. dan kaki + mendapatkan tegangan 1/3 Vcc.

dan kaki + mendapatkan tegangan 1/3 Vcc. Kedua hal tersebut diatas membuat pin S mendapatkan logic 0 dan pin R mendapatkan logic 1 sehingga RS Flip-Flop akan membuat kondisi Q berlogic 0 (membuat transistor tidak aktif dan kapasitor tidak bisa discharging) dan Q’ (Output) . Kemudian Op-Amp bawah kaki input – mendapatkan tegangan sedikit dibawah 1/3Vcc. Kedua hal tersebut diatas membuat pin S mendapatkan logic 0 dan pin R mendapatkan logic 0 sehingga RS Flip-Flop akan membuat kondisi hold dimana output sebelumnya Q berlogic 1 (membuat transistor aktif dan kapasitor bisa discharging) dan Q’ (Output) berlogic 0 akan terus dipertahankan. Kemudian karena kapasitor terus dapat discharging maka tegangan kapasitor akan turun ketika tegangan kapasitor sedikit dibawa 2/3 Vcc. Ini membuat Op-Amp atas kaki input – mendapatkan tegangan 2/3 Vcc sedangkan kaki + mendapatkan tegangan sedikit dibawah 2/3Vcc. Kemudian Op-Amp bawah kaki input – mendapatkan tegangan sedikit dibawah 2/3Vcc. karena tegangan kaki – lebih besar dari kaki + maka op-amp atas akan mengeluarkan logic 0.  Kemudian karena kapasitor terus dapat discharging maka tegangan kapasitor akan turun ketika tegangan kapasitor sedikit dibawah 1/3 Vcc. karena tegangan kaki + lebih kecil dari kaki – maka Op-Amp mengeluarkan logic 0. dan kaki + mendapatkan tegangan 1/3 Vcc. karena tegangan kaki + lebih besar dari kaki – maka Op-Amp mengeluarkan logic 1. karena tegangan kaki – lebih besar dari kaki + maka op-amp atas akan mengeluarkan logic 0. Ini membuat Op-Amp atas kaki input – mendapatkan tegangan 2/3 Vcc sedangkan kaki + mendapatkan tegangan sedikit dibawah 1/3Vcc.

693 (RA+RB). Kondisi tersebut diatas akan membuat kapasitor charging kembali dan mengulang kondisi dimana tegangan kapsitor sedikit diatas 1/3 Vcc dan seterusnya.duty cycle dari operasi astable ini dapat dihitung dengan rumus : . B) Resistor B akan mempengaruhi kecepatan discharging dari kapasitor.693 (RB).693 ( RA + 2RB ) C f= Dengan demikian. C) Besarnya Capasitor ( C ) juga akan mempengaruhi cepat atau lambatnya proses charging dan discharging. Dan dapat dihitung melalui rumus-rumus berikut ini : tH = 0.berlogic 1. Hal penting yang perlu diketahui dalam konfigurasi Astable LM 555 adalah A) Resistor A dan B akan mempengaruhi kecepatan charging dari kapsitor.C tL = 0.C Periode dan frekuensi T = tH+tL = 0.

D= Siklus periode dari gelombang keluaran (pin 3) dapat digambarkan sebagai berikut: Keterangan : t tL tH : berlangsungnya periode : berlangsungnya periode saat sinyal “0” (low) : berlangsungnya periode saat sinyal “1” (high) b) Monostable Monostable adalah rangkaian pembagkit signal yang outputnya stabil di satu state saja dengan kata lain menghasilkan satu pulsa dengan selang waktu tertentu dalam menanggapi suatu sinyal trigger dari luar. Rangkaian monostable output statenya akan tidak stabil di suatu periode waktu tertentu (yang dapat ditentukan lewat rumus monostable) ketika mendapatkan trigger external. namun setelah itu akan langsung berpindah state ke posisi stabil lagi. Ini berarti bahwa hanya satu saja keadaan stabil. Sedangkan state yang lainnya tidak stabil. Aplikasi yang banyak . Karena itu rangkaian monostable banyak sekali dikenal dengan nama one shot circuit.

Cara kerja dari konfigurasi Monostable pada LM 555 .digunakan pada rangkaian monostable adalah penggunaan untuk mencegah bouncing pada saklar.

Untuk Op-Amp bawah ketika trigger dibiarkan dalam posisi high maka kaki – mempunyai tegangan sebesar Vcc. Inilah yang dinamakan one shot. Ini akan membuat kondisi hold sehingga membuat output sebelumnya tertahan (jika dimisalkan output sebelumnya Q bernilai 1 dan Q’ bernilai 0) maka output sekarang Q berlogic 1 (membuat transistor aktif dan kapasitor dapat discharging) dan Q’ berlogic 0. Step 0 : Pada awalnya tegangan kapasitor 0V sehingga membuat op-amp atas mempunyai kaki – bertegangan 2/3 Vcc dan kaki + bertegangan 0 V karena kaki – mempunyai tegangan lebih tinggi dari kaki + maka Op-Amp atas akan mengeluarkan logic 0. Karena kondisi Op-AMP atas output tidak berubah artinya mengeluarkan logic 0. Maka kaki - dari Op-Amp bawah akan berlogic 0 sesaat sehingga membuat kaki – mendapatkan tegangan yang lebih rendah dari kaki + yaitu 1/3 Vcc sehingga ini membuat Op-Amp bawah mengeluarkan logic 1.  Step 1: Lalu ketika trigger diberikan artinya terhubung ke ground sesaat. maka Rs Flip-Flop akan mendapat kondisi logic S bernilai 0 dan R berlogic 1. Hal ini akan terus berulang sampai mendapatkan trigger. Setelah periode waktu tertentu karena trigger telah kembali ke posisi Vcc maka ini membuat kondiosi kaki – op-amp bawah lebih besar dari kaki + nya membuat op-amp bawah . sedangkan kaki + mempunyai tegangan 1/3 Vcc karena kaki – mempunyai tegangan lebih besar dari kaki + maka Op-Amp bawah mengeluarkan logic 0. sehingga output nya berubah menjadi Q berlogic 0 (membuat transistor tidak aktif dan kapasitor tidak dapat discharging melainkan kapasitor akan charging) dan Q’ berlogic 1. Sehingga RS Flip-Flop mempunyai input S berlogic 0 dan R berlogic 0.

 Step 3 : Hal tersebut diatas akan membuat kapasitor discharging terus sehingga tegangan kapasitor 0 V dan membuat op-amp atas mengeluarkan logic 0. Sehingga RS Flip-Flop mempunyai input S berlogic 1 dan R berlogic 0. . Untuk Op-Amp bawah ketika trigger dibiarkan dalam posisi high maka kaki – mempunyai tegangan sebesar Vcc. Dan opamp bawah juga mengeluarkan logic 0. Pada saat kondisi inilah bouncing dapat dihilangkan (salah satu keunggulan dari Monostable)  Step 2: Ketika kapasitor charging terus dan mencapai tegangan sedikit diatas 2/3 Vcc (lamanya tergantung dari resistor Ra dan Kapasitor) sehingga membuat op-amp atas mempunyai kaki – bertegangan 2/3 Vcc dan kaki + bertegangan sedikit diatas 2/3 Vcc karena kaki – mempunyai tegangan lebih rendah dari kaki + maka Op-Amp atas akan mengeluarkan logic 1. Hal ini akan tetap sampai trigger kemabali diberikan. Sehingga ini Output dari RS FF akan hold dan mengeluarkan output sebelumnya yaitu akan tetap yaitu Q berlogic 1 dan Q’ berlogic 0. sedangkan kaki + mempunyai tegangan 1/3 Vcc karena kaki – mempunyai tegangan lebih besar dari kaki + maka Op-Amp bawah mengeluarkan logic 0. Ini akan membuat output sekarang Q berlogic 1 (membuat transistor aktif dan kapasitor discharging) dan Q’ berlogic 0 (kondisi ini akan stabil). karena kaki – mempunyai tegangan Vcc dan kaki + hanya mempunyai 1/3 Vcc.mengeluarkan logic 0 sehingga ini dapat membuat RS Flip-Flop mengeluarkan kondisi hold (menahan output sebelumnya )karena input S berlogic 0 dan R berlogic 0.

1 RA. Hal yang perlu diketahui dalam konfigurasi monostable. Logic perubahan (One Shot) akan ditahan berdasarkan waktu yang tergantung oleh konfigurasi Ra dan C. Dan dapat dihitung melaui rumus berikut : tH = 1. cara kerja akan terus berulang dimulai dari urutan step 1 (ketika trigger diberikan akan lanjut ke step 1 jika tidak diberikan akan terus berulang di step 3)  2  3  lalu kembali lagi ke step 1. Untuk step selanjutnya.C c) Bistable .

bahwa rangkaian ini tetap berada pada tingkatan (level) keluaran yang diberikan apabila tidak dikenakan sinyal (trigger) dari luar. . Jadi rangkaian bistable memerlukan dua sinyal sebelum kembali kekeadaan awal. Rangkaian multivibrator bistable memiliki ciri-ciri.Bistable adalah rangkaian pembangkit signal yang outputnya stabil di kedua statenya (high maupun low). Penerapan sinyal dari luar akan menyebabkan perubahan keadaan. dan tingkat keluaran ini akan tetap sampai ada sinyal dari luar berikutnya.

BAB III PERANCANGAN SISTEM TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

Ketika kembali lagi ke angka 0 maka GAL 16V8 (menit puluhan) ini akan memberikan clock untuk menggerakkan state dari GAL 16V8 ( jam satuan). Dengan interval waktu masing-masing 1 detik. Kemudian setalah kembali ke angka 0 lagi maka GAL 16V8 (puluhan detik) akan mengeluarkan flag (clock) berikutnya untuk menggerakkan state dari GAL 16V8 (satuan menit) sehingga dapat membuat tampilan dari digit seven segment menit satuan pun ikut bergerak dan mengcounter angka mulai dari 0 sampai dengan 9. dimulai dari GAL 16V8 (satuan detik) yang mendapatkan clock 1 Hz. Karena kita tahu sebelumnya bahwa jam satuan dapat bergerak dari angka 9 ke 0 ( jam 00 sampai dengan jam 19) atau dari 4 ke 0 (ketika jam 23 ke jam 00) sehingga ini diperlukan hubungan antara GAL 16V8 (jam satuan) dan GAL 16V8 (jam puluhan) agar terjadi .BAB 3 PERANCANGAN SISTEM 3. untuk jam satuan ini agak sedikit berbeda dengan sebelumnya. Ketika digit detik satuan telah menunjukkan state yang menunjukkan angka 0. Setelah itu clock tersebut akan menggerakkan digit detik satuan untuk melakukan perpindahan state mulai dari menampilkan angka 0 sampai dengan 9.Dan ketika sampai dengan angka 0 maka GAL 16V8 (satuan menit) ini akan memberikan clock untuk menggerakkan state dari Gal 16V8( menit puluhan ) dari angka 0 sampai angka 5. Maka GAL 16V8 (satuan detik) ini akan mengeluarkan flag (clock) berikutnya untuk menggerakkan state dari GAL 16V8 (puluhan detik) dan membuat sevensegment mengcounter angka mulai dari 0 sampai 5.1 Gambaran Sistem Secara Umum Clock 1 Hz diberikan pada GAL 16V8 yang digunakan untuk memberikan tampilan angka pada 7 segment.

jam satuan. Untuk mematikan alarm penulis juga menyediakan saklar On-Off. Untuk masalah pen-settingan waktu. menit puluhan dan menit satuan. Kami penulis menyediakan 4 buah tombol untuk mensetting digit waktu dari jam puluhan.sinkronisasi yang tepat dalam memberikan clock satu sama lainnya (akan dijelaskan di cara kerja). Untuk alarm sendiri kami penulis menggunakan 6 buah switch ( 2 buah untuk digit jam puluhan dan 4 buah untuk digit jam satuan ) yang akan dibentuk secara biner untuk dibandingkan dengan jam puluhan dan jam satuan yang tertera pada seven segment jika keduanya sama dengan inputan user dari switch maka buzzer akan berbunyi. Cara ini cukup efektif untuk mencegah permasalahan bouncing pada saklar. kami penulis menggunakan sistem dari rangkaian timer monostable. .

3.2 Blok Diagram .

3 Skematik Rangkaian .3.

Company Atmel . Location Device . 3/26/2008 . field count = [Q0.6]. /* *************** INPUT PINS *********************/ PIN 1 = CLK . . 00 . /* */ /* *************** OUTPUT PINS *********************/ PIN [13. Designer Engineer ... Assembly None . $define S0 'b'0001000 $define S1 'b'0111110 $define S2 'b'0010001 $define S3 'b'0010100 $define S4 'b'0100110 $define S5 'b'1000100 $define S6 'b'1000000 $define S7 'b'0011110 ..6] PIN 12 = Q7.19] = [Q0.4 Cara Kerja Rangkaian dan Coding Coding Detik Satuan dan Menit Satuan (GAL 16V8) Name PartNo Date detsat. G16V8 . Revision 01 .3.

dst. present S4 next S5. pin 14 memiliki nama Q1. present S8 next S9. present S7 next S8. present S5 next S6.6] serta Pin 12 = Q7 menunjukkan deklarasi pin output yang akan digunakan.19] = [Q0... present S2 next S3. artinya pin 13 memiliki nama Q0. } Cara kerja : 1) Penulis menggunakan nama file detsat 2) Device yang penulis pakai untuk Codingan ini merupakan G16V8 (Gal 16V8) 3) Pin 1 = Clk menunjukkan deklarasi pin input clock yang akan digunakan. present S1 next S2. sampai dengan pin 19 memiliki nama Q6. . dengan nama clk 4) Pin [13. Nama-nama tersebut akan digunakan pada coding selanjutnya untuk mewakili setiap pin.$define S8 'b'0000000 $define S9 'b'0000100 sequenced count { present S0 next S1. dan pin 12 memiliki nama Q7. present S9 next S0 out Q7. present S6 next S7. present S3 next S4.

5) Field count = [Q0..6] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan. Pada kondisi ini penulis menggunakan nama count. 6) $define S0 'b'0001000 merupakan define untuk menunjukan data angka nol pada seven segment. $define S1 'b'0111110 merupakan define untuk menunjukan data angka satu pada seven segment. $define S2 'b'0010001 merupakan define untuk menunjukan data angka dua pada seven segment. $define S3 'b'0010100 merupakan define untuk menunjukan data angka tiga pada seven segment. $define S4 'b'0100110 merupakan define untuk menunjukan data angka empat pada seven segment. $define S5 'b'1000100 merupakan define untuk menunjukan data angka lima pada seven segment. $define S6 'b'1000000 merupakan define untuk menunjukan data angka enam pada seven segment. $define S7 'b'0011110 merupakan define untuk menunjukan data angka tujuh pada seven segment. $define S8 'b'0000000 merupakan define untuk menunjukan data angka delapan pada seven segment. $define S9 'b'0000100 merupakan define untuk menunjukan data angka sembilan pada seven segment.

7) sequenced count {

present S0 next S1; present S1 next S2; present S2 next S3; present S3 next S4; present S4 next S5; present S5 next S6; present S6 next S7; present S7 next S8; present S8 next S9; present S9 next S0 out Q7;
}

Sequenced Count digunakan untuk mendeklarasi alur program sekuensial dari program yang kita buat. Clock 1  Maka state akan loncat ke S8 (default GAL ) dan menunjukkan angka 8. Dan next clock selanjutnya akan loncat ke S9. Clock 2  Maka state akan loncat ke S9 dan menunjukkan angka 9. Dan next clock selanjutnya akan loncat ke S0. Clock 3  Maka state akan loncat ke S0 dan menunjukkan angka 0 serta mengeluarkan bit 1 pada Q7. Dan next clock selanjutnya akan loncat ke S1.

Clock 4  Maka state akan loncat ke S1 dan menunjukkan angka 1. Dan next clock selanjutnya akan loncat ke S2. Clock 5  Maka state akan loncat ke S2 dan menunjukkan angka 2. Dan next clock selanjutnya akan loncat ke S3. Clock 6  Maka state akan loncat ke S3 dan menunjukkan angka 3. Dan next clock selanjutnya akan loncat ke S4. Clock 7  Maka state akan loncat ke S4 dan menunjukkan angka 4. Dan next clock selanjutnya akan loncat ke S5. Clock 8  Maka state akan loncat ke S5 dan menunjukkan angka 5. Dan next clock selanjutnya akan loncat ke S6. Clock 9  Maka state akan loncat ke S6 dan menunjukkan angka 6. Dan next clock selanjutnya akan loncat ke S7. Clock 10  Maka state akan loncat ke S7 dan menunjukkan angka 7. Dan next clock selanjutnya akan loncat ke S8. Clock 11  Maka state akan loncat ke S8 dan menunjukkan angka 8. Dan next clock selanjutnya akan loncat ke S9. Untuk Clock selanjutnya akan berurut kembali ke clock 2, 3 ,4 ,5 dst...

Detik Puluhan dan Menit Puluhan (GAL 16V8)
Name PartNo Date detpul ; 00 ; 3/27/2008 ;

Revision 01 ; Designer Engineer ;

.. Assembly None .19] = [Q0.. /* *************** INPUT PINS *********************/ PIN 1 = CLK .6]. present S3 next S4. present S5 next S0 out Q7.6] PIN 12 = Q7. present S4 next S5. present S2 next S3. present S0 next S1. . G16V8 . field count = [Q0. Location Device . $define S0 'b'0001000 $define S1 'b'0111110 $define S2 'b'0010001 $define S3 'b'0010100 $define S4 'b'0100110 $define S5 'b'1000100 $define S6 'b'0000000 sequenced count { present S6 next S0 out Q7. } . /* */ /* *************** OUTPUT PINS *********************/ PIN [13. present S1 next S2.Company Atmel .

dan pin 12 memiliki nama Q7. $define S4 'b'0100110 merupakan define untuk menunjukan data angka empat pada seven segment. 5) Field count = [Q0. .6] serta Pin 12 = Q7 menunjukkan deklarasi pin output yang akan digunakan.19] = [Q0. artinya pin 13 memiliki nama Q0. $define S1 'b'0111110 merupakan define untuk menunjukan data angka satu pada seven segment. $define S2 'b'0010001 merupakan define untuk menunjukan data angka dua pada seven segment.6] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan. 6) $define S0 'b'0001000 merupakan define untuk menunjukan data angka nol pada seven segment. Pada kondisi ini penulis menggunakan nama count.. sampai dengan pin 19 memiliki nama Q6. dengan nama clk 4) Pin [13. pin 14 memiliki nama Q1. dst.Cara kerja : 1) Penulis menggunakan nama file detpul 2) Device yang penulis pakai untuk Codingan ini merupakan G16V8 (Gal 16V8) 3) Pin 1 = Clk menunjukkan deklarasi pin input clock yang akan digunakan. Nama-nama tersebut akan digunakan pada coding selanjutnya untuk mewakili setiap pin... $define S3 'b'0010100 merupakan define untuk menunjukan data angka tiga pada seven segment.

present S0 next S1. Dan next clock selanjutnya akan loncat ke S0. Clock 1  Maka state akan loncat ke S6 (default GAL) dan menunjukkan angka 8. } Sequenced Count digunakan untuk mendeklarasi alur program sekuensial dari program yang kita buat. . $define S6 'b'0000000 merupakan define untuk menunjukan data angka delapan pada seven segment State ini hanya akan berlaku pada awal melakukan pensettingan. Dan next clock selanjutnya akan loncat ke S1. present S5 next S0 out Q7. present S1 next S2. 7) sequenced count { present S6 next S0 out Q7. Clock 3  Maka state akan loncat ke S1 dan menunjukkan angka 1. present S2 next S3. present S3 next S4. Clock 2  Maka state akan loncat ke S0 dan menunjukkan angka 0 serta mengeluarkan bit 1 pada Q7.$define S5 'b'1000100 merupakan define untuk menunjukan data angka lima pada seven segment. present S4 next S5. Dan next clock selanjutnya akan loncat ke S2.

. Clock 7  Maka state akan loncat ke S5 dan menunjukkan angka 5. Untuk Clock selanjutnya akan berurut kembali ke clock 3 . Location Device .Clock 4  Maka state akan loncat ke S2 dan menunjukkan angka 2. Clock 6  Maka state akan loncat ke S4 dan menunjukkan angka 4. Dan next clock selanjutnya akan loncat ke S5. Clock 8  Maka state akan loncat ke S0 dan menunjukkan angka 0 serta mengeluarkan bit 1 pada Q7. Jam Satuan (GAL 16V8) Name PartNo Date jamsat . Assembly None . 3/27/2008 .. Dan next clock selanjutnya akan loncat ke S0. Clock 5  Maka state akan loncat ke S3 dan menunjukkan angka 3. G16v8 . /* */ .4 . Dan next clock selanjutnya akan loncat ke S4. /* *************** INPUT PINS *********************/ PIN 1 = CLK .5 dst. Designer Engineer . Dan next clock selanjutnya akan loncat ke S1. Revision 01 . Company Atmel . 00 . Dan next clock selanjutnya akan loncat ke S3.

sequenced count { present S0 if go next S1.. field count = [Q0.PIN 2 = RST . present S3 if go next S4.6]. . $define S0 'b'0001000 $define S1 'b'0111110 $define S2 'b'0010001 $define S3 'b'0010100 $define S4 'b'0100110 $define S5 'b'1000100 $define S6 'b'1000000 $define S7 'b'0011110 $define S8 'b'0000000 $define S9 'b'0000100 field mode = RST. if stop next S3. present S1 if go next S2. go = mode:1.19] = [Q0.6] PIN 12 = Q7.. if stop next S1. /* *************** OUTPUT PINS *********************/ PIN [13. stop = mode:0. present S2 if go next S3. if stop next S2. ..

present S7 if go next S8.19] = [Q0. if stop next S0 out Q7.. if stop next S9.. 5) Field count = [Q0. dan pin 12 memiliki nama Q7. Pada kondisi ini penulis menggunakan nama count. pin 14 memiliki nama Q1. } Cara kerja : 1) Penulis menggunakan nama file jamsat 2) Device yang penulis pakai untuk Codingan ini merupakan G16V8 (Gal 16V8) 3) Pin 1 = Clk. present S5 if go next S6.6] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan. dan pin 2 sebagai input dengan nama RST 4) Pin [13. present S8 if go next S9 . Pin 2 =RST menunjukkan deklarasi pin 1 sebagai input clock yang akan digunakan dengan nama clk..6] serta Pin 12 = Q7 menunjukkan deklarasi pin output yang akan digunakan. sampai dengan pin 19 memiliki nama Q6. present S4 if go next S5. present S6 if go next S7. Nama-nama tersebut akan digunakan pada coding selanjutnya untuk mewakili setiap pin. dst. present S9 if go next S0 out Q7. artinya pin 13 memiliki nama Q0.if stop next S0 out Q7. .

$define S7 'b'0011110 merupakan define untuk menunjukan data angka tujuh pada seven segment. $define S9 'b'0000100 merupakan define untuk menunjukan data angka sembilan pada seven segment. $define S3 'b'0010100 merupakan define untuk menunjukan data angka tiga pada seven segment. $define S5 'b'1000100 merupakan define untuk menunjukan data angka lima pada seven segment. $define S4 'b'0100110 merupakan define untuk menunjukan data angka empat pada seven segment. $define S8 'b'0000000 merupakan define untuk menunjukan data angka delapan pada seven segment.6) $define S0 'b'0001000 merupakan define untuk menunjukan data angka nol pada seven segment $define S1 'b'0111110 merupakan define untuk menunjukan data angka satu pada seven segment. $define S2 'b'0010001 merupakan define untuk menunjukan data angka dua pada seven segment. $define S6 'b'1000000 merupakan define untuk menunjukan data angka enam pada seven segment. 7) Field mode = RST menunjukkan RST digabungkan menjadi satu field bernama mode .

present S4 if go next S5. present S2 if go next S3. if stop next S2. present S6 if go next S7. present S7 if go next S8. if stop next S0 out Q7. if stop next S3. . if stop next S1. present S1 if go next S2. present S3 if go next S4.8) Go = mode : 1 menunjukkan jika di pin RST menunjukkan logik 1 maka kondisi go yang dipenuhi sedangkan untuk stop = mode:0 menunjukkan jika di pin RST menunjukkan logic 0 maka kondisi stop yang dipenuhi 9) sequenced count { present S0 if go next S1. present S8 if go next S9 . present S5 if go next S6.

untuk kondisi stop akan loncat ke S0. } Sequenced Count digunakan untuk mendeklarasi alur program sekuensial dari program yang kita buat. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S3. Dan next clock selanjutnya untuk kondisi go akan loncat ke S5.Untuk kondisi stop . Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S9. Clock 6  Maka state akan loncat ke S3 dan menunjukkan angka 3. Clock 1  Maka state akan loncat ke S8 (default GAL ) dan menunjukkan angka 8. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S0. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S2. Clock 7a (Go)  Maka state akan loncat ke S4 dan menunjukkan angka 4. if stop next S0 out Q7. Clock 3  Maka state akan loncat ke S0 dan menunjukkan angka 0 serta mengeluarkan bit 1 pada Q7. Clock 4  Maka state akan loncat ke S1 dan menunjukkan angka 1. present S9 if go next S0 out Q7. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S1. Dan next clock selanjutnya untuk kondisi go akan loncat ke S4.if stop next S9. Clock 5  Maka state akan loncat ke S2 dan menunjukkan angka 2. Clock 2  Maka state akan loncat ke S9 dan menunjukkan angka 9.

Clock 9  Maka state akan loncat ke S6 dan menunjukkan angka 6.pada sistem Jam Alarm digital tidak mungkin terjadi sehingga pada langkah ini tidak perlu didefine. Revision 01 . Untuk Clock selanjutnya akan berurut kembali ke clock 2. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S9.5 dst..Untuk kondisi stop pada sistem Jam Alarm digital tidak mungkin terjadi sehingga pada langkah ini tidak perlu didefine. Dan next clock selanjutnya untuk kondisi go akan loncat ke S8. Jam Puluhan (GAL 16V8) Name PartNo Date jampul . Dan next clock selanjutnya untuk kondisi go akan loncat ke S6.. Clock 7b (stop)  Maka akan ke kondisi clock 3 dan seterusnya. . 5/20/2008 . Dan next clock selanjutnya untuk kondisi go akan loncat ke S7.Untuk kondisi stop pada sistem Jam Alarm digital tidak mungkin terjadi sehingga pada langkah ini tidak perlu didefine. Clock 10  Maka state akan loncat ke S7 dan menunjukkan angka 7. Clock 11  Maka state akan loncat ke S8 dan menunjukkan angka 8. Clock 8  Maka state akan loncat ke S5 dan menunjukkan angka 5.Untuk kondisi stop pada sistem Jam Alarm digital tidak mungkin terjadi sehingga pada langkah ini tidak perlu didefine. 00 . 3 .4 .

stop = mode : [0. go = mode : [1.3. present S2 if go next S0 . Company Atmel .7] ... if stop next S0.5. G16V8 ... present S1 if go next S2 .7].Designer Engineer .7]. present S3 if go next S0 .. /* */ field count = [Q0. /* *************** INPUT PINS *********************/ PIN PIN 1 = CLK = [D0. /* .2. Location Device .. $define S0 'b'00010001 $define S1 'b'01111101 $define S2 'b'00100010 $define S3 'b'00000000 field mode = [D0.4] /* *************** OUTPUT PINS *********************/ PIN [12. if stop next S1.2] .4. Assembly None . .6]. /* */ */ [2. if stop next S0.2]. sequenced count { present S0 if go next S1 .19] = [Q0.

if stop next S0. Nama-nama tersebut akan digunakan pada coding selanjutnya untuk mewakili setiap pin.7] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan. 4) Pin [12.. Pada kondisi ini penulis menggunakan nama count..7] menunjukkan deklarasi pin output yang akan digunakan.1] angka 2 pada seven segment dan flag pada bit terakhir pada Q0 berlogic 0 .. pin 3 sebagai input dengan nama D1 dan pin 4 sebagai input dengan nama D2.. 6) $define S0 'b'00010001 merupakan define untuk menunjukan data [Q7.. Pin [2.19] = [Q0. artinya pin 12 memiliki nama Q0. 5) Field count = [Q0. sampai dengan pin 19 memiliki nama Q7.4] =[D0. dan pin 2 sebagai input dengan nama D0. } Cara kerja : 1) Penulis menggunakan nama file jampul 2) Device yang penulis pakai untuk Codingan ini merupakan G16V8 (Gal 16V8) 3) Pin 1 = Clk..1] angka 1 pada seven segment dan flag pada bit terakhir pada Q0 berlogic 1 $define S2 'b'00100010 merupakan define untuk menunjukan data [Q7. dst. pin 13 memiliki nama Q1.2] menunjukkan deklarasi pin 1 sebagai input clock yang akan digunakan dengan nama clk..1] angka 0 pada seven segment dan flag pada bit terakhir pada Q0 berlogic 1 $define S1 'b'01111101 merupakan define untuk menunjukan data [Q7..

.5.2.. } Sequenced Count digunakan untuk mendeklarasi alur program sekuensial dari program yang kita buat.. 7) Field mode = [D0.3. if stop next S0.2] menunjukkan pin [D0.$define S3 'b'00000000 merupakan define untuk menunjukan data angka delapan (default GAL yang harus didefine jika tidak akan hang) pada seven segment dan flag pada bit terakhir pada Q0 berlogic 0.4. if stop next S0.2] menunjukkan logic 000 (0) atau 011 (3) atau 100(4) atau 101(5) atau 110(6) maka kondisi stop yang dipenuhi 9) sequenced count { present S0 if go next S1. if stop next S1. if stop next S0.. present S2 if go next S0.2] menunjukkan logik 001(1) atau 010(2) atau 111(7) maka kondisi go yang dipenuhi sedangkan untuk stop = mode: [0.7] menunjukkan jika di pin [D0.2] digabungkan menjadi satu field bernama mode 8) Go = mode : [1. present S1 if go next S2..6] menunjukkan jika di pin [D0. present S3 if go next S0.

/* *************** INPUT PINS *********************/ PIN [2.. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S1. 00 .. Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S0.9] = [S0. /* */ . Dan next clock selanjutnya untuk kondisi go akan loncat ke S2 sedangkan untuk kondisi stop akan loncat ke S0. 3. Designer Engineer . Clock 2  Maka state akan loncat ke S0 dan menunjukkan angka 0.. Alarm 1 (GAL 16V8) Name PartNo Date Alarm1 .. Location Device . G16V8 . Dan next clock selanjutnya baik untuk kondisi go maupun stop akan loncat ke S0. dst. 4/1/2008 . Clock 4b (stop) Maka akan kembali seperti clock 2 Untuk Clock selanjutnya akan berurut kembali ke clock 2. Revision 01 . Clock 3  Maka state akan loncat ke S1 dan menunjukkan angka 1.7] . Assembly None . Clock 4a (go)  Maka state akan loncat ke S2 dan menunjukkan angka 2.Clock 1  Maka state akan loncat ke S3 (default GAL ) dan menunjukkan angka 8. Company Atmel .

Cara kerja : 1) Penulis menggunakan nama file Alarm1 2) Device yang penulis pakai untuk Codingan ini merupakan G16V8 (Gal 16V8) 3) Pin [2. 4) Pin [19... dst. pin 3 sebagai input dengan nama S1 dst sampai dengan pin 9 sebagai input dengan nama S7. Nama-nama tersebut akan digunakan pada coding selanjutnya untuk mewakili setiap pin.7] menunjukkan deklarasi pin 2 sebagai input dengan nama S0. /* */ FIELD SEL = [S0.16] = [D0.9] = [S0. D3=S6&S7.3] menunjukkan deklarasi pin output yang akan digunakan.16] = [D0. pin 18 memiliki nama D1./* *************** OUTPUT PINS *********************/ PIN [19.. } D2=(!(S2$S4))&(!(S3$S5)). .. TABLE SEL => OUTPUT { 'b'00 => 'b'00. sampai dengan pin 16 memiliki nama D3.3] . FIELD OUTPUT = [D0.. artinya pin 19 memiliki nama D0..D1].S1]. 'b'11 => 'b'01. 'b'10 => 'b'10.

S0 ) menunjukkan logic 1 dan 0 maka pin-pin OUTPUT ( D1. Ketika pin-pin SEL ( S1.D0 ) menunjukkan logic 0 dan 0. 'b'11 => 'b'01.S0 ) menunjukkan logic 0 dan 0 maka pin-pin OUTPUT ( D1. } Pada coding diatas artinya kita membuat sebuah rangkaian kombinasional sehingga ketika pin-pin SEL ( S1. Pada kondisi ini penulis menggunakan nama OUTPUT.S1] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan. Pada baris pertama coding diatas artinya input dari S2 akan diXOR dengan S4 lalu hasilnya dilakukan operasi NOT serta dilakukan operasi AND dengan input S3 yang di . D3=S6&S7.D1] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan.D0 ) menunjukkan logic 1 dan 0.5) Field SEL = [S0. 8) D2=(!(S2$S4))&(!(S3$S5)). 7) TABLE SEL => OUTPUT { 'b'00 => 'b'00. 'b'10 => 'b'10.S0 ) menunjukkan logic 1 dan 1 maka pin-pin OUTPUT ( D1. Ketika pin-pin SEL ( S1. 6) Field OUTPUT = [D0.D0 ) menunjukkan logic 0 dan 1. Pada kondisi ini penulis menggunakan nama SEL.

. 4/1/2008 .. TABLE SEL => OUTPUT { 'b'0001000 => 'b'0000.. 00 ..XOR dengan S5 serta dilakukan operasi NOT terlebih dahulu. Dan hasilnya dikeluarkan pada pin D2.18] = [S10. Alarm 2 (GAL 22V10) Name PartNo Date ALARM2 .3]. /* *************** INPUT PINS *********************/ PIN [8. /* . . Assembly None .2] = [S0. Pada baris kedua coding diatas artinya input dari pin S6 dan S7 dilakukan operasi AND serta hasilnya dikeluarkan pada pin D3. Company Atmel .9]. */ */ PIN [9..11] = [S7.6].19] = [D0. G22V10 .. FIELD OUTPUT=[D0. PIN [14.. Location Device ..6] /* ...4] . Revision 01 . Designer Engineer . /* */ FIELD SEL=[S0.14] /* *************** OUTPUT PINS *********************/ PIN [23.

. . 'b'0011110 => 'b'0111. 'b'0010100 => 'b'0011.... Cara kerja : 1) Penulis menggunakan nama file Alarm2 2) Device yang penulis pakai untuk Codingan ini merupakan G22V10 (Gal 22V10) 3) Pin [8.'b'0111110 => 'b'0001.19] = [D0. artinya pin 23 memiliki nama D0. Pin [9. sampai dengan pin 19 memiliki nama D4.14] menunjukkan deklarasi pin 14 sebagai input dengan nama S10. pin 10 sebagai input dengan nama S8 dan pin 11 sebagai input dengan nama S9.. pin 22 memiliki nama D1.4] menunjukkan deklarasi pin output yang akan digunakan. Pin [14.6] menunjukkan deklarasi pin 8 sebagai input dengan nama S0. pin 7 sebagai input dengan nama S1 dst sampai dengan pin 2 sebagai input dengan nama S6. pin 15 sebagai input dengan nama S11 dst sampai dengan pin 18 sebagai input dengan nama S14.11] = [S7.} D4 = (!(S14$S7))&(!(S13 $S8))&(!(S12 $S9 ))&(!(S11 $S10 )). 'b'1000000 => 'b'0110.9] menunjukkan deklarasi pin 9 sebagai input dengan nama S7. 4) Pin [23. 'b'0000100 => 'b'1001. 'b'0000000 => 'b'1000.... 'b'0010001 => 'b'0010. dst. Nama-nama tersebut akan digunakan pada coding selanjutnya untuk mewakili setiap pin. 'b'0100110 => 'b'0100.18] = [S10. 'b'1000100 => 'b'0101.2] = [S0.

3) menunjukkan logic 0000.6 ) mendapatkan input logic 0001000 maka pin-pin OUTPUT (D0. 'b'1000100 => 'b'0101.6] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan..5) Field SEL = [S0. 'b'0000100 => 'b'1001. 'b'0010001 => 'b'0010. 'b'0100110 => 'b'0100. 'b'0010100 => 'b'0011. 'b'0111110 => 'b'0001. 7) TABLE SEL => OUTPUT { 'b'0001000 => 'b'0000.3) menunjukkan logic 0001... ..  ketika pin-pin SEL ( S0. 6) Field OUTPUT = [D0.6 ) mendapatkan input logic 0111110 maka pin-pin OUTPUT (D0. Pada kondisi ini penulis menggunakan nama SEL. Pada kondisi ini penulis menggunakan nama OUTPUT...3] merupakan syntax yang digunakan untuk mengabungkan beberapa pin-pin menjadi satu nama field gabungan.} Pada coding diatas artinya kita membuat sebuah rangkaian kombinasional sehingga  ketika pin-pin SEL ( S0. 'b'1000000 => 'b'0110. 'b'0011110 => 'b'0111. 'b'0000000 => 'b'1000.

..3) menunjukkan logic 0111... Pada baris coding diatas artinya input dari S14 akan di XOR dengan S7 lalu hasilnya dilakukan operasi NOT.. input dari S12 akan di XOR dengan S9 lalu hasilnya dilakukan operasi NOT. . ketika pin-pin SEL ( S0..6 ) mendapatkan input logic 0010100 maka pin-pin OUTPUT (D0...6 ) mendapatkan input logic 0000100 maka pin-pin OUTPUT (D0.  ketika pin-pin SEL ( S0.6 ) mendapatkan input logic 1000100 maka pin-pin OUTPUT (D0.6 ) mendapatkan input logic 0100110 maka pin-pin OUTPUT (D0.3) menunjukkan logic 0011.  ketika pin-pin SEL ( S0.  ketika pin-pin SEL ( S0.6 ) mendapatkan input logic 0010001maka pin-pin OUTPUT (D0.6 ) mendapatkan input logic 0000000 maka pin-pin OUTPUT (D0..  ketika pin-pin SEL ( S0. input dari S11 akan di XOR dengan S10 lalu hasilnya dilakukan operasi NOT... input dari S13 akan di XOR dengan S8 lalu hasilnya dilakukan operasi NOT...6 ) mendapatkan input logic 1000000 maka pin-pin OUTPUT (D0.3) menunjukkan logic 0010. 8) D4 = (!(S14$S7))&(!(S13 $S8))&(!(S12 $S9 ))&(!(S11 $S10 )).3) menunjukkan logic 0110.  ketika pin-pin SEL ( S0.  ketika pin-pin SEL ( S0.3) menunjukkan logic 1001. Dan hasilnya akan dikeluarkan pada pin D4. Dan keempat hasil operasi diatas akan dilakukan operasi AND.3) menunjukkan logic 0100.3) menunjukkan logic 1000.6 ) mendapatkan input logic 0011110 maka pin-pin OUTPUT (D0....  ketika pin-pin SEL ( S0.3) menunjukkan logic 0101.

Rangkaian Power DC Power DC lewat adaptor 9V masuk ke dalam regulator 5V sehingga supply tegangan untuk rangkaian menjadi 5V. Sementara Seven segment yang penulis gunakan adalah seven segment jenis common anode dimana semua kaki anodenya dihubungkan dengan VCC dan dengan memberikan logika 0 pada kaki cathode dapat mengaktifkan atau menyalakan segment-segment yang ada. GAL 16V8 dan Seven Segment Clock yang berasal dari rangkaian clock 1 Hz masuk ke pin 1 dari GAL 16V8 yang digunakan untuk detik satuan. Jika tidak menambahkan gerbang NOT pada rangkaian. Perlu diketahui bahwa pin 11 pada seluruh IC GAL yang dipakai pada rangkaian jam alarm digital ini dihubungkan ke ground agar clock yang masuk ke pin 1 berfungsi sebagai input clock.Pin 17: f .Pin 18: a . Pin 10 dihubungkan dengan ground sedangkan pin 20 dihubungkan ke VCC. Pin 13-19 pada seluruh GAL dihubungkan dengan seven segment. Pada pin 12 akan keluar clock untuk memberikan clock bagi GAL selanjutnya sesuai dengan penjelasan coding di atas. Rangkaian tersebut diberi gerbang NOT agar didapatkan clock yang presisi yaitu 1 Hz. maka clock yang dihasilkan tidak mampu mengubah logika dari high ke low secara sempurna. Konfigurasi seluruh pin GAL yang menuju seven segment adalah sebagai berikut: Pin 13: c Pin 14: d . Hal ini diketahui setelah penulis melakukan percobaan. Clock pada rangkaian diambil dari rangkaian clock pada jam analog.

maka ketika push button ditekan maka LM 555 akan mengeluarkan logic high selama Th = 1. Rangkaian monostable ini digunakan mulai dari GAL yang mengatur menit satuan hingga jam puluhan. Gerbang XOR Gerbang XOR pada rangkaian ini memiliki inputan dari output LM 555 dan dari pin 12 pada GAL 16V8. Penulis mendapatkan resistor yang tepat pada rangkaian monostable ini berdasarkan percobaan untuk menghindari bouncing yang terjadi pada saklar yang digunakan. LM555 Pin 1 pada IC LM555 dihubungkan dengan ground dan pin 2 berfungsi untuk input trigger. apabila pada GAL yang mengatur detik puluhan clocknya langsung berasal dari pin 12 GAL . Trigger ini berasal dari push button yang jika ditekan akan terhubung dengan ground. C1 ditentukan terlebih dahulu kemudian baru dilakukan pemilihan resistor yang tepat karena variasi resistor lebih mudah didapatkan.Pin 19: b Diantara pin-pin seven segment dan pin GAL 16V8 dipasangkan resistor 100Ohm.- Pin 15: e Pin 16: g .10E-6 = 0. Penggunaan kapasitor 0.56000.R.616S. hal ini dimaksudkan agar pada saat sevensegment menyala arus yang berasal dari seven segment yang akan masuk ke GAL 16V8 tidak terlalu besar.1.C .1.01µF digunakan segabai control voltage pada rangkaian monostable. IC LM555 dioperasikan sebagai rangkaian monostable dengan RA= 56KΩ dan C1= 10µF. Gerbang ini hanya akan mengeluarkan input 1 apabila kedua inputnya berbeda. jika tidak ditekan maka trigger akan menerima logic high terus menerus (Vcc). Sesuai dengan rumus Th=1.

Jika kondisi push button tidak ditekan maka pin trigger dari LM 555 terhubung dengan VCC sehingga rangkaian monostable akan memberikan logic low terus menerus dan logika output yang dikeluarkan LM 555 adalah 0. Diantara ketujuh pin tersebut terdapat 3 pin (pin 18. clock tidak langsung berasal dari pin 12 GAL sebelumnya.3. Ketiga pin ini akan dihubungkan dengan 3 pin input pada GAL yang mengatur .16) yang memiliki bit unik yang akan masuk ke pin 2. Jika GAL sebelumnya belum memberikan clock namun push button telah ditekan maka inputan yang masuk ke gerbang XOR adalah input logika nol dari pin 12 GAL sebelumnya dan input logika 1 (one-shot) dari LM 555. Melainkan pin 12 GAL sebelumnya harus masuk terlebih dahulu pada gerbang XOR. jam puluhan. Hal ini membuat clock output dari gerbang XOR hanya terpengaruh oleh lemparan clock GAL sebelumnya yang diberikan pada saat data yang masuk ke seven segment berupa angka nol (yang sebelumnya telah didefinisikan pada bagian coding). Sehinga ini membuat output Xor akan mengeluarkan logic 1 sehingga memberikan clock untuk GAL yang akan disetting waktunya. jam satuan. Hal ini berlaku untuk GAL menit satuan.sebelumnya. Input dari LM 555 dan pin 12 GAL sebelumnya ini akan dikeluarkan menjadi sebuah logika sebagai clock untuk GAL yang otomatis akan merubah statenya jika mendapatkan clock rising edge. Pada GAL jam satuan terdapat 7 pin yang memberikan logika untuk menyalakan seven segment. menit puluhan. Lama dari one-shot (logika high) yang dihasilkan oleh LM 555 berasal dari konfigurasi R dan C.17. Namun mulai dari menit satuan.4 dari GALjam puluhan untuk membedakan antara nilai-nilai pemberi flag yang telah didefinisikan pada coding sebelumnya (stop & go pada jam puluhan).

6. Output decode tersebut akan dihubungkan secara hardware dengan pin 4 dan 5 untuk di compare dengan toggle setting .9 maka angka 2 tidak boleh muncul di jam puluhan. 10 . Gunanya adalah memberi tahu kondisi dari jam satuan tersebut.5. Pada pin 2-8.7. pada GAL22V10 merupakan input yang berasal dari pin output GAL 16V8 jam satuan (yang memberikan data ke -7 segment). data yang terhubung dengan kaki e & f pada seven segment jam puluhan dihubungkan dengan pin 2 dan 3 dari GAL16V8. Alarm (Jam Satuan) Untuk men-setting alarm jam satuan. Hasil perbandingan antara input toggle dan output decode apabila sama akan menghasilkan logic 1 pada output compare keseluruhan (pin19). Alarm (Jam puluhan) Untuk menset alarm jam puluhan. 14 dan selanjutnya input ini akan dibandingkan dengan input toggle untuk menset alarm (jam satuan) yang terhubung dengan pin 15-18. data diolah pada GAL 22V10. Sehinga ini menandakan angka pada display seven-segment jam satuan sama dengan inputan biner alarm untuk jam satuan. tentunya hal ini diperlukan ketika jam satuan berada pada angka 4. Berbeda dengan setting jam satuan. Ketujuh input tersebut akan di decode dari kombinasi bit untuk menyalakan 7-segment menjadi kombinasi bit BCD sesuai dengan nilai 7-segment yang dinyalakan. Karena range data pada jam puluhan hanya ada 3. Output decode ini (yang keluar dari pin 20-23) akan disambung secara hardware dengan pin 9. Sehingga tidak terlalu sulit untuk menemukan kombinasi bit yang membedakan 3 data tersebut.8. 11. pada setting jam puluhan hanya butuh 2 pin data. Penulis menemukan perbedaan bit-bit ke -3 data tersebut pada pin e dan f pada sevensegment nya.jam puluhan. Input kombinasi bit unik ini akan didecode dan dikeluarkan pada pin 18 dan 19 sebagai output decode.

agar siap untuk dibandingkan dengan output compare dari jam satuan.5 Flow Chart . maka hasil compare akan menimbulkan ( logic 1 ) yang artinya kedua kedua digit jam telah menunjukkan display yang sama dengan inputan biner dari user sehingga ini akan membunyikan buzzer yang terhubung pada pin 16. Keduanya akan diproses melalui gerbang AND. 3.alarm jam puluhan dari pin 6 dan 7. Pada GAL16V8 yang sama akan diproses output compare dari GAL22V10 ( GAL22V10 pin 19 dihubungkan ke pin 9 GAL16V8 ) dan output compare dari GAL 16V8 ( pin 17 dihubungkan ke pin 8). Jika keduanya berlogic 1. Apabila nilai nya sama akan menghasilkan logic 1( setelah di proses melalui gerbang XOR dan AND ) pada pin 17( output compare puluhan ) sehingga ini menandakan angka pada display seven-segment jam puluhan sama dengan inputan biner alarm untuk jam puluhan dan output ini akan dihubungkan dengan pin 8 untuk menjadi input kembali.

Detik Puluhan dan Menit Puluhan Start Initialisas i Apakah ada clock? Next state Apakah S0? Out Q7 End .

Detik Satuan dan Menit Satuan Start Initialisasi Apakah ada clock? Next state Apakah S0? Out Q7 End .

3.Jam Puluhan Start Initialisasi C Apakah ada Y clock? T YY Apakah Y mode: [1.7]? Apakah mode: [0.2.4. Next state Apakah S0? B .5.

B Out Q7 C End .

Jam Satuan Start Initialisasi C Apakah ada clock? Apakah mode: 1? Apakah mode: 0? Next state B .

B Apakah S0? C Out Q7 C End .

Alarm Jam Puluhan Start Initialisasi D4 = (!(S14 $ S7)) & (!(S13 $ S8)) & (!(S12 $ S9 )) & (!(S11 $ S10 )) End .

Alarm Jam Satuan Start Initialisasi D2 = (!(S2 $ S4)) & (!(S3 $ S5)) D3=S6&S7 Apakah D3 berlogic 1 ?? Menghidupkan Buzzer End .

BAB IV EVALUASI DAN IMPLEMENTASI TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

Rangkaian Monostable .BAB IV EVALUASI DAN IMPLEMENTASI 4. ternyata setelah 12 jam penulis melihat bahwa pada jam komputer dan jam alarm digital yang penulis buat mengalamai perbedaan 5 menit.1 Data Hasil Percobaan Data 1 2 3 4 5 Jam Komputer 20 : 27 : 00 07 : 29 : 16 09 : 54 : 50 12 : 00 : 00 21 : 54 : 02 Jam Alarm Digital 20 : 27 : 00 07 : 29 : 16 09 : 54 : 50 12 : 00 : 00 21 : 54 : 02 Pada percobaan di atas. Sehingga penulis memutuskan untuk menggunakan clock jam analog yang jauh lebih presisi. penulis melihat bahwa penggunaan clock pada jam analog untuk diimplementasikan pada clock jam digital cukup presisi. perlu diketahui bahwa sebelumnya penulis telah melakukan percobaan menggunakan timer 555 dengan konfigurasi rangkaian Astable yang telah disetting sedemikian rupa sehingga mendapatkan frekuensi 1Hz.

616S.10E-6 = 0. .1.Pada rangkaian monostable yang penulis buat penulis pada awalnya mengunakan potentiometer (resistor variable) untuk mengetahui batas waktu bouncing dari switch yang gunakan. Setelah dihitung dengan rumus Th = 1.C. Ternyata pada resistor 56K Ohm dan dengan capacitor 10 µF.R.56000. maka didapatkan Th = 1.1. Sehingga penulis mengerti bahwa bouncing dari switch yang penulis gunakan ketika dioperasikan tidak lebih dari 0.616S. penulis berhasil mengatasi bouncing.

BAB V KESIMPULAN TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

.6 detik ketika dioperasikan. 3. 5. Rangkaian Bouncing dapat dihilangkan dengan rangkaian monostable. Rangkaian Astable sangat tidak cocok untuk membuat jam yang presisi. Nilai R dan C yang penulis pakai dalam rangkaian monostable sudah dilakukan dengan percobaan sebelumnya. Untuk penggunaan pin 1 sebagai clock maka pin 11 yaitu pin OE pada GAL harus dihubungkan ke ground. State yang sama tidak boleh berada dalam penggunaan sequeenced stepper. 2. maka dari itu penulis mengunakan clock yang biasa digunakan untuk jam analog. Pada Jam Alarm Digital yang penulis buat tidak dapat menggunakan baterai karena arus yang tidak cukup.BAB 5 Kesimpulan 1. 4. sehingga penulis mengunakan adaptor dengan arus sekitar 1200mA. dan penulis berkesimpulan bahwa switch yang penulis buat akan bouncing sekitar 0. 6.

DAFTAR PUSTAKA TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

cogeco.html .ca/~rpaisley4/LM555.Daftar Pustaka http://home.

LAMPIRAN TUGAS RANCANG SISTEM DIGITAL SEMESTER GENAP 2007 /2008 BINUS UNIVERSITY .

500 1 @ Rp 2.000 1 @ Rp 300 2 @ Rp 1.200 Rp 1.500 Rp 2.000 42 @ Rp 100 1 @ Rp 100 4 @ Rp100 4 @ Rp 200 4 @ Rp 300 4 @ Rp 300 6 @ Rp 10.000 Rp 4200 Rp 100 Rp 400 Rp 800 Rp 1.500 Rp 2.000 Rp 9.000 Rp 60.000 .000 7 @ Rp 400 2 @ Rp 300 4 @ Rp 200 1 @ Rp 500 4 @ Rp 1.500 1 @ Rp 2. PCB.400 Harga Rp 49.500 1 @ Rp 3000 Keterangan 16V8 22V10 20 Pin 14 Pin 8 Pin 24 Pin LM 555 74LS04 74LS86 7805 100 Ohm 1K Ohm 10K Ohm 56K Ohm 10 µF 0.500 Rp 3.000 Rp 8.Daftar Harga Komponen yang Digunakan Komponen GAL GAL Socket Socket Socket Socket TIMER TTL TTL Regulator Resistor Resistor Resistor Resistor Capacitor Capacitor Seven Segment Toggle Switch Push Button LED Saklar Socket DC Buzzer MISC (Lain-Lain) Total Data Sheet Ic yang Digunakan GAL 16V8 Jumlah@Harga Satuan 7 @ Rp7. Stiker Rp 245. Connector.500 4 @ Rp 2.200 Rp 60.000 Rp 2.500 1 @ Rp 2.01 µF Common Anode Merah On-Off Kabel.000 Rp 2.000 Rp 25. Kotak. Tulang Ikan.000 6 @ Rp 1.000 Rp 300 Rp 3000 Rp 2.000 1 @ Rp 25.500 1 @ 2.800 Rp 600 Rp 800 Rp 500 Rp 6.

.

GAL 22V10 LM 555 .

.

74LS04 ( NOT )

74LS86 (XOR) .

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->