Anda di halaman 1dari 50

MAKALAH TUGAS BESAR ELEKTRONIKA DIGITAL

JAM DIGITAL JADWAL SHOLAT BERBASIS COUNTER

DENGAN KENDALI ATMEGA16

OLEH:

1. Wahid Sholihul Fikri (15/377999/PA/16474)


2. Alfian Fadli Pramadhan (15/383120/PA/16780)
3. Abdillah Faisal Nur Fajar (15/383118/PA/16778)
4. Hendri Surya Widcaksana (15/381058/PA/16738)

PROGRAM STUDI ELEKTRONIKA DAN INSTRUMENTASI

DEPARTEMEN ILMU KOMPUTER DAN ELEKTRONIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS GADJAH MADA

YOGYAKARTA

2016
KATA PENGANTAR

Puji syukur ke hadirat Tuhan Yang Maha Esa atas segala rahmat-Nya sehingga
makalah tugas besar elektronika digital yang berjudul Jam Digital Jadwal Sholat
Berbasis Counter Dengan Kendali ATMega16 ini dapat tersusun hingga selesai. Tidak
lupa kami juga mengucapkan banyak terimakasih atas bantuan dari pihak yang telah
berkontribusi dengan memberikan sumbangan baik materi maupun pikirannya.

Makalah ini disusun sebagai salah satu kriteria penilaian mata kuliah
Elektronika Digital Program Studi Elektronika dan Instrumentasi, Departemen Ilmu
Komputer dan Elektronika, Fakultas Matematika dan Ilmu Pengetahuan Alam,
Universitas Gadjah Mada.

Harapan kami semoga makalah ini dapat menambah pengetahuan dan


pengalaman bagi para pembaca, serta ke depannya dapat memperbaiki bentuk maupun
menambah isi makalah agar menjadi lebih baik lagi.

Karena keterbatasan pengetahuan maupun pengalaman kami, kami yakin masih


banyak kekurangan dalam makalah ini, oleh karena itu kami sangat mengharapkan saran
dan kritik yang membangun dari pembaca demi kesempurnaan makalah ini.

Yogyakarta, 6 Juni 2016

Penulis

ii
DAFTAR ISI
Halaman
HALAMAN JUDUL ........................................................................................... i
KATA PENGANTAR ......................................................................................... ii
DAFTAR ISI ....................................................................................................... iii
INTISARI ............................................................................................................. iv

BAB I PENDAHULUAN ............................................................................. 1


A. LATAR BELAKANG ............................................................... 1
B. TUJUAN .................................................................................... 1

BAB II LANDASAN TEORI ........................................................................ 3

BAB III HASIL DAN PEMBAHASAN ........................................................ 7


A. RANCANGAN SISTEM ........................................................... 7
1. Komponen yang digunakan ............................................ 7
2. Software simulasi yang digunakan ................................. 21
B. CARA KERJA RANGKAIAN .................................................. 25
1. Rangkaian Astable Multivibrator ................................... 25
2. Rangkaian Divide by 10 ................................................. 27
3. Rangkaian Divide by 6 ................................................... 27
4. Rangkaian Divide by 24 ................................................. 28
5. Sistem Minimum ATMega16 ......................................... 30
C. HASIL AKHIR RANGKAIAN ................................................. 32

BAB IV PENUTUP ........................................................................................ 35


A. KESIMPULAN ......................................................................... 35
B. SARAN ...................................................................................... 35

DAFTAR PUSTAKA ........................................................................................... 36


LAMPIRAN ......................................................................................................... 37

iii
INTISARI

Jam Digital Jadwal Sholat Berbasis Counter

Dengan Kendali ATMega16

Jam digital jadwal sholat merupakan suatu alat penunjuk waktu saat ini yang
dilengkapi dengan jadwal sholat lima waktu beserta alarm untuk mengingatkan jamaah
untuk mengumandangkan adzan. Jam digital jadwal sholat ini menggunakan Counter
sebagai komponen utama penghitung waktu. Selain counter, digunakan pula
mikrokontroller ATMega16 sebagai pengendali jadwal waktu sholat serta pemberi
instruksi kapan alarm dibunyikan, yaitu ketika waktu saat ini sama dengan waktu sholat.
Pada rangkaian ini digunakan astable multivibrator sebagai pembangkit pulsa 1 Hz.
Selanjutnya, pulsa akan dikirim ke rangkaian counter divide by 10, kemudian ke divide
by 6, lalu ke divide by 10 dan 6 lagi, dan terakhir menuju rangkaian divide by 24 untuk
membentuk rangkaian jam digital yang menampilkan waktu saat ini serta dihubungkan
ke 7-Segment BCD Display. Digunakan pula multiplexer untuk menyeleksi data dari 2
input berupa output dari counter, dan selector adalah hasil keluaran push button.

Dalam pengendalian jadwal sholat, digunakan rangkaian yang


mengimplementasikan penggunaan ATMega16 yang dihubungkan dengan 7-Segment
BCD Display dan buzzer. ATMega16 ini juga dihubungkan ke rangkaian jam digital
yang disertai multiplexer untuk mengatur waktu alarm dibunyikan. Bahasa
pemrograman yang digunakan untuk memprogram ATMega16 ini adalah bahasa
assembly, sehingga selain membutuhkan pemahaman terhadap rangkaian logika,
dibutuhkan pula pemahaman terhadap bahasa assembly.

Kata kunci: counter, ATMega16, IC, waktu

iv
BAB I

PENDAHULUAN

A. LATAR BELAKANG

Jam adalah alat yang berfungsi untuk menunjukkan waktu. Dahulu jam terbuat
dari bahan-bahan mekanik saja, namun sekarang telah semakin maju dengan
ditambahkannya komponen elektronik. Tak lagi hanya bekerja secara mekanis, jam kini
dapat bekerja secara elektronis dengan menggunakan tenaga baterai. Lebih jauh lagi,
jam kini tidak hanya berbentuk analog, namun sudah terdapat pula jam digital.

Semua hal kini berpatokan pada waktu, begitu pula dengan salah satu kewajiban
umat Muslim, yakni sholat. Sholat di zaman modern ini tak lagi hanya berpatokan pada
posisi matahari, tapi juga dapat ditentukan oleh waktu yang ada pada jam. Dengan ilmu
pengetahuan yang ada saat ini, waktu sholat dapat diprediksi bahkan hingga beberapa
waktu ke depan.

Pengingat waktu atau alarm sangat diperlukan sebagai penanda suatu kegiatan,
seperti adzan dan iqomah pada saat sholat. Dengan adanya alarm, para muadzin dan
jamaah tidak akan kebingungan menentukan saat adzan dan iqomah harus
dikumandangkan. Juga sholat akan selalu dilaksanakan dengan lebih tepat waktu.

Oleh karena itu, dengan mengimplementasikan rangkaian digital yang telah


dipelajari pada mata kuliah Elektronika Digital, kami mencoba untuk membuat simulasi
rangkaian yang dapat menampilkan waktu(jam, menit, detik), waktu sholat wajib, dan
pengingat adzan dan iqomah pada saat sholat.

B. TUJUAN
1. Memahami implementasi komponen-komponen elektronika untuk membuat
rangkaian jam digital waktu sholat
2. Memahami prinsip rangkaian elektronika yang digunakan dalam pembuatan
jam digital waktu sholat
3. Mengimplementasikan penggunaan IC Counter 74LS93 untuk membuat
rangkaian jam digital yang dapat menampilkan waktu

1
4. Mengimplementasikan penggunaan ATMega16 sebagai pengendali waktu
untuk dapat menjadi pengingat waktu sholat wajib 5 waktu
5. Mengimplementasikan penggunaan Buzzer sebagai pengingat untuk adzan

2
BAB II

LANDASAN TEORI

Jam digital jadwal sholat adalah suatu alat yang digunakan untuk menghitung
waktu saat ini dan memberikan peringatan berupa alarm jika waktu saat ini sama
dengan waktu sholat. Rangkaian ini menggunakan komponen utama berupa IC Counter
74LS93 untuk menampilkan jam digital, serta mikrokontroller ATMega16 untuk
menampilkan jadwal sholat dan alarm. Jam digital jadwal sholat ini menggunakan
rangkaian astable multivibrator dengan IC 555 sebagai penghasil sinyal yang
menghasilkan pulsa satu gelombang per detik (1 Hz). Jam digital jadwal sholat dibuat
dalam format 24 jam.

Jam digital jadwal sholat menggunakan prinsip pencacah asinkron ripple


counter. Pada pencacah tak sinkron, perubahan dari output FF tidak terjadi secara
serempak, karena pulsa input clock hanya dimasukkan pada FF yang terdepan (Least
Significant Bit = LSB), sedang pulsa clock dari FF yang lain diperoleh dari FF di
depannya. Dengan demikian, perubahan dari output FF akan terjadi secara beruntun dari
depan ke belakang, sehingga pencacah ini sering disebut dengan pencacah riak. Di
bawah ini adalah blok diagram rangkaian jam digital jadwal sholat bagian jam digital:

Divide Divide Divide Divide Divide Sumber


by 24 by 6 by 10 by 6 by 10 Sinyal

Gambar 2.1 Diagram rangkaian jam digital

Sumber sinyal merupakan rangkaian astable multivibrator yang menghasilkan


pulsa 1 Hz. Divide by 10 akan menghitung dari 1-10 dan akan menambahkan angka 1
pada puluhan setiap mencapai angka 10, serta akan me-reset menjadi 0 ketika mencapai
angka 10. Dengan demikian, pada rangkaian ini output akan menghasilkan nilai 1 ketika

3
di-reset. Divide by 6 akan menghitung dari 1-6 dan akan menambahkan angka 1 pada
satuan yang lebih besar (detik ke menit dan menit ke jam) setiap mencapai angka 6,
serta akan me-reset menjadi 0 ketika mencapai angka 6. Dengan demikian, pada
rangkaian ini output juga akan menghasilkan nilai 1 ketika di-reset. Divide by 24 akan
menghitung dari 1-24 dan akan me-reset menjadi 0 ketika mencapai angka 24.

Dari penjelasan diatas dapat dibuat tabel kebenaran sbb:

Divide By 10
INPUT OUTPUT
BCD IC 74LS93
QD(H) QC(I) QB(J) QA(K) MR(Y) Product Term
0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 0 0
3 0 0 1 1 0
4 0 1 0 0 0
5 0 1 0 1 0
6 0 1 1 0 0
7 0 1 1 1 0
8 1 0 0 0 0
9 1 0 0 1 0
A 1 0 1 0 1 QD.QB = HJ

Tabel 2.1 Tabel Kebenaran rangkaian Divide by 10

Divide By 6
INPUT
OUTPUT
BCD IC 74LS93
QD(H) QC(I) QB(J) QA(K) MR(Y) Product Term
0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 0 0
3 0 0 1 1 0
4 0 1 0 0 0
5 0 1 0 1 0
6 0 1 1 0 1 QC.QB = IJ

Tabel 2.2 Tabel Kebenaran rangkaian Divide by 6

4
Divide By 24
INPUT
OUTPUT Product Term
BCD IC 74LS93 (A) IC 74LS93 (B)
QD(D) QC(E) QB(F) QA(G) QD(H) QC(I) QB(J) QA(K) MR IC A(X) MR IC B (Y)
0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 1 0 0
2 0 0 0 0 0 0 1 0 0 0
3 0 0 0 0 0 0 1 1 0 0
4 0 0 0 0 0 1 0 0 0 0
5 0 0 0 0 0 1 0 1 0 0
6 0 0 0 0 0 1 1 0 0 0
7 0 0 0 0 0 1 1 1 0 0
8 0 0 0 0 1 0 0 0 0 0
9 0 0 0 0 1 0 0 1 0 0
0A 0 0 0 0 1 0 1 0 0 1 HJ
10 0 0 0 1 0 0 0 0 0 0
11 0 0 0 1 0 0 0 1 0 0
12 0 0 0 1 0 0 1 0 0 0
13 0 0 0 1 0 0 1 1 0 0
14 0 0 0 1 0 1 0 0 0 0
15 0 0 0 1 0 1 0 1 0 0
16 0 0 0 1 0 1 1 0 0 0
17 0 0 0 1 0 1 1 1 0 0
18 0 0 0 1 1 0 0 0 0 0
19 0 0 0 1 1 0 0 1 0 0
1A 0 0 0 1 1 0 1 0 0 1 GHJ
20 0 0 1 0 0 0 0 0 0 0
21 0 0 1 0 0 0 0 1 0 0
22 0 0 1 0 0 0 1 0 0 0
23 0 0 1 0 0 0 1 1 0 0
24 0 0 1 0 0 1 0 0 1 1 FI

Tabel 2.3 Tabel Kebenaran rangkaian Divide by 24

Dari tabel kebenaran di atas, dapat diketahui persamaan Boolean sebagai


berikut:

Divide by 10 = QD.QB
Divide by 6 = QC.QB
Divide by 24 A = FI
Divide by 24 B = HJ(1+G) + FI = HJ + FI

Selanjutnya, untuk menampilkan angka, digunakan BCD to 7-segment decoder


dan display. Tabel kebenaran BCD to 7-segment decoder adalah sebagai berikut:

5
INPUT OUTPUT DISPLAY
D C B A a b c d e f g h
0 0 0 0 1 1 1 1 1 1 0 0 0
0 0 0 1 0 1 1 0 0 0 0 0 1
0 0 1 0 1 1 0 1 1 0 1 0 2
0 0 1 1 1 1 1 1 0 0 1 0 3
0 1 0 0 0 1 1 0 0 1 1 0 4
0 1 0 1 1 0 1 1 0 1 1 0 5
0 1 1 0 1 0 1 1 1 1 1 0 6
0 1 1 1 1 1 1 0 0 0 0 0 7
1 0 0 0 1 1 1 1 1 1 1 0 8
1 0 0 1 1 1 1 1 0 1 1 0 9
1 0 1 0 1 1 1 0 1 1 1 0 A
1 0 1 1 0 0 1 1 1 1 1 0 b
1 1 0 0 1 0 0 1 1 1 0 0 C
1 1 0 1 0 1 1 1 1 0 1 0 d
1 1 1 0 1 0 0 1 1 1 1 0 E
1 1 1 1 1 0 0 0 1 1 1 0 F

Tabel 2.4 Tabel kebenaran BCD to 7-segment decoder

Walaupun decoder tersebut dapat menampilkan angka hingga F, namun dalam


penerapannya hanya 0-9 yang digunakan dalam menampilkan waktu, sehingga tampilan
7-segment yang digunakan pada jam digital tersebut adalah sebagai berikut:

Gambar 2.2 Tampilan 7-segment pada jam digital

Selanjutnya, 7-Segment BCD Display tersebut digunakan untuk menampilkan


waktu berupa jam, menit, detik untuk menandai bahwa telah masuk waktu shalat.

6
BAB III

HASIL DAN PEMBAHASAN

A. RANCANGAN SISTEM
1. Komponen yang digunakan
1.1. LED

Light Emitting Diode atau sering disingkat dengan LED adalah


komponen elektronika yang dapat memancarkan cahaya monokromatik
ketika diberikan tegangan maju. LED merupakan dioda yang dapat
memancarkan cahaya pada saat mendapat arus bias maju (forward bias).
LED dapat memancarkan cahaya karena menggunakan doping galium,
arsenic dan phosphorus. Jenis doping yang berbeda diatas dapat
menghasilkan cahaya dengan warna yang berbeda. LED merupakan salah
satu jenis dioda, sehingga hanya akan mengalirkan arus listrik satu arah
saja.

Sumber: http://elektronika-dasar.web.id

Gambar 3.1 Simbol Dan Bentuk Fisik LED

Pada rangkaian jam digital jadwal sholat, LED digunakan untuk


menampilkan pembatas waktu berupa “:”, serta digunakan dalam 7-
Segment display. LED akan memancarkan cahaya apabila diberikan
tegangan listrik dengan konfigurasi forward bias. Berbeda dengan dioda

7
pada umumnya, kemampuan mengalirkan arus pada LED cukup rendah
yaitu maksimal 20 mA. Warna-warna cahaya yang dipancarkan oleh
LED dalam rangkaian ini adalah merah.

1.2. 7-Segment Common Cathode Display


7-Segment Common Cathode Display adalah komponen Elektronika
yang dapat menampilkan angka desimal melalui kombinasi-kombinasi
segmennya. Seven Segment Display pada umumnya dipakai pada Jam
Digital, Kalkulator, Penghitung atau Counter Digital, Multimeter Digital
dan juga Panel Display Digital seperti pada Microwave Oven ataupun
Pengatur Suhu Digital. Seven Segment Display memiliki 7 Segmen
dimana setiap segmen dikendalikan secara ON dan OFF untuk
menampilkan angka yang diinginkan. Angka-angka dari 0 (nol) sampai 9
(Sembilan) dapat ditampilkan dengan menggunakan beberapa kombinasi
Segmen. Selain 0 – 9, Seven Segment Display juga dapat menampilkan
Huruf Hexadecimal dari A sampai F. Segmen atau elemen-elemen pada
Seven Segment Display diatur menjadi bentuk angka “8” yang agak
miring ke kanan dengan tujuan untuk mempermudah pembacaannya.
Pada beberapa jenis Seven Segment Display, terdapat juga penambahan
“titik” yang menunjukan angka koma decimal. Terdapat beberapa jenis
Seven Segment Display, diantaranya adalah Incandescent bulbs,
Fluorescent lamps (FL), Liquid Crystal Display (LCD) dan Light
Emitting Diode (LED).

Sumber: http://www.electronics-tutorials.ws
Gambar 3.2 Rangkaian 7-Segment Common Cathode Display

8
Pada rangkaian Jam digital jadwal sholat, jenis 7 segment yang
digunakan adalah LED 7 Segmen Tipe Common Cathode (Katoda). Pada
LED 7 Segmen jenis Common Cathode (Katoda), Kaki Katoda pada
semua segmen LED adalah terhubung menjadi 1 Pin, sedangkan Kaki
Anoda akan menjadi Input untuk masing-masing Segmen LED. Kaki
Katoda yang terhubung menjadi 1 Pin ini merupakan Terminal Negatif (-
) atau Ground sedangkan Signal Kendali (Control Signal) akan diberikan
kepada masing-masing Kaki Anoda Segmen LED.

1.3. 7-Segment BCD Display


7-Segment BCD Display adalah suatu rangkaian decoder BCD to 7-
segment yang juga dilengkapi dengan 7-Segment Cathode Display.
Rangkaian ini akan menerjemahkan input berupa urutan bilangan biner
dalam bentuk BCD menjadi output berupa biner yang akan mengaktifkan
LED pada 7-Segment display.

Sumber: http://www.sigmatone.com

Gambar 3.3 Rangkaian 7-Segment BCD Display

1.4. Resistor

Resistor adalah komponen elektronika yang berfungsi untuk membatasi


arus yang mengalir pada sebuah rangkaian. Resistor memiliki satuan
“Ohm “ atau dilambangkan dengan “ Ω “. Pada dasarnya, Resistor dibagi
menjadi dua jenis, yaitu Resistor Tetap dan Resistor Variabel.

9
Sumber: http://zonaelektro.net

Gambar 3.4 Simbol Dan Bentuk Fisik Resistor

Pada rangkaian jam digital jadwal sholat, jenis resistor yang digunakan
adalah resistor tetap. Resistor Tetap adalah Resistor yang nilai
hambatannya tetap dan tidak dapat diubah – ubah nilainya. Besar
kecilnya kemampuan Resistor untuk dilewati arus tergantung dari bahan
pembuat Resistor itu sendiri. Resistor tetap ini digunakan pada rangkaian
astable multivibrator pembangkit pulsa untuk menahan arus yang
mengalir pada rangkaian tersebut. Pada rangkaian astable multivibrator,
digunakan dua buah resistor tetap yang disusun secara paralel dengan
resistansi masing-masing sebesar 14,6 kΩ dan 1 kΩ.

1.5. Kapasitor
Kapasitor adalah suatu komponen elektronika yang dapat menyimpan
dan melepaskan muatan listrik atau energi listrik. Kemampuan untuk
menyimpan muatan listrik pada kapasitor disebut dengan kapasitansi atau
kapasitas. Seperti halnya hambatan, kapasitor dapat dibagi menjadi
kapasitor tetap dan kapasitor tidak tetap.

Sumber: http://zonaelektro.net

Gambar 3.5 Simbol Dan Bentuk Fisik Kapasitor

10
Pada rangkaian jam digital jadwal sholat, jenis kapasitor yang digunakan
adalah kapasitor tetap. Kapasitor tetap merupakan kapasitor yang
mempunyai nilai kapasitas yang tetap. Kapasitor tetap ini digunakan
pada rangkaian astable multivibrator untuk menyimpan muatan listrik,
dan kemudian melepaskannya. Kapasitor yang digunakan masing-masing
memiliki kapasitansi sebesar 47 μF dan 10 nF yang terhubung secara
paralel.

1.6. Push Button Switch


Switch/saklar adalah komponen elektronika yang berfungsi untuk
memberikan sinyal atau untuk memutuskan atau menyambungkan suatu
sistem kontol. Switch berupa komponen kontaktor mekanik yang
digerakkan karena suatu kondisi tertentu. Switch merupakan komponen
yang mendasar dalam sebuah rangkaian listrik maupun rangkaian kontrol
sistem. Komponen ini sederhana namun memiliki fungsi yang paling
vital di antara komponen listrik yang lain. Jadi switch/saklar pada
dasarnya adalah suatu alat yang dapat atau berfungsi menghubungkan
atau memutuskan aliran listrik. Terdapat berbagai macam saklar yang
dapat digunakan, namun dalam rangkaian jam digital jadwal sholat,
hanya satu jenis saklar yang digunakan, yaitu Push Button. Saklar push
button adalah tipe saklar yang hanya kontak sesaat saja saat ditekan dan
setelah dilepas maka akan kembali lagi menjadi off.

Sumber: http://www.abi-blog.com
Gambar 3.6 Simbol Dan Bentuk Fisik Push Button Switch

Pada rangkaian jam digital jadwal sholat, push button berfungsi sebagai
pengatur waktu jam digital. Ketika saklar ini ditekan, maka waktu yang
dipilih akan meningkat secara terus menerus sampai saklar ini dilepas.
Saklar ini bekerja sebagai pemberi sinyal masukan pada rangkaian listrik,

11
selama bagian knopnya ditekan maka alat ini akan bekerja sehingga
kontak-kontaknya akan terhubung dan sebaliknya ketika knopnya dilepas
kembali maka kontaknya akan terlepas.
1.7. IC 74LS93
IC 74LS93 adalah IC counter 4-bit yang digunakan untuk membuat
rangkaian divide by 10, 6, dan 24. Pencacah atau penghitung (counter)
ini merupakan piranti yang penting fungsinya dalam suatu sistem
rangkaian digital. Suatu pencacah akan menghitung jumlah daur yang
dilewati oleh pulsa clock pemicunya. Rangkaian ini tersusun dari
beberapa buah FF JK yang terpicu pada pinggiran positif atau negatif,
dengan fungsi-fungsi set dan clear-nya.

Sumber: Texas Instruments


Gambar 3.7 Rangkaian counter di dalam IC 74LS93

Pencacah 4 bit disusun dari 4 buah FF JK dengan keluaran dari setiap FF


akan memicu FF yang ada dibelakangnya. Suatu sinyal clock memicu FF
A pada saat pinggiran negatif pulsa tiba. Selanjutnya keluaran FF A akan
memicu FF B, keluaran FF B memicu FF C, dan keluaran FF C akan
memicu FF D. Dari gambar tampak bahwa masukan J dan K pada
masing-masing FF bernilai ‘1’, sehingga keempat FF tersebut dalam
keadaan "toggle", artinya keluaran tiap FF itu akan berpindah keadaan
jika pinggiran negatif dari pulsa yang memicunya tiba. Cara kerja dari
rangkaian ini dapat dijelaskan sebagai berikut :
a. Misalkan pada keadaan awal semua FF telah direset, sehingga setiap
FF mempunyai keluaran nol. Jadi sebelum datang pulsa clock pertama
diperoleh DCBA = 0000.

12
b. Ketika pulsa clock pertama tiba (clock = 1), maka FF A akan dipicu
pada pinggiran negatifnya, sehingga diperoleh A = 1, sedangkan FF
lainnya belum bekerja dan tetap pada keadaan awalnya. Untuk daur
yang pertama diperoleh keluaran DCBA = 0001.
c. Ketika pulsa clock kedua tiba, maka FF A kembali dipicu pada
pinggiran negatifnya, sehingga keluarannya berubah menjadi A = 0.
Perubahan keadaan pada A merupakan picuan negatif pada FF B,
sehingga menghasilkan B = 1. sedangkan FF C dan D tetap pada
keadaan awalnya. Untuk daur ini diperoleh DCBA = 0010.
d. Ketika pulsa clock ketiga tiba, maka FF A akan dipicu kembali pada
pinggiran negatifnya, sehingga keluaran A menjadi tinggi. Sedangkan
FF lainnya tetap berada pada keadaan terakhirnya. Dengan demikian
pada daur ini diperoleh DCBA = 0011.
e. Ketika pulsa clock keempat tiba, FF A akan dipicu kembali pada
pinggiran negatifnya, sehingga keluaran FF A menjadi rendah.
Perubahan keluaran FF A merupakan picuan negatif untuk FF B
sehingga keluaran FF B berayun menjadi rendah (B = 0). Perubahan
keluaran FF B ini akan memicu FF C sehingga keluaran dari FF C
yang semula rendah menjadi tinggi (C = 1). Karena FF D belum
terpicu, maka keluaran pada daur ini DCBA = 0100.

Demikian seterusnya. Secara singkat dapat disimpulkan bahwa setiap


keluaran dari masing-masing FF akan memicu FF lain yang ada
dibelakangnya.

1.8. IC 74LS157
IC 74LS157 merupakan IC yang terdiri dari 4 buah multiplexer 2x1.
Sebuah Multiplexer adalah rangkaian logika yang menerima beberapa
input data digital dan menyeleksi salah satu dari input tersebut pada saat
tertentu, untuk dikeluarkan pada sisi output. Seleksi data-data input
dilakukan oleh selector line, yang juga merupakan input dari multiplexer
tersebut. Selektor pada Multiplexer akan memilih saklar yang akan

13
dihubungkan. Jumlah masukan selektor adalah ‘n’ yang dapat
menyeleksi ‘2n’ saluran masukan.

Sumber: Texas Instruments

Gambar 3.8 Konfigurasi pin dan rangkaian multiplexer di dalam IC 74LS157

Pada rangkaian jam digital jadwal sholat, multiplexer digunakan untuk


menyeleksi data dari 2 input berupa output dari counter, dan selector
adalah hasil keluaran push button.
1.9. IC 555
IC 555 merupakan IC Timer atau IC Pewaktu, yaitu jenis IC yang
digunakan untuk berbagai Rangkaian Elektronika yang memerlukan
fungsi Pewaktu dan multivibrator didalamnya. Beberapa rangkaian yang
memerlukan IC Timer diantaranya seperti Waveform Generator,
Frequency Meter, Jam Digital, Counter dan lain sebagainya. Pada
dasarnya, IC Timer 555 merupakan IC Monolitik pewaktu yang
menghasilkan Osilasi (Oscilation) dan Waktu Penundaan (Delay Time)
dengan keakuratan dan kestabilan tinggi. IC Timer 555 yang umum
digunakan adalah IC Timer 555 yang berbentuk DIP (Dual Inline
Package) dengan 8 kaki terminalnya. Namun seiring dengan
perkembangannya, saat ini kita dapat menemui beberapa versi IC 555,
diantaranya seperti IC 556 yang menggabungkan 2 buah IC 555 dalam
satu kemasan (14 kaki), IC 558 yang menggabungkan 4 buah IC555
dalam satu kemasan (16 kaki) serta IC555 yang mengkonsumsi daya

14
rendah seperti 7555 dan TLC555. Nama IC 555 diambil dari 3 buah
resistor yang terdapat dalam kemasan IC dengan nilai masing-masing
5kΩ.

Sumber: Texas Instruments

Gambar 3.9 Konfigurasi pin dan rangkaian timer di dalam IC 555

Berikut ini adalah susunan dan konfigurasi Kaki IC 555 yang berbentuk
DIP 8 kaki.

a. Kaki 1 (GND): Terminal Ground atau Terminal Negatif sumber


tegangan DC.
b. Kaki 2 (TRIG): Terminal Trigger (Pemicu), digunakan untuk
memicu Output menjadi “High”, kondisi High akan terjadi apabila
level tegangan pada kaki Trigger ini berubah dari High menuju ke
<1/3Vcc (Lebih kecil dari 1/3Vcc).
c. Kaki 3 (OUT): Terminal Output (Keluaran) yang memiliki 2
keadaan yaitu “Tinggi/High” dan “Rendah/Low”.
d. Kaki 4 (RESET): Terminal Reset. Apabila kaki 4 digroundkan,
Output IC akan menjadi rendah dan menyebabkan perangkat ini
menjadi OFF. Oleh karena itu, untuk memastikan IC dalam kondisi
ON, Kaki 4 biasanya diberikan sinyal “High”.
e. Kaki 5 (CONT): Terminal Control Voltage (Pengatur Tegangan),
memberikan akses terhadap pembagi tegangan internal. Secara
default, tegangan yang ditentukan adalah 2/3 Vcc.

15
f. Kaki 6 (THRES): Terminal Threshold, digunakan untuk membuat
Output menjadi “Low”. Kondisi “Low” pada Output ini akan terjadi
apabila Kaki 6 atau Kaki Threshold ini berubah dari Low menuju >
1/3Vcc (lebih besar dari 1/3Vcc).
g. Kaki 7 (DISCH) : Terminal Discharge. Pada saat Output “Low”,
Impedansi kaki 7 adalah “Low”. Sedangkan pada saat Output
“High”, Impedansi kaki 7 adalah “High”.
h. Kaki Discharge ini biasanya dihubungkan dengan Kapasitor yang
berfungsi sebagai penentu interval pewaktuan. Kapasitor akan
mengisi dan membuang muatan seiring dengan impedansi pada kaki
7. Waktu pembuangan muatan inilah yang menentukan Interval
Pewaktuan dari IC555.
i. Kaki 8 (Vcc) : Terminal Positif sumber tegangan DC (sekitar 4,5V
atau 16V).
1.10. IC 7408
IC 7408 merupakan IC yang berisi 4 buah gerbang logika AND. Gerbang
logika AND adalah gerbang logika yang menghasilkan output bernilai 1
jika kedua inputnya bernilai 1, dan akan menghasilkan output bernilai 0
jika salah satu atau kedua inputnya bernilai 0. Pada rangkaian jam digital
jadwal sholat, gerbang logika AND digunakan pada rangkaian divide by
24.

Sumber: Texas Instruments


Gambar 3.10 Rangkaian, blok diagram, dan tabel kebenaran IC 7408
1.11. IC 7432
IC 7432 merupakan IC gerbang logika OR. Gerbang logika OR adalah
gerbang logika yang menghasilkan output bernilai 0 jika kedua inputnya

16
bernilai 0, dan akan menghasilkan output bernilai 1 jika salah satu atau
kedua inputnya bernilai 1. Pada rangkaian jam digital jadwal sholat,
gerbang logika OR digunakan pada rangkaian divide by 24.

Sumber: Texas Instruments


Gambar 3.11 Rangkaian, blok diagram, dan tabel kebenaran IC 7432

1.12. Mikrokontroller ATMega16


Mikrokontroller adalah sebuah sistem komputer lengkap dalam satu
serpih (chip). Mikrokontroller lebih dari sekedar sebuah mikroprosesor
karena sudah terdapat atau berisikan ROM (Read-Only Memory), RAM
(Read-Write Memory), beberapa bandar masukan maupun keluaran, dan
beberapa peripheral seperti pencacah/pewaktu, ADC (Analog to Digital
converter), DAC (Digital to Analog converter) dan serial komunikasi.
Salah satu mikrokontroller yang banyak digunakan saat ini yaitu
mikrokontroller AVR. AVR adalah mikrokontroller RISC (Reduce
Instruction Set Compute) 8 bit berdasarkan arsitektur Harvard. Secara
umum mikrokontroller AVR dapat dikelompokkan menjadi 3 kelompok,
yaitu keluarga AT90Sxx, ATMega dan ATtiny. Pada dasarnya yang
membedakan masing-masing kelas adalah memori, peripheral, dan
fiturnya Seperti mikroprosesor pada umumnya, secara internal
mikrokontroller ATMega16 terdiri atas unit-unit fungsionalnya
Arithmetic and Logical Unit (ALU), himpunan register kerja, register dan
dekoder instruksi, dan pewaktu beserta komponen kendali lainnya.
Berbeda dengan mikroprosesor, mikrokontroller menyediakan memori
dalam serpih yang sama dengan prosesornya (in chip).

17
Sumber: Atmel

Gambar 3.12 Konfigurasi pin dan blok diagram ATMega16

Secara garis besar mikrokontroller ATMega16 terdiri dari :

a. Arsitektur RISC dengan throughput mencapai 16 MIPS pada


frekuensi 16Mhz.
b. Memiliki kapasitas Flash memori 16Kbyte, EEPROM 512 Byte, dan
SRAM 1Kbyte
c. Saluran I/O 32 buah, yaitu Bandar A, Bandar B, Bandar C, dan
Bandar D.

18
d. CPU yang terdiri dari 32 buah register.
e. User interupsi internal dan eksternal
f. Bandar antarmuka SPI dan Bandar USART sebagai komunikasi
serial
g. Fitur Peripheral:
 Dua buah 8-bit timer/counter dengan prescaler terpisah dan mode
compare
 Satu buah 16-bit timer/counter dengan prescaler terpisah, mode
compare, dan mode capture
 Real time counter dengan osilator tersendiri
 Empat kanal PWM dan Antarmuka komparator analog
 8 kanal, 10 bit ADC
 Byte-oriented Two-wire Serial Interface
 Watchdog timer dengan osilator internal

1.13. Buzzer
Buzzer Listrik adalah sebuah komponen elektronika yang dapat
mengubah sinyal listrik menjadi getaran suara. Pada umumnya, Buzzer
yang merupakan sebuah perangkat audio ini sering digunakan pada
rangkaian Alarm pada Jam Tangan, Bel Rumah, dan perangkat
peringatan bahaya lainnya. Jenis Buzzer yang sering ditemukan dan
digunakan adalah Buzzer yang berjenis Piezoelectric, hal ini dikarenakan
Buzzer Piezoelectric memiliki berbagai kelebihan seperti lebih murah,
relatif lebih ringan dan lebih mudah dalam menggabungkannya ke
Rangkaian Elektronika lainnya. Buzzer yang termasuk dalam keluarga
Transduser ini juga sering disebut dengan Beeper.

19
Sumber: http://teknikelektronika.com
Gambar 3.13 Simbol Dan Bentuk Fisik Buzzer

Pada rangkaian jam digital jadwal sholat, buzzer ini digunakan sebagai
alarm untuk memberitahu bahwa waktu saat ini sama dengan waktu sholat,
sehingga memberi petunjuk untuk segera mengumandangkan adzan. Buzzer
ini menggunakan efek Piezoelectric untuk menghasilkan suara atau
bunyinya. Tegangan listrik yang diberikan ke bahan Piezoelectric akan
menyebabkan gerakan mekanis, gerakan tersebut kemudian diubah menjadi
suara atau bunyi yang dapat didengar oleh telinga manusia dengan
menggunakan diafragma dan resonator.

1.14. IC ULN2803

IC ULN2803 terdiri dari 8 transistor NPN Darlington yang cocok untuk


menghubungkan rangkaian digital (seperti TTL, CMOS, PMOS/NMOS)
dan alat-alat yang membutuhkan arus / tegangan tinggi seperti lampu,
buzzer, relay, dsb.

Pada rangkaian jam digital jadwal sholat, IC ULN2803 ini digunakan untuk
menghubungkan rangkaian digital dengan buzzer, sehingga ketika jam
digital menunjukkan waktu yang sama dengan jadwal sholat, buzzer dapat
dibunyikan. Berikut ini adalah rangkaian logika di dalam IC ULN2803:

20
Sumber: Texas Instruments
Gambar 3.14 Rangkaian logika dalam IC ULN2803

2. Software simulasi yang digunakan


2.1. Proteus Design Suite 8.3 SP 2 (build 19906)

Proteus Professional merupakan aplikasi yang digunakan untuk simulasi


mikroprosesor, skematis, dan PCB desain. Program ini dikembangkan oleh
Labcenter Electronics. Proteus adalah sebuah software untuk mendesain
PCB yang juga dilengkapi dengan simulator "pspice" pada level skematik
sebelum rangkaian skematik diupgrade ke PCB sehingga sebelum PCBnya
di cetak kita akan tahu apakah PCB yang akan kita cetak sudah benar
atau tidak. Proteus mengkombinasikan program ISIS untuk membuat
skematik desain rangkaian dengan program ARES untuk membuat layout

21
PCB dari skematik yang kita buat. Software ini bagus digunakan untuk
desain rangkaian mikrokontroller.

Gambar 3.15 Tampilan depan software simulasi Proteus Design Suite 8.3

Fitur-fitur dari PROTEUS adalah sebagai berikut :


a. Memiliki kemampuan untuk mensimulasikan hasil rancangan baik
digital maupun analog maupun gabungan keduanya,
b. Mendukung simulasi yang menarik dan simulasi secara grafis,
c. Mendukung simulasi berbagai jenis microcontroller seperti AVR, PIC,
8051 series.
d. Memiliki model-model peripheral yang interactive seperti LED,
tampilan LCD, dan berbagai jenis library lainnya,
e. Mendukung instrument-instrument virtual seperti voltmeter, ammeter,
oscilloscope, logic analyzer, dll,
f. Memiliki kemampuan menampilkan berbagi jenis analisis secara
grafis seperti transient, frekuensi, noise, distorsi, AC dan DC, dll.
g. Mendukung berbagai jenis komponen-komponen analog,
h. Mendukung open architecture sehingga kita bisa memasukkan
program untuk keperluan simulasi,

22
i. Mendukung pembuatan PCB yang di-update secara langsung dari
program ISIS ke program pembuat PCB-ARES.

ISIS dipergunakan untuk keperluan pendidikan dan perancangan.


Beberapa fitur umum dari ISIS adalah sebagai berikut :

a. Windows dapat dioperasikan pada Windows XP/7/8/10


b. Routing secara otomatis dan memiliki fasilitas penempatan dan
penghapusan dot.
c. Sangat powerful untuk pemilihan komponen dan pemberian properties-
nya.
d. Mendukung untuk perancangan berbagai jenis bus dan komponen-
komponen pin, port modul dan jalur.
e. Memiliki fasilitas report terhadap kesalahan-kesalahan perancangan dan
simulasi elektrik.
f. Memiliki fasilitas untuk menambahkan package dari komponen yang
belum didukung.

Cara memasukkan script ke ATMega16 di Proteus

a. Pada ATMega16 di Proteus klik kanan pilih Edit Properties


b. Muncul kotak dialog Edit Component, pada bagian Program File isi
direktori script atau klik kotak di samping Program File
c. Setelah klik kotak di samping Program File, muncul kotak dialog Select
File Name, pada bagian Look in cari direktori file hex atau obj script
untuk ATMega16
d. Setelah memilih file hex atau obj script ATMega16 klik open
e. File hex atau obj script ATMega16 sudah ada di bagian Program File
lalu klik OK
f. ATMega16 di Proteus sekarang sudah terisi script

Pada proses perancangan Jam digital jadwal sholat, software Proteus ini
digunakan untuk membuat rangkaian digital maupun analog jam digital
jadwal sholat. Dengan software ini, rangkaian yang telah dibuat dan

23
diprogram dapat disimulasikan sehingga dapat diketahui hasil output
rangkaian tersebut.

2.2. Atmel AVR Studio 5 (Version 5.1.208)


Atmel Studio merupakan Integrated Development Platform (IDP) yang
digunakan untuk mengembangkan aplikasi-aplikasi mikrokontroller
berbasis Atmel ARM Cortex dan Atmel AVR. Atmel Studio memberikan
kemudahan dalam membangun aplikasi yang ditulis menggunakan bahasa
C/C++ atau assembly. Atmel Studio 6 merupakan software gratis dan
terintegrasi dengan Atmel Software Framework (ASF), yaitu sebuah
library yang besar yang dilengkapi dengan contoh kode untuk ARM dan
AVR. Karena sifatnya yang open source membuat Atmel Studio 6 banyak
digemari, dan banyak pengembang aplikasi berbasis mikrokontroller
menggunakan aplikasi ini.

Gambar 3.16 Tampilan depan software AVR Studio 5

Pada perancangan jam digital jadwal sholat, software AVR Studio ini
digunakan untuk membuat program dalam bahasa Assembly pada

24
pemrograman ATMega16. Program ini dibuat untuk menampilkan
jadwal sholat lima waktu serta mengatur waktu alarm dibunyikan.

B. CARA KERJA RANGKAIAN


1. Rangkaian Astable Multivibrator

Gambar 3.17 Rangkaian Astable Multivibrator


Rangkaian Astable Multivibrator dibuat menggunakan IC 555 yang digunakan
untuk menghasilkan sinyal frekuensi tinggi tetapi IC ini juga dapat digunakan
untuk menghasilkan sinyal frekuensi rendah sebesar 1 Hz. Dalam Astable
Multivibrator dibutuhkan 2 resistor dan 2 kapasitor yang berfungsi untuk
mengatur sinyal keluaran. Kapasitor C2 yang bernilai 10 nF ini penggunaannya
opsional. Selanjutnya kita tentukan nilai tiga komponen lainnya. Untuk
memperoleh sinyal yang diharapkan maka dilakukan sebuah perhitungan dengan
rumus:

( ) ( )
dimana waktu untuk pulsa 1 adalah :
( )( )
dan waktu untuk pulsa 0 adalah :

25
( )

Dari perhitungan tersebut diperoleh nilai untuk komponen R1, R2, dan C1.
Perbandingan antara waktu sinyal 1 dan 0 dalam 1 periode disebut duty-cycle.
Dengan IC 555 nilai minimum untuk R1 adalah 1kΩ yang berarti kita tidak
dapat memperoleh duty cycle tepat 50%. Jika kita memakai R1 < 1kΩ dapat
menyebabkan kelebihan arus dan dapat merusak IC 555. Untuk mendapatkan
frekuensi duty cycle sekitar 50% maka kita menggunakan R1 dengan hambatan
1kΩ. Untuk mendapatkan frekuensi sekitar 1 Hz maka nilai f = 1 Hz.
Substitusikan nilai R1 dan f

( ) ( )
maka

( ) ( )

( ) ( )

( )
didapatkan

( )
Dengan plotting R2 (sumbu y) dan C1 (sumbu x) kita mendapatkan grafik sbb:

Gambar 3.18 Grafik antara R2 dan C1

Dari grafik tersebut diperoleh nilai R2 = 14,6 kΩ dan C1 = 47μF, namun karena
ketika menggunakan simulasi Proteus terjadi delay pemrosesan (simulasi tidak

26
berjalan secara real-time) yang disebabkan terjadinya excessive CPU load, maka
pada simulasi ini nilai R2 = 10,3 kΩ agar nilai waktu detik pada simulasi sesuai
dengan waktu sebenarnya.
2. Rangkaian Divide by 10

Gambar 3.19 Rangkaian divide by 10

Untuk rangkaian divide by 10, QA dihubungkan ke CKB untuk menggunakan


counter 4 bit. QA adalah LSB dan QD adalah MSB. Input clock dihubungkan ke
CKA Untuk mengimplementasikan divide by 10 atau MOD10 counter, QD
dihubungkan ke R0(2) dan QB dihubungkan ke R0(1). Sehingga ketika
mencapai 10 (1010 biner) dimana QD bernilai 1 dan QB bernilai 1, nilai akan di-
reset menjadi 0. Output dari QD juga dihubungkan ke counter lainnya sebagai
input clock dari divide by 10. Untuk menampilkan nilai counter, QD, ..., QA
dihubungkan ke 7-Segment BCD Display.

3. Rangkaian Divide by 6

Gambar 3.20 Rangkaian divide by 6

27
Untuk rangkaian divide by 6, QA dihubungkan ke CKB untuk menggunakan
counter 4 bit. QA adalah LSB dan QD adalah MSB. Input clock dihubungkan ke
CKA. Untuk mengimplementasikan divide by 6 atau MOD6 counter, QD
dihubungkan ke R0(2) dan QB dihubungkan ke R0(1). Sehingga ketika
mencapai 6 (0110 biner) dimana QC bernilai 1 dan QB bernilai 1, nilai akan di-
reset menjadi 0. Output dari QD juga dihubungkan ke counter lainnya sebagai
input clock dari divide by 6. Untuk menampilkan nilai counter, QD,...QA
dihubungkan ke 7-Segment BCD Display.

Dari penjelasan di atas, dapat diketahui bahwa divide by 10 digunakan pada


satuan detik dan menit sehingga frekuensi clock output dihubungkan menjadi
input frekuensi clock puluhan detik dan menit. Divide by 6 digunakan pada
puluhan detik dan menit. frekuensi clock input satuan detik disebut pps atau
pulse per second, frekuensi clock output pada puluhan detik disebut ppm atau
pulse per minute, frekuensi clock output pada puluhan menit disebut pph atau
pulse per hour. pph ini digunakan sebagai frekuensi clock input untuk satuan jam.

4. Rangkaian Divide by 24

Gambar 3.21 Rangkaian Divide by 24

28
Divide By 24
INPUT
OUTPUT Product Term
BCD IC 74LS93 (A) IC 74LS93 (B)
QD(D) QC(E) QB(F) QA(G) QD(H) QC(I) QB(J) QA(K) MR IC A(X) MR IC B (Y)
0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 1 0 0
2 0 0 0 0 0 0 1 0 0 0
3 0 0 0 0 0 0 1 1 0 0
4 0 0 0 0 0 1 0 0 0 0
5 0 0 0 0 0 1 0 1 0 0
6 0 0 0 0 0 1 1 0 0 0
7 0 0 0 0 0 1 1 1 0 0
8 0 0 0 0 1 0 0 0 0 0
9 0 0 0 0 1 0 0 1 0 0
0A 0 0 0 0 1 0 1 0 0 1 HJ
10 0 0 0 1 0 0 0 0 0 0
11 0 0 0 1 0 0 0 1 0 0
12 0 0 0 1 0 0 1 0 0 0
13 0 0 0 1 0 0 1 1 0 0
14 0 0 0 1 0 1 0 0 0 0
15 0 0 0 1 0 1 0 1 0 0
16 0 0 0 1 0 1 1 0 0 0
17 0 0 0 1 0 1 1 1 0 0
18 0 0 0 1 1 0 0 0 0 0
19 0 0 0 1 1 0 0 1 0 0
1A 0 0 0 1 1 0 1 0 0 1 GHJ
20 0 0 1 0 0 0 0 0 0 0
21 0 0 1 0 0 0 0 1 0 0
22 0 0 1 0 0 0 1 0 0 0
23 0 0 1 0 0 0 1 1 0 0
24 0 0 1 0 0 1 0 0 1 1 FI

Tabel 3.1 Tabel Kebenaran rangkaian Divide by 24

Dari tabel kebenaran di atas, dapat diketahui persamaan Boolean sebagai


berikut:

Divide by 24 A = FI
Divide by 24 B = HJ(1+G) + FI = HJ + FI

29
Persamaan Boolean didapatkan dengan cara ketika MR IC (output) bernilai
1 maka nilai input yang bernilai 1 di-AND-kan lalu persamaan Boolean setiap MR
IC yang bernilai 1 tersebut diubah menjadi persamaan SOP.

Berdasarkan table kebenaran dari divide by 24, didapatkan penjelasan sbb:

Persamaan Boolean reset nilai dari puluhan jam yaitu ketika counter
mencapai angka 24 yaitu MR IC A (X) = FI sehingga dengan sebuah gerbang
logika AND yang inputnya dihubungkan dengan F dan I, outputnya dihubungkan
ke R0 IC A atau MR IC A.

Persamaan Boolean reset nilai dari satuan jam yaitu ketika counter mencapai
angka 10, 20 dan 24 yaitu MR IC B = HJ + FI sehingga dengan sebuah gerbang
logika AND yang inputnya dihubungkan dengan H dan J, outputnya dihubungkan
ke input OR. Sebuah gerbang logika OR yang inputnya adalah FI dan HJ,
outputnya dihubungkan ke R0 IC B atau MR IC B.

Dengan bentuk rangkaian counter seperti rangkaian di atas maka satuan jam
akan di-reset menjadi 0 ketika mencapai angka 10 dan 20. Selain itu puluhan dan
satuan jam keduanya akan di-reset ketika mencapai angka 24.

5. Sistem Minimum ATMega16

Sumber: Atmel
Gambar 3.22 Pinout ATMega16

30
Sistem minimum ATMega16 bisa hanya terdiri dari mikrokontroller ATMega16
saja tetapi dengan syarat frekuensinya hanya 1 MHz, oleh karena itu dengan
menggunakan XTAL maka frekuensi ATMega16 bisa lebih besar.

Gambar 3.23 ATmega16 di Proteus

Untuk memperbesar frekuensi kerja ATMega16 agar bisa lebih besar daripada 1
MHz maka dapat menggunakan rangkaian system minimum ATMega16

Gambar 3.24 Rangkaian Sistem Minimum ATMega16 di Proteus

31
Pada rangkaian di atas digunakan XTAL 12MHz dan 2 kapasitor 22pF yang
digunakan untuk memperbesar frekuensi kerja ATMega16 menjadi 12MHz.

C. HASIL AKHIR RANGKAIAN

Gambar 3.25 Bagian rangkaian counter waktu yang terdiri dari rangkaian Astable
Multivibrator IC 555, Multiplexer 2x1, rangkaian counter yang terdiri dari divide
by 10, divide by 10, divide by 24, 7 segment BCD display dan 2 push button yang
digunakan untuk mengatur jam dan menit

32
Gambar 3.26 Rangkaian alarm sholat 5 waktu, rangkaian ini terdiri dari ATMega16,
7 segment BCD display, IC ULN2083, Buzzer.

Gambar 3.27 Rangkaian penghubung antara bagian counter jam digital dan bagian
alarm waktu sholat yang terdiri dari ATMega16 dan 2 buah IC 74LS147
(multiplexer 2x1)

33
Gambar 3.28 Rangkaian lengkap jam digital dengan alarm sholat 5 waktu yang
terdiri dari rangkaian counter, rangkaian penghubung rangkaian counter dengan
alarm, dan rangkaian alarm sholat 5 waktu disertai push button untuk mengatur
waktu.

34
BAB IV

PENUTUP

A. KESIMPULAN
Dari hasil akhir perancangan rangkaian jam digital jadwal sholat berbasis
counter dengan kendali ATMega16, dapat diambil beberapa kesimpulan sebagai
berikut:

1. Telah berhasil dirancang dan diimplementasikan jam digital jadwal sholat


berbasis counter dengan kendali ATMega16
2. Rangkaian counter yang diimplementasikan pada jam digital terdiri dari 6
buah IC 7493, 2 buah IC 7408, 2 buah IC 74157, 1 buah IC 7432, 6 buah 7-
segment BCD display, dua buah push button untuk mengatur waktu menit
dan jam, serta rangkaian pembangkit pulsa berupa astable multivibrator yang
terdiri dari 1 buah IC 555, 2 buah resistor, dan 2 buah kapasitor
3. Dalam merancang suatu sistem alarm jadwal sholat, digunakan 6 buah
ATMega16, 5 buah buzzer, 2 buah 1C 74157, 20 buah 7-segment BCD
display, dan 1 buah IC ULN2803
4. Pada simulasi dengan software Proteus, terjadi suatu delay pemrosesan,
sehingga simulasi tidak berjalan secara real-time sesuai teori yang ada
5. Jam digital jadwal sholat mampu memberikan isyarat berupa alarm dari
buzzer ketika waktu sekarang sama dengan waktu pada jadwal sholat

B. SARAN
Beberapa saran penulis tentang pengembangan jam digital jadwal sholat ini:
1. Untuk mengurangi delay pemrosesan pada Proteus, diperlukan penggunaan
mikrokontroller yang lebih efisien lagi, serta penggunaan source code
program yang efektif agar pemrosesan dapat berjalan secara real-time.
2. Agar simulasi dengan software Proteus berjalan lancar, diperlukan komputer
dengan spesifikasi yang cukup tinggi sehingga tidak terjadi excessive CPU
load.
3. Untuk meningkatkan fitur pada jam digital waktu sholat, diperlukan
perancangan rangkaian yang lebih kompleks.

35
DAFTAR PUSTAKA

Atmel. 2010. 8-bit AVR Microcontroller with 16K Bytes In-System Programmable
Flash

Texas Instruments. 1995. 54LS157 DM54LS157 DM74LS157 54LS158 DM54LS158


DM74LS158 Quad 2-Line to 1-Line Data Selectors/Multiplexers.

Texas Instruments. 2014. xx555 Precision Timers.

Texas Instruments . 1988. SN5490A, SN5492A, SN5493A, SN54LS90, SN54LS92,


SN54LS93 SN7490A, SN7492A, SN7493A, SN74LS90, SN74LS92, SN74LS93
DECADE, DIVIDE-BY-TWELVE AND BINARY COUNTERS.

http://www.ablab.in/buzzer-interfacing-with-avr-atmega16-microcontroller/, diakses
pada 5 Juni 2016

http://ee223.eeng.dcu.ie/experiments/clock-generator-circuits, diakses pada 5 Juni 2016

http://www.elecrom.com/2008/02/12/avr-tutorial-2-avr-input-output/, diakses pada 5


Juni 2016

http://electronics-course.com/digital-clock, diakses pada 5 Juni 2016

http://elektronika-dasar.web.id/led-light-emitting-dioda/, diakses pada 5 Juni 2016

http://skemaku.com/pengertian-led-cara-kerja-dan-pemanfaatannya/, diakses pada 5


Juni 2016

http://maxembedded.com/2011/06/port-operations-in-avr/, diakses pada 5 Juni 2016

http://teknikelektronika.com/pengertian-led-light-emitting-diode-cara-kerja/, diakses
pada 5 Juni 2016

http://teknikelektronika.com/pengertian-piezoelectric-buzzer-cara-kerja-buzzer/, diakses
pada 5 Juni 2016

http://teknikelektronika.com/pengertian-seven-segment-display-layar-tujuh-segmen/,
diakses pada 5 Juni 2016

http://teknikelektronika.com/pengertian-mengenal-ic-555-ic-timer-konfigurasi-kaki-
ic555/, diakses pada 5 Juni 2016

36
LAMPIRAN

A. Source Code pemrograman bahasa Assembly dengan ATMega16


1. Program pengatur waktu alarm

.list
.include "m16def.inc"
.nolist
.org 0x0000
main:
ldi r16, 0x00
out DDRA, r16
out DDRB, r16
ldi r16, 0xff
out DDRC, r16
out DDRD, r16
in r19, PINA
in r17, PINB
out PORTC, r19
out PORTD, r17
rjmp main

2. Program pengatur waktu shalat subuh


.list
.include "m16def.inc"
.nolist
.org 0x0000
rjmp main
main:
ldi r18, 51
ldi r19, 187
ldi r20, 224
ldi r16, 0xff

37
out DDRA, r16
out DDRC, r16
ldi r16, (1<<DDB0)|(1<<DDB1)
out DDRB, r16
ldi r16, (0<<PORTB0)
out PORTB, r16
ldi r17, 0x00
out DDRD, r17
in r17, PIND
ldi r16, 0b10100100
out PORTC, r16
ldi r16, 0b00100000
out PORTA, r16
cp r17, r16
breq minute
brne main
minute:
ldi r16, (1<<PORTB0)
out PORTB, r16
in r17, PIND
ldi r16, 0b10100100
cp r17, r16
breq equal
brne main
equal:
ldi r16, (1<<PORTB1)
out PORTB, r16
call delay
ldi r16, (0<<PORTB0)
out PORTB, r16
call delay
call delay

38
call delay
call delay
call delay
call delay
rjmp main
delay:
dec r20
brne delay
dec r19
brne delay
dec r18
brne delay
ret

3. Program pengatur waktu shalat dhuhur

.list
.include "m16def.inc"
.nolist
.org 0x0000
rjmp main
main:
ldi r18, 51
ldi r19, 187
ldi r20, 224
ldi r16, 0xff
out DDRA, r16
out DDRC, r16
ldi r16, (1<<DDB0)|(1<<DDB1)
out DDRB, r16
ldi r16, (0<<PORTB0)
out PORTB, r16

39
ldi r17, 0x00
out DDRD, r17
in r17, PIND
ldi r16, 0b10011100
out PORTC, r16
ldi r16, 0b10001000
out PORTA, r16
cp r17, r16
breq minute
brne main
minute:
ldi r16, (1<<PORTB0)
out PORTB, r16
in r17, PIND
ldi r16, 0b10011100
cp r17, r16
breq equal
brne main
equal:
ldi r16, (1<<PORTB1)
out PORTB, r16
call delay
ldi r16, (0<<PORTB0)
out PORTB, r16
call delay
call delay
call delay
call delay
call delay
call delay
rjmp main
delay:

40
dec r20
brne delay
dec r19
brne delay
dec r18
brne delay
ret

4. Program pengatur waktu shalat ashar

.list
.include "m16def.inc"
.nolist
.org 0x0000
rjmp main
main:
ldi r18, 51
ldi r19, 187
ldi r20, 224
ldi r16, 0xff
out DDRA, r16
out DDRC, r16
ldi r16, (1<<DDB0)|(1<<DDB1)
out DDRB, r16
ldi r16, (0<<PORTB0)
out PORTB, r16
ldi r17, 0x00
out DDRD, r17
in r17, PIND
ldi r16, 0b00000000
out PORTC, r16
ldi r16, 0b10101000

41
out PORTA, r16
cp r17, r16
breq minute
brne main
minute:
ldi r16, (1<<PORTB0)
out PORTB, r16
in r17, PIND
ldi r16, 0b00000000
cp r17, r16
breq equal
brne main
equal:
ldi r16, (1<<PORTB1)
out PORTB, r16
call delay
ldi r16, (0<<PORTB0)
out PORTB, r16
call delay
call delay
call delay
call delay
call delay
call delay
rjmp main
delay:
dec r20
brne delay
dec r19
brne delay
dec r18
brne delay

42
ret

5. Program pengatur waktu shalat maghrib

.list
.include "m16def.inc"
.nolist
.org 0x0000
rjmp main
main:
ldi r18, 51
ldi r19, 187
ldi r20, 224
ldi r16, 0xff
out DDRA, r16
out DDRC, r16
ldi r16, (1<<DDB0)|(1<<DDB1)
out DDRB, r16
ldi r16, (0<<PORTB0)
out PORTB, r16
ldi r17, 0x00
out DDRD, r17
in r17, PIND
ldi r16, 0b00000000
out PORTC, r16
ldi r16, 0b10101000
out PORTA, r16
cp r17, r16
breq minute
brne main
minute:
ldi r16, (1<<PORTB0)

43
out PORTB, r16
in r17, PIND
ldi r16, 0b00000000
cp r17, r16
breq equal
brne main
equal:
ldi r16, (1<<PORTB1)
out PORTB, r16
call delay
ldi r16, (0<<PORTB0)
out PORTB, r16
call delay
call delay
call delay
call delay
call delay
call delay
rjmp main
delay:
dec r20
brne delay
dec r19
brne delay
dec r18
brne delay
ret

6. Program pengatur waktu shalat Isya

.list
.include "m16def.inc"

44
.nolist
.org 0x0000
rjmp main
main:
ldi r18, 51
ldi r19, 187
ldi r20, 224
ldi r16, 0xff
out DDRA, r16
out DDRC, r16
ldi r16, (1<<DDB0)|(1<<DDB1)
out DDRB, r16
ldi r16, (0<<PORTB0)
out PORTB, r16
ldi r17, 0x00
out DDRD, r17
in r17, PIND
ldi r16, 0b00100010
out PORTC, r16
ldi r16, 0b00011000
out PORTA, r16
cp r17, r16
breq minute
brne main
minute:
ldi r16, (1<<PORTB0)
out PORTB, r16
in r17, PIND
ldi r16, 0b00100010
cp r17, r16
breq equal
brne main

45
equal:
ldi r16, (1<<PORTB1)
out PORTB, r16
call delay
ldi r16, (0<<PORTB0)
out PORTB, r16
call delay
call delay
call delay
call delay
call delay
call delay
rjmp main
delay:
dec r20
brne delay
dec r19
brne delay
dec r18
brne delay
ret

46

Anda mungkin juga menyukai