Permasalahan
Sekarang ini di masjid maupun di rumah-rumah biasanya terdapat kalender maupun program penampil waktu sholat abadi, tetapi tampilannya sangat kecil sekali (melihatnya harus dari jarak yang sangat dekat). Oleh karena itu pada penelitian ini akan mencoba membuat penampil waktu waktu sholat yang dapat secara real time berubah mengikuti perubahan hari, dan untuk melihatnya dapat dari jarak yang cukup jauh karena direncanakan penampil terdiri dari 7-segment (LED) yang memancarkan cahaya.

Bahan Penelitian

Pada Penampil Waktu Sholat Berbasis Mikrokontroler AT89S52 ini, bahan penelitian yang digunakan adalah.
a. RTC DS12C887 sebagai IC pewaktu yang datanya tidak hilang walaupun listrik mati, karena memiliki back-up baterai didalamnya.
b. Mikrokontroler AT89S52 sebagai pemroses (menyimpan dan mengambil data) pada RAM RTC dan menyimpan data waktu sholat abadi untuk ditampilkan ke 7-segment.
c. Switch Omron, dipasang pada bagian masukan mikrokontroler, sebagai interface setting waktu, kalender.
d. Demultiplekser 16 channel sebagai selector transistor pengendali 20 digit 7-segment.
e. Transistor PNP BC327 yaitu pengendali 7-segment.
f. Penampil 7-segment berjumlah 20 digit, untuk menampilkan data waktu dan kalender.
g. ULN2803 sebagai driver data 7-segment.
h. Papan PCB untuk meletakkan komponen-komponen yang akan digunakan.
i. X-tal (kristal) 12 MHz sebagai pembangkit clock yang digunakan sebagai pembangkit detak mikrokontroler.
j. Trafo 500 mA digunakan sebagai supply tegangan untuk keseluruhan komponen.
k. IC regulator 78L05 sebagai regulator tegangan yang menghasilkan tegangan keluaran ±5 Vdc, sebagai supply mikrokontroler dan IC lainnya.
l. Resistor, kapasitor, dioda.

IC Pewaktu RTC DS12C887
Real Time Clock atau biasa disebut dengan RTC adalah sebuah komponen elektronik yang didalamnya berisi jam elektronik yang tidak pernah berhenti bekerja kecuali register diisi kode Off. Komponen ini menyimpan waktu mulai dari detik hingga tahun, dan selalu diperbaharui setiap saat secara otomatis, nilai informasi waktu disimpan di dalam sebuah RAM dengan alamat yang telah ditentukan. Karena disimpan di dalam sebuah RAM dengan alamat yang sudah ditentukan, maka pengguna dapat mengambil datanya dengan sebuah mikrokontroler, dan hubungannya dengan mikrokontroler sebagai komponen memori eksternal.
Jadi dalam hal ini mengakses data memori eksternal dan mengakses data RTC adalah sama caranya. Disamping itu karena data waktu yang disimpan tidak banyak, maka sisa ruang memori yang disediakan RTC, bisa digunakan untuk menyimpan data secara aman, data tersebut tidak akan hilang meskipun catu daya dimatikan sampai jangka waktu sekitar 10 tahun (seumur baterai yang ada di dalam RTC).
RTC yang digunakan untuk alat Penampil Waktu Sholat Berbasis mikrokontroler AT89S52 ini adalah jenis data paralel 8 bit, yaitu RTC Dallas 12C887. Berikut ini adalah Gambar 3.1 menyambungkan RTC Dallas 12C887 ke port 0 data mikrokontroler.

Sistem Minimum Mikrokontroler AT89S52
Mikrokontroler merupakan komponen utama yang mengendalikan seluruh sistem. Mikrokontroler yang digunakan pada penelitian ini adalah mikrokontroler keluaran Atmel dengan seri AT89S52. Seri ini merupakan varian baru dari keluarga AT89C51 yang mengalami perubahan prosedur pengisian program. Pada seri ini memiliki fasilitas ISP (In System Programming) yang tidak dimiliki pada seri sebelumnya. Fasilitas ini memungkinkan pengubahan isi program walaupun sistem sedang berjalan.
Untuk bekerja dengan mikrokontroler ini diperlukan beberapa komponen tambahan yang sering disebut dengan sistem minimum. Syarat-syarat tersebut antara lain, sistem clock atau osilator, sistem reset dan sistem ISP. Pada penelitian ini sistem minimum disajikan pada Gambar 3.2.

Tombol Masukan
Tombol masukan ini terdiri dari 4 buah tombol (push on) yang dihubungkan ke port 3.0 – port 3.3 mikrokontroler. Ke-empat tombol ini akan mewakili tombol MENU, tombol UP, tombol DOWN, dan tombol NEXT. Tombol – tombol ini akan berfungsi saat setting jam, hari, tanggal, bulan, dan tahun pada RTC. Berikut ini adalah Gambar 3.3 penyambungan tombol ke port mikrokontroler.

Demultiplekser 74HCT154
IC demultiplekser yang digunakan pada alat ini serinya adalah 74HCT154. Pengontrolan keluaran keluaran 16 channel (0-15) menggunakan 4 buah port (P2.0-P2.3) pada pin (A, B, C, dan D). Penggunaan IC ini untuk menghemat penggunaan port mikrokontroler pada saat teknik scanning 20 digit 7-segment. Jika tanpa menggunakan IC demultiplekser, maka port mikrokontroler yang dibutuhkan untuk menyalakan 20 digit 7 segment berjumlah 20 buah. Ketika menggunakan IC demultiplekser hanya membutuhkan 4 buah port menyalakan 16 digit 7-segment dan 4 port tambahan agar dapat menyalakan 7-segment 20 digit. Berikut ini adalah Gambar 3.4 menghubungkan IC 74HCT154 ke port mikrokontroler.

Transistor PNP BC327 Pengendali Pin Common Anode 7-Segment
Untuk menyalakan 20 digit 7-segment menggunakan teknik scanning secara bergantian dalam waktu yang sangat cepat, sehingga respons mata tidak dapat mengenali bahwa 7-segment sebenarnya berkedip. Untuk itu diperlukan rangkaian pengendali 7-segment menggunakan transistor BC327 sebagai saklar, yang dapat menyalakan dan memadamkan 20 digit 7-segment secara bergantian dalam orde waktu mikro detik. Berikut ini adalah Gambar 3.5 transistor PNP BC327 sebagai pengendali Vcc 7-segment.

ULN2803 Pengendali Data 7-Segment
Untuk mengendalikan data 7-segment yang dihubungkan ke port 1 mikrokontroler membutuhkan IC pengendali yaitu ULN2803 yang mampu menyerap arus 500 mA pada setiap port-nya. Jika data 7-segment dihubungkan langsung pada port akan sangat membebani mikrokontroler, karena kemampuan maksimal port mikrokontroler hanya sebesar 15 mA dan tidak dapat maksimal mengendalikan data 20 digit 7-segment (nyala 7-segment redup). Untuk itu dibutuhkan IC pengendali data 7-segment yang memiliki 8 buah input dan output yaitu ULN2803. Berikut ini adalah Gambar 3.6 cara penyambungan IC ULN2803.

Penampil 7-Segment
Penampil 7-segment yang dipakai untuk alat ini berukuran tinggi karakter 1,7 cm, berjumlah 20 digit, yang akan menampilkan waktu sholat jam dan menit (Subuh, Dzuhur, Ashar, Maghrib, dan Isya). Sehingga jumlah keseluruhannya berjumlah 20 digit 7-segment, jenis yang digunakan adalah CA (Common Anode) bagian anoda terhubung. Berikut ini adalah Gambar 3.7 penampil 7-segment CA (Common Anode).

Perakitan Rangkaian Keseluruhan
Setelah mengetahui fungsi dari masing-masing blok diagram, maka saatnya menggabungkan rangkaian-rangkaian yang diperlukan untuk membentuk suatu sistem dari Penampil Waktu Sholat Berbasis Mikrokontroler AT89S52. Berikut ini adalah Gambar 3.8 rangkaian keseluruhan.

Perancangan Perangkat Lunak Mikrokontroler AT89S52
Sebelum melakukan permrograman alat, maka diperlukan rancangan perangkat lunak mikrokontroler. Rancangan perangkat lunak (diagram alir) ini diperlukan untuk memudahkan pada saat pemrograman. Berikut ini Gambar 3.9 diagram alir alat Penampil Waktu Sholat Berbasis Mikrokontroler AT89S52.



Prinsip Kerja Alat

Prinsip kerja alat ini adalah bagian mikrokontroler (pemroses) telah diisi data waktu sholat abadi untuk (Daerah Istimewa Yogyakarta) DIY. Data – data waktu sholat lima waktu yaitu (subuh, dzuhur, ashar, maghrib, dan isya) ini akan ditampilkan ke penampil 7-segment secara terus – menerus dan sesuai dengan waktu sholat yang ditentukan (update). Penampil 7-segment ini berjumlah 20 digit dengan masing – masing waktu sholat membutuhkan 4 digit 7-segment untuk dapat menampilkan jam dan menit. Setelah menampilkan waktu sholat alat ini juga akan menampilkan data waktu dan kalender, yaitu mulai dari jam, menit, detik, hari, tanggal, bulan, serta tahun. Sebelum digunakan alat penampil waktu sholat ini harus diatur waktu dan kalendernya, agar waktu sholat yang ditampilkan sesuai waktu sholat 5 waktu pada hari itu (update). Cara pengaturannya menggunakan saklar yang terdiri dari tombol (menu, up, down, dan next). Fungsi tiap saklar / tombol adalah menu untuk masuk ke pengaturan waktu dan kalender, tombul up untuk menaikkan / menambahkan variabel nilai waktu dan kalender, tombol down untuk menurunkan / mengurangi variabel nilai waktu dan kalender, dan tombol next untuk melanjutkan serta mengakhiri pangaturan nilai dan variabel waktu dan kalender. Berikut ini adalah Gambar 4.1 alat Penampil Waktu Sholat Berbasis Mikrokontroler AT89S52 yang selesai dirakit.




Listing Program

;**********************************************************
; Program Waktu Sholat 5
; Mikrokontroler AT89S52
; RTC DS12C887
; Penampil 7-Segment 20 Digit
;**********************************************************
RATUSAN EQU 100 ; 100 x 10000 ud = 1 detik
CACAH EQU -10000

JAM_P EQU 20H
JAM_S EQU 21H
MENIT_P EQU 22H
MENIT_S EQU 23H
DETIK_P EQU 24H
DETIK_S EQU 25H
Tanggal_p equ 26h
Tanggal_s equ 27h
Bulan_p equ 28h
Bulan_s equ 29h
Tahun_p equ 2ah
Tahun_s equ 2bh
hari_p equ 2ch
Hari_s equ 2dh
Jam EQU 2eH
Menit EQU 2fH
Detik EQU 30H
Hari Equ 31h
Tanggal Equ 32h
Bulan Equ 33h
Tahun Equ 34h

Jam_subuh Equ 35h
Menit_subuh Equ 36h
Jam_p_subuh Equ 37h
Jam_s_subuh Equ 38h
Menit_p_subuh Equ 39h
Menit_s_subuh Equ 3ah

Jam_dzuhur Equ 3bh
Menit_dzuhur Equ 3ch
Jam_p_dzuhur Equ 3dh
Jam_s_dzuhur Equ 3eh
Menit_p_dzuhur Equ 41h
Menit_s_dzuhur Equ 42h

Jam_ashar Equ 43h
Menit_ashar Equ 44h
Jam_p_ashar Equ 45h
Jam_s_ashar Equ 46h
Menit_p_ashar Equ 47h
Menit_s_ashar Equ 48h

Jam_maghrib Equ 49h
Menit_maghrib Equ 4ah
Jam_p_maghrib Equ 4bh
Jam_s_maghrib Equ 4ch
Menit_p_maghrib Equ 4dh
Menit_s_maghrib Equ 4eh

Jam_isya Equ 4fh
Menit_isya Equ 50h
Jam_p_isya Equ 51h
Jam_s_isya Equ 52h
Menit_p_isya Equ 53h
Menit_s_isya Equ 54h

Del1 equ 70h
Del2 equ 71h
Tmp equ 73h
Dech equ 76h
DecL equ 77h
Almcount equ 78h
Tmp1 equ 7ch
Detik_lama equ 7dh

K_next bit p3.1
K_menu bit p3.0
K_up bit p3.3
K_down bit p3.2
RTC_cs bit p3.5
en_multiplexer bit p3.4
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Memori RTC
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Secon equ 0
Minute equ 2
Hour equ 4
Day_week equ 6
Day_month equ 7
Month equ 8
Year equ 9
Reg_a equ 10
Reg_b equ 11

;**********************************************************
;Program UTAMA
;**********************************************************
Org 0000H
mov TMOD,#01H ; gunakan timer 0 mode 16 bit (0000 0001)
call tunda1detik
mov p1,#0ffh
mov p2,#0ffh
mov p3,#0ffh
call Inisialisasi_rtc
jmp dtk
;**********************************************************
;Tampilkan data RTC
;**********************************************************
Dtk: call sholat_1
call tampil_Waktu_sholat
cek: jb k_menu,dtk
call hapus_tampilan
jmp setting_1

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Tampil waktu sholat
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Tampil_waktu_sholat:
tampil_jam_subuh:
mov r5,#0
jam_w_subuh:
jb k_menu,Lagi_1
call hapus_tampilan
jmp setting_1

Lagi_1: mov a,jam_subuh
mov b,#10
div ab
mov jam_p_subuh,a
mov jam_s_subuh,b
subuh_jam_p:
mov a,jam_p_subuh
call ubah_ke_segmen
mov p2,#01111111B
call ulang_2
subuh_jam_s:
mov a,jam_s_subuh
call ubah_ke_segmen
CLR P2.6
mov p2,#10111111B
call ulang_2

menit_w_subuh:
mov a,menit_subuh
mov b,#10
div ab
mov menit_p_subuh,a
mov menit_s_subuh,b
subuh_menit_p:
mov a,menit_p_subuh
call ubah_ke_segmen
mov p2,#11011111B
call ulang_2
subuh_menit_s:
mov a,menit_s_subuh
call ubah_ke_segmen
CLR P2.6
mov p2,#11101111B
call ulang_2
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_dzuhur:
jam_w_dzuhur:
mov a,jam_dzuhur
mov b,#10
div ab
mov jam_p_dzuhur,a
mov jam_s_dzuhur,b
dzuhur_jam_p:
mov a,jam_p_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_12
call ulang
dzuhur_jam_s:
mov a,jam_s_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_13
call ulang

menit_w_dzuhur:
mov a,menit_dzuhur
mov b,#10
div ab
mov menit_p_dzuhur,a
mov menit_s_dzuhur,b
dzuhur_menit_p:
mov a,menit_p_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_14
call ulang
dzuhur_menit_s:
mov a,menit_s_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_15
call ulang
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_ashar:
jam_w_ashar:
mov a,jam_ashar
mov b,#10
div ab
mov jam_p_ashar,a
mov jam_s_ashar,b
ashar_jam_p:
mov a,jam_p_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_8
call ulang
ashar_jam_s:
mov a,jam_s_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_9
call ulang

menit_w_ashar:
mov a,menit_ashar
mov b,#10
div ab
mov menit_p_ashar,a
mov menit_s_ashar,b
ashar_menit_p:
mov a,menit_p_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_10
call ulang
ashar_menit_s:
mov a,menit_s_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_11
call ulang
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_maghrib:
jam_w_maghrib:
mov a,jam_maghrib
mov b,#10
div ab
mov jam_p_maghrib,a
mov jam_s_maghrib,b
maghrib_jam_p:
mov a,jam_p_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_4
call ulang
maghrib_jam_s:
mov a,jam_s_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_5
call ulang

menit_w_maghrib:
mov a,menit_maghrib
mov b,#10
div ab
mov menit_p_maghrib,a
mov menit_s_maghrib,b
maghrib_menit_p:
mov a,menit_p_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_6
call ulang
maghrib_menit_s:
mov a,menit_s_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_7
call ulang
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_isya:
jam_w_isya:
mov a,jam_isya
mov b,#10
div ab
mov jam_p_isya,a
mov jam_s_isya,b
isya_jam_p:
mov a,jam_p_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_0
call ulang
isya_jam_s:
mov a,jam_s_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_1
call ulang

menit_w_isya:
mov a,menit_isya
mov b,#10
div ab
mov menit_p_isya,a
mov menit_s_isya,b
isya_menit_p:
mov a,menit_p_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_2
call ulang
isya_menit_s:
mov a,menit_s_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_3
call ulang
djnz r5,ulangi_sholat
ret
ulangi_sholat:
jmp jam_w_subuh
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Tampilan utama 7-segmen
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Display:mov r5,#0
tampilkan_waktu:
jb k_menu,T_jam
call hapus_tampilan
jmp setting_1
T_jam:
mov dptr,#hour
call ambil_rtc_jam
T_jam_p:
mov a,jam_p
call ubah_ke_segmen
mov p2,#01111111B
call ulang_2
T_jam_s:
mov a,jam_s
call ubah_ke_segmen
CLR P2.6
mov p2,#10111111B
call ulang_2

T_menit:
mov dptr,#Minute
call ambil_rtc_menit
T_menit_p:
mov a,menit_p
call ubah_ke_segmen
mov p2,#11011111B
call ulang_2
T_menit_s:
mov a,menit_s
call ubah_ke_segmen
CLR P2.6
mov p2,#11101111B
call ulang_2
T_detik:
mov dptr,#secon
call ambil_rtc_detik
T_detik_p:
mov a,detik_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_12
call ulang
T_detik_s:
mov a,detik_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_13
call ulang

Slash_1:
mov p1,#01000000b
clr en_multiplexer
Call Ch_14
call ulang

Slash_2:
mov p1,#01000000b
clr en_multiplexer
Call Ch_15
call ulang

T_hari:
mov dptr,#Day_week
call ambil_rtc_hari
T_hari_p:
mov a,hari_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_8
call ulang
T_hari_s:
mov a,hari_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_9
call ulang

T_tanggal:
mov dptr,#Day_month
call ambil_rtc_tanggal
T_tanggal_p:
mov a,tanggal_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_10
call ulang
T_tanggal_s:
mov a,tanggal_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_11
call ulang

T_bulan:
mov dptr,#month
call ambil_rtc_bulan
T_bulan_p:
mov a,bulan_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_4
call ulang
T_bulan_s:
mov a,bulan_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_5
call ulang

slash_3:
mov p1,#01000000B
clr en_multiplexer
Call Ch_6
call ulang

Slash_4:
mov p1,#01000000B
clr en_multiplexer
Call Ch_7
call ulang
Angka_2:
mov p1,#01011011b
clr en_multiplexer
Call Ch_0
call ulang

Angka_0:
mov p1,#00111111b
clr en_multiplexer
Call Ch_1
call ulang

T_tahun:
mov dptr,#year
call ambil_rtc_tahun
T_tahun_p:
mov a,tahun_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_2
call ulang
T_tahun_s:
mov a,tahun_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_3
call ulang

exit0: djnz r5,ulangi
ret

ulangi: jmp tampilkan_waktu

ubah_ke_segmen:
MOV dptr,#data7segmen
movc a,@a+dptr
mov p1,a
ret
ulang: call delay
setb en_multiplexer
ret
ulang_2:
call delay
mov p2,#0ffh
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Scanning waktu sholat
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Sholat_1:
mov dptr,#month
call ambil_rtcne_bulan
clr a
mov a,bulan
cjne a,#1,sholat_2
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_januari
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_januari
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_januari
movc a,@a+dptr
mov jam_dzuhur,a

mov a,tanggal
mov dptr,#menit_dzuhur_januari
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_januari
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_januari
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_januari
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_januari
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_januari
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_januari
movc a,@a+dptr
mov menit_isya,a
ret

sholat_2:
cjne a,#2,sholat_3
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_februari
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_februari
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_februari
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_februari
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_februari
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_februari
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_februari
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_februari
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_februari
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_februari
movc a,@a+dptr
mov menit_isya,a
ret

sholat_3:
cjne a,#3,sholat_4
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_maret
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_maret
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_maret
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_maret
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_maret
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_maret
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_maret
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_maret
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_maret
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_maret
movc a,@a+dptr
mov menit_isya,a
ret

sholat_4:
cjne a,#4,sholat_5
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_april
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_april
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_april
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_april
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_april
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_april
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_april
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_april
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_april
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_april
movc a,@a+dptr
mov menit_isya,a
ret

sholat_5:
cjne a,#5,sholat_6
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_mei
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_mei
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_mei
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_mei
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_mei
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_mei
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_mei
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_mei
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_mei
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_mei
movc a,@a+dptr
mov menit_isya,a
ret

sholat_6:
cjne a,#6,sholat_7
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_juni
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_juni
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_juni
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_juni
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_juni
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_juni
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_juni
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_juni
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_juni
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_juni
movc a,@a+dptr
mov menit_isya,a
ret

sholat_7:
cjne a,#7,sholat_8
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_juli
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_juli
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_juli
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_juli
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_juli
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_juli
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_juli
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_juli
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_juli
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_juli
movc a,@a+dptr
mov menit_isya,a
ret

sholat_8:
cjne a,#8,sholat_9
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_agustus
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_agustus
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_agustus
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_agustus
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_agustus
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_agustus
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_agustus
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_agustus
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_agustus
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_agustus
movc a,@a+dptr
mov menit_isya,a
ret

sholat_9:
cjne a,#9,sholat_10
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_september
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_september
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_september
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_september
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_september
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_september
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_september
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_september
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_september
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_september
movc a,@a+dptr
mov menit_isya,a
ret

sholat_10:
cjne a,#10,sholat_11
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_oktober
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_oktober
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_oktober
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_oktober
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_oktober
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_oktober
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_oktober
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_oktober
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_oktober
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_oktober
movc a,@a+dptr
mov menit_isya,a
ret
sholat_11:
cjne a,#11,sholat_12
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_november
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_november
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_november
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_november
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_november
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_november
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_november
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_november
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_november
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_november
movc a,@a+dptr
mov menit_isya,a
ret

sholat_12:
cjne a,#12,sholat_13
mov dptr,#day_month
call ambil_rtc_tanggal

mov a,tanggal
mov dptr,#jam_subuh_desember
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_desember
movc a,@a+dptr
mov menit_subuh,a

mov a,tanggal
mov dptr,#jam_dzuhur_desember
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_desember
movc a,@a+dptr
mov menit_dzuhur,a

mov a,tanggal
mov dptr,#jam_ashar_desember
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_desember
movc a,@a+dptr
mov menit_ashar,a

mov a,tanggal
mov dptr,#jam_maghrib_desember
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_desember
movc a,@a+dptr
mov menit_maghrib,a

mov a,tanggal
mov dptr,#jam_isya_desember
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_desember
movc a,@a+dptr
mov menit_isya,a
sholat_13:
ret

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Display Setting
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
disp_set_jam:
mov r5,#5
Set_jam:
mov dptr,#hour
call ambil_rtc_jam
Set_jam_p:
mov a,jam_p
call ubah_ke_segmen
mov p2,#01111111B
call ulang_2
Set_jam_s:
mov a,jam_s
call ubah_ke_segmen
CLR P2.7
mov p2,#10111111B
call ulang_2
djnz r5,set_jam
ret

disp_set_menit:
mov r5,#5
Set_menit:
mov dptr,#minute
call ambil_rtc_menit
Set_menit_p:
mov a,menit_p
call ubah_ke_segmen
mov p2,#11011111B
call ulang_2
Set_menit_s:
mov a,menit_s
call ubah_ke_segmen
CLR P2.5
mov p2,#11101111B
call ulang_2
djnz r5,set_menit
ret

disp_set_hari:
mov r5,#5
Set_hari:
mov dptr,#Day_week
call ambil_rtc_hari
set_hari_p:
mov a,hari_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_8
call ulang
set_hari_s:
mov a,hari_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_9
call ulang
ret

disp_set_tanggal:
mov r5,#5
Set_tanggal:
mov dptr,#Day_month
call ambil_rtc_tanggal
set_tanggal_p:
mov a,tanggal_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_10
call ulang
set_tanggal_s:
mov a,tanggal_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_11
call ulang
ret

disp_set_bulan:
mov r5,#5
Set_bulan:
mov dptr,#month
call ambil_rtc_bulan
set_bulan_p:
mov a,bulan_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_4
call ulang
set_bulan_s:
mov a,bulan_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_5
call ulang
ret

disp_set_tahun:
mov r5,#5
Set_tahun:
mov dptr,#year
call ambil_rtc_tahun
set_tahun_p:
mov a,tahun_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_2
call ulang
set_tahun_s:
mov a,tahun_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_3
call ulang
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Settingan tombol jam dan kalender
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_1:
mov almcount,#0
mov dptr,#hour
mov tmp1,#50
bounce_1a:
jnb k_menu,$
djnz tmp1,bounce_1a
Setting_1a:
call disp_set_jam
cekset_1a:
jb k_next,cekset_2a
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_2
cekset_2a:
jb k_up,cekset_3a
mov p1,#00h
call up_jam
jmp setting_1a
cekset_3a:
jb k_down,cekset_4a
mov p1,#00h
call down_jam
jmp setting_1a
cekset_4a:
mov tmp1,#0
bounce_1b:
jb k_next,setting_1a
djnz tmp1,bounce_1b
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_2:
jnb k_next,$
mov dptr,#minute
Setting_2a:
call disp_set_menit
cekset_1b:
jb k_next,cekset_2b
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_3
cekset_2b:
jb k_up,cekset_3b
mov p1,#00h
call up_menit
jmp setting_2a
cekset_3b:
jb k_down,setting_2a
mov p1,#00h
call down_menit
jmp setting_2a

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_3:
jnb k_next,$
mov dptr,#day_week
Setting_3a:
call disp_set_hari
cekset_1c:
jb k_next,cekset_2c
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_4
cekset_2c:
jb k_up,cekset_3c
mov p1,#00h
call up_day
jmp setting_3a
cekset_3c:
jb k_down,setting_3a
mov p1,#00h
call down_day
jmp setting_3a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_4:
jnb k_next,$
mov dptr,#day_month
Setting_4a:
call disp_set_tanggal
cekset_1d:
jb k_next,cekset_2d
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_5
cekset_2d:
jb k_up,cekset_3d
mov p1,#00h
call up_day_month
jmp setting_4a
cekset_3d:
jb k_down,setting_4a
mov p1,#00h
call down_day_month
jmp setting_4a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_5:
jnb k_next,$
mov dptr,#month
Setting_5a:
call disp_set_bulan
cekset_1e:
jb k_next,cekset_2e
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_6
cekset_2e:
jb k_up,cekset_3e
mov p1,#00h
call up_month
jmp setting_5a
cekset_3e:
jb k_down,setting_5a
mov p1,#00h
call down_month
jmp setting_5a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_6:
jnb k_next,$
mov dptr,#year
Setting_6a:
call disp_set_tahun
cekset_1f:
jb k_next,cekset_2f
inc almcount
jnb k_next,$
call hapus_tampilan
jmp dtk
cekset_2f:
jb k_up,cekset_3f
mov p1,#00h
call up_year
jmp setting_6a
cekset_3f:
jb k_down,setting_6a
mov p1,#00h
call down_year
jmp setting_6a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; inisialisasi RTC
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Inisialisasi_rtc:
clr rtc_cs
; reg a = UIP DV2 DV1 DV0 RS3 RS2 RS1 RS0
; REG B = SET PIE AIE UIE SQWE DM 24/12 DSE
mov r0,#reg_a
mov a,#00101111b
movx @r0,a
inc r0
mov a,#00001110b
movx @r0,a
clr a
setb rtc_cs
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Ambil data rtc dan tulis ke lcd
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Ambil_data_rtc:
clr rtc_cs
movx a,@dptr
setb rtc_cs
mov decl,a
call hextodec
mov tmp,a
swap a
anl a,#0fh
orl a,#30h
;call write_data
mov a,tmp
anl a,#0fh
orl a,#30h
;call write_data
ret

Ambil_rtc_desimal:
clr rtc_cs
movx a,@dptr
setb rtc_cs
mov decl,a
call hextodec
mov tmp,a
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Baca rtc up rtc down dan tulis rtc
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Baca_rtc_up_jam:
mov r7,#25
Bounce_up_jam:
jb k_up,exit_jam
djnz r7,bounce_up_jam
baca_up_jam:
mov dptr,#hour
call baca_rtc_up
exit_jam:
ret
Baca_rtc_down_jam:
mov r7,#25
baca_down_jam:
jb k_down,exit_jam
djnz r7,baca_down_jam
mov dptr,#hour
call baca_rtc_down
ret

Baca_rtc_up_menit:
mov r7,#25
Bounce_up_menit:
jb k_up,exit_menit
djnz r7,bounce_up_menit
baca_up_menit:
mov dptr,#minute
call baca_rtc_up
exit_menit:
ret
Baca_rtc_down_menit:
mov r7,#25
baca_down_menit:
jb k_down,exit_menit
djnz r7,baca_down_menit
mov dptr,#minute
call baca_rtc_down
ret

Baca_rtc_up_hari:
mov r7,#25
Bounce_up_hari:
jb k_up,exit_hari
djnz r7,bounce_up_hari
baca_up_hari:
mov dptr,#day_week
call baca_rtc_up
exit_hari:
ret
Baca_rtc_down_hari:
mov r7,#25
baca_down_hari:
jb k_down,exit_hari
djnz r7,baca_down_hari
mov dptr,#day_week
call baca_rtc_down
ret

Baca_rtc_up_tanggal:
mov r7,#25
Bounce_up_tanggal:
jb k_up,exit_tanggal
djnz r7,bounce_up_tanggal
baca_up_tanggal:
mov dptr,#day_month
call baca_rtc_up
exit_tanggal:
ret
Baca_rtc_down_tanggal:
mov r7,#25
baca_down_tanggal:
jb k_down,exit_tanggal
djnz r7,baca_down_tanggal
mov dptr,#day_month
call baca_rtc_down
ret

Baca_rtc_up_bulan:
mov r7,#25
Bounce_up_bulan:
jb k_up,exit_bulan
djnz r7,bounce_up_bulan
baca_up_bulan:
mov dptr,#month
call baca_rtc_up
ret
Baca_rtc_down_bulan:
mov r7,#25
baca_down_bulan:
jb k_down,exit_bulan
djnz r7,baca_down_bulan
mov dptr,#month
call baca_rtc_down
exit_bulan:
ret

Baca_rtc_up_tahun:
mov r7,#25
Bounce_up_tahun:
jb k_up,exit_tahun
djnz r7,bounce_up_tahun
baca_up_tahun:
mov dptr,#year
clr rtc_cs
movx a,@dptr
setb rtc_cs
inc a
exit_tahun:
ret

Baca_rtc_down_tahun:
mov r7,#25
baca_down_tahun:
jb k_down,exit_tahun
djnz r7,baca_down_tahun
mov dptr,#year
call baca_rtc_down
ret

baca_rtc_up:
clr rtc_cs
movx a,@dptr
setb rtc_cs
inc a
ret

baca_rtc_down:
clr rtc_cs
movx a,@dptr
setb rtc_cs
dec a
ret

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; tulis rtc
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Tulis_rtcne_jam:
mov dptr,#hour
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_menit:
mov dptr,#minute
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_hari:
mov dptr,#day_week
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_tanggal:
mov dptr,#day_month
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_bulan:
mov dptr,#month
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_tahun:
mov dptr,#year
call tulis_rtc
jmp Tunggu_tombol_dilepas

Tunggu_tombol_dilepas:
ca: mov r7,#25
cc: jnb k_up,ca
jnb k_down,ca
djnz r7,cc
exit: ret

tulis_rtc:
clr rtc_cs
movx @dptr,a
setb rtc_cs
ret

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi menit
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_menit:
call baca_rtc_up_menit
cjne a,#59,cek_59
cek_59:
jc belum_59
clr a
belum_59:
jmp tulis_rtcne_menit

Down_menit:
call baca_rtc_down_menit
cjne a,#0ffh,m_255
mov a,#59
m_255:
jmp tulis_rtcne_menit
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi jam
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_jam:
call baca_rtc_up_jam
cjne a,#24,cek_24
cek_24:
jc belum_24
clr a
belum_24:
jmp Tulis_rtcne_jam

Down_jam:
call baca_rtc_down_jam
cjne a,#0ffh,j_255
mov a,#23
j_255:
jmp Tulis_rtcne_jam
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi hari dlm seminggu
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_day:
call baca_rtc_up_hari
cjne a,#8,cek_7
cek_7:
jc belum_7
clr a
inc a
belum_7:
jmp tulis_rtcne_hari

Down_day:
call baca_rtc_down_hari
jnz bukan_0_day
mov a,#7
bukan_0_day:
jmp tulis_rtcne_hari
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi hari dlm sebulan
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_day_month:
call baca_rtc_up_tanggal
cjne a,#32,cek_31
cek_31:
jc belum_31
clr a
inc a
belum_31:
jmp tulis_rtcne_tanggal

Down_day_month:
call baca_rtc_down_tanggal
jnz bukan_0_daymonth
mov a,#31
bukan_0_daymonth:
jmp tulis_rtcne_tanggal
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi bulan
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_month:
call baca_rtc_up_bulan
cjne a,#13,cek_12
cek_12:
jc belum_12
clr a
inc a
belum_12:
jmp tulis_rtcne_bulan

Down_month:
call baca_rtc_down_bulan
jnz bukan_0_month
mov a,#12
bukan_0_month:
jmp tulis_rtcne_bulan
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi tahun
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_year:
call baca_rtc_up_tahun
cjne a,#100,cek_99
cek_99:
jc belum_99
clr a
belum_99:
jmp tulis_rtcne_tahun

Down_year:
call baca_rtc_down_tahun
cjne a,#0ffh,y_255
mov a,#99
y_255:
jmp tulis_rtcne_tahun
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; konversi heksa ke desimal
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
hextodec:
mov psw,#0
clr c
mov dech,#0
mov a,decl
swap a
anl a,#0fh ;00001111
mov tmp,a
jz sudah_ditambah
clr a
tambah_16:
add a,#16h ;22 d
da a
mov r2,a
clr a
addc a,dech
mov dech,a
mov a,r2
djnz tmp,tambah_16
sudah_ditambah:
mov tmp,a
mov a,decl
anl a,#0fh
da a
add a,tmp
da a
mov decl,a
; desimal hanya di bawah 100
ret
;**********************************************************
;Program BINER KE DESIMAL
;**********************************************************
ambil_rtc_detik:
call ambil
mov detik,a
call ambil_lagi
MOV detik_p,A
MOV detik_s,B
RET
ambil_rtc_menit:
call ambil
mov menit,a
call ambil_lagi
MOV menit_p,A
MOV menit_s,B
RET
ambil_rtc_jam:
call ambil
mov jam,a
call ambil_lagi
MOV jam_p,A
MOV jam_s,B
RET
ambil_rtc_hari:
call ambil
mov hari,a
call ambil_lagi
MOV hari_p,A
MOV hari_s,B
RET
ambil_rtc_tanggal:
call ambil
mov tanggal,a
call ambil_lagi
MOV tanggal_p,A
MOV tanggal_s,B
RET
ambil_rtc_bulan:
call ambil
mov bulan,a
call ambil_lagi
MOV bulan_p,A
MOV bulan_s,B
RET
ambil_rtcne_bulan:
call ambil
mov bulan,a
ret
ambil_rtc_tahun:
call ambil
mov tahun,a
call ambil_lagi
MOV tahun_p,A
MOV tahun_s,B
RET

ambil: clr rtc_cs
movx a,@dptr
setb rtc_cs
ret
ambil_lagi:
mov b,#100
div ab
mov a,b
mov b,#10
div ab
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Channel Multiplexer
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Ch_0: clr en_multiplexer
mov P2,#11110000B
ret
Ch_1: clr en_multiplexer
mov P2,#11110001B
ret
Ch_2: clr en_multiplexer
mov P2,#11110010B
ret
Ch_3: clr en_multiplexer
mov P2,#11110011B
ret
Ch_4: clr en_multiplexer
mov P2,#11110100B
ret
Ch_5: clr en_multiplexer
mov P2,#11110101B
ret
Ch_6: clr en_multiplexer
mov P2,#11110110B
ret
Ch_7: clr en_multiplexer
mov P2,#11110111B
ret
Ch_8: clr en_multiplexer
mov P2,#11111000B
ret
Ch_9: clr en_multiplexer
mov P2,#11111001B
ret
Ch_10: clr en_multiplexer
mov P2,#11111010B
ret
Ch_11: clr en_multiplexer
mov P2,#11111011B
ret
Ch_12: clr en_multiplexer
mov P2,#11111100B
ret
Ch_13: clr en_multiplexer
mov P2,#11111101B
ret
Ch_14: clr en_multiplexer
mov P2,#11111110B
ret
Ch_15: clr en_multiplexer
mov P2,#11111111B
ret

hapus_tampilan:
mov p2,#0ffh
mov p1,#00h
setb en_multiplexer
call delay
ret
;**********************************************************
;Program WAKTU TUNDA
;**********************************************************
delay: mov R0,#100
delay1: mov R2,#5
djnz R2,$
djnz R0,delay1
ret
tunda1detik:
mov R7,#ratusan
lagi: mov TH0,#high cacah
mov TL0,#low cacah
setb TR0
jnb TF0,$
clr TF0
clr TR0
djnz R7,lagi
ret
;**********************************************************
;Data 7-segmen
;**********************************************************
data7segmen:
db 00111111b
db 00000110b
db 01011011b
db 01001111b
db 01100110b
db 01101101b
db 01111101b
db 00000111b
db 01111111b
db 01101111b
;**********************************************************
;Data Waktu Sholat Januari wis
;**********************************************************
Jam_subuh_januari:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_januari:
db 00,09,10,10,11,11,11,12,13,14,14
db 15,15,15,17,17,18,18,19,20,20
db 21,21,22,22,23,23,23,24,25,25
db 26
Jam_dzuhur_januari:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_januari:
db 00,42,43,43,44,44,44,45,46,46,46
db 47,47,47,48,48,49,49,49,50,50
db 50,51,51,51,51,52,52,52,52,52
db 52
Jam_ashar_januari:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_januari:
db 00,09,10,10,10,10,11,11,11,12,12
db 12,12,12,13,13,13,13,13,13,13
db 13,13,13,13,13,13,13,13,12,12
db 12
Jam_maghrib_januari:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_maghrib_januari:
db 00,00,00,00,01,01,01,02,02,02,03
db 03,03,03,04,04,04,05,05,05,05
db 05,05,05,06,06,06,06,06,06,06
db 06
Jam_isya_januari:
db 00,19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19
Menit_isya_januari:
db 00,11,12,12,12,12,13,13,14,14,14
db 14,14,14,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
;**********************************************************
;Data Waktu Sholat Februari wis
;**********************************************************
Jam_subuh_februari:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04
Menit_subuh_februari:
db 00,26,27,27,27,28,28,29,29,29,30
db 30,30,31,31,31,31,32,32,32,32
db 33,33,33,33,33,33,34,34
Jam_dzuhur_februari:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11
Menit_dzuhur_februari:
db 00,53,53,53,54,53,53,53,53,53,53
db 53,53,53,54,53,53,53,53,53,53
db 53,52,52,52,52,52,52,52
Jam_ashar_februari:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,14,14,14,14,14,14,14
Menit_ashar_februari:
db 00,11,11,11,11,10,10,09,09,08,08
db 08,07,06,05,05,04,03,03,02,01
db 00,59,58,57,56,56,54,53
Jam_maghrib_februari:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,17
Menit_maghrib_februari:
db 00,06,06,06,06,05,05,05,05,05,05
db 05,04,04,04,04,03,03,03,03,02
db 02,02,01,01,01,01,00,59
Jam_isya_februari:
db 00,19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19
Menit_isya_februari:
db 00,15,14,14,14,14,14,13,13,13,13
db 13,12,12,11,11,11,10,10,10,09
db 09,08,08,07,07,07,06,05
;**********************************************************
;Data Waktu Sholat maret wis
;**********************************************************
Jam_subuh_maret:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_maret:
db 00,34,34,34,34,34,34,34,34,34,34
db 34,34,34,34,34,34,34,34,34,34
db 34,34,34,34,34,33,33,33,33,33
db 33
Jam_dzuhur_maret:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_maret:
db 00,51,51,51,51,51,50,50,50,50,49
db 49,49,49,48,48,48,48,47,47,47
db 46,46,46,45,45,45,45,45,44,44
db 43
Jam_ashar_maret:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_maret:
db 00,54,54,55,55,55,56,56,57,57,57
db 58,58,58,58,59,59,59,59,59,59
db 00,00,00,00,00,00,00,00,00,00
db 00
Jam_maghrib_maret:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_maret:
db 00,59,59,58,58,58,57,56,56,55,55
db 54,54,54,53,53,52,52,51,50,50
db 49,49,48,48,47,47,47,46,45,45
db 44
Jam_isya_maret:
db 00,19,19,19,19,19,19,19,19,19,19
db 19,19,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_maret:
db 00,05,05,04,04,04,03,02,02,01,01
db 00,00,59,58,58,57,57,56,56,56
db 55,54,54,53,53,52,52,52,51,50
db 50
;**********************************************************
;Data Waktu Sholat april wis
;**********************************************************
Jam_subuh_april:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
Menit_subuh_april:
db 00,33,33,33,33,32,32,32,32,32,32
db 32,31,31,31,31,31,31,31,31,31
db 30,30,30,30,30,30,30,30,30,30
Jam_dzuhur_april:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_april:
db 00,43,43,43,42,42,42,41,41,41,40
db 40,40,40,39,39,39,39,39,38,38
db 38,38,37,37,37,37,37,37,36,36
Jam_ashar_april:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
Menit_ashar_april:
db 00,00,00,00,00,00,00,00,00,00,00
db 00,59,59,59,59,59,59,59,59,59
db 59,58,58,58,58,58,58,58,58,58
Jam_maghrib_april:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_april:
db 00,44,43,43,43,42,41,41,40,40,39
db 39,38,38,38,37,37,36,36,36,35
db 35,34,34,33,33,33,32,32,32,31
Jam_isya_april:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_april:
db 00,49,49,49,48,47,47,46,46,46,45
db 45,44,44,44,43,43,42,42,42,41
db 41,41,40,40,40,40,39,39,39,39
;**********************************************************
;Data Waktu Sholat mei wis
;**********************************************************
Jam_subuh_mei:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_mei:
db 00,30,30,30,30,30,30,30,30,30,30
db 30,30,30,30,30,30,30,30,30,30
db 30,30,30,30,30,31,31,31,31,31
db 31
Jam_dzuhur_mei:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_mei:
db 00,36,36,36,36,36,36,36,36,35,35
db 35,35,35,35,35,35,35,35,35,36
db 36,36,36,36,36,36,36,36,36,37
db 37
Jam_ashar_mei:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14
Menit_ashar_mei:
db 00,58,57,57,57,57,57,57,57,57,57
db 57,57,57,57,57,57,57,57,57,57
db 57,57,57,57,57,57,57,57,57,58
db 58
Jam_maghrib_mei:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_mei:
db 00,31,31,31,30,30,30,30,29,29,29
db 29,29,28,28,28,28,28,28,28,28
db 28,28,28,28,28,28,28,28,28,28
db 28
Jam_isya_mei:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_mei:
db 00,38,38,38,38,38,38,37,37,37,37
db 37,37,37,37,37,37,37,37,37,37
db 37,37,37,37,37,37,37,37,37,38
db 38
;**********************************************************
;Data Waktu Sholat juni wis
;**********************************************************
Jam_subuh_juni:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
Menit_subuh_juni:
db 00,31,32,32,32,32,32,33,33,33,33
db 33,34,34,34,34,34,35,35,35,35
db 36,36,36,36,36,37,37,37,37,37
Jam_dzuhur_juni:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_juni:
db 00,37,37,37,37,37,38,38,38,38,38
db 39,39,39,39,39,39,40,40,40,41
db 41,41,41,41,42,42,42,42,42,43
Jam_ashar_juni:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
Menit_ashar_juni:
db 00,58,58,58,58,58,58,59,59,59,59
db 59,00,00,00,00,00,01,01,01,01
db 01,02,02,02,02,02,03,03,03,03
Jam_maghrib_juni:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_juni:
db 00,28,28,28,28,28,28,28,28,28,29
db 29,29,29,29,30,30,30,30,30,31
db 31,31,31,31,32,32,32,32,33,33
Jam_isya_juni:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_juni:
db 00,38,38,38,38,38,39,39,39,39,39
db 39,40,40,40,40,40,41,41,41,41
db 42,42,42,42,42,43,43,43,43,43
;**********************************************************
;Data Waktu Sholat juli wis
;**********************************************************
Jam_subuh_juli:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_juli:
db 00,37,38,38,38,38,39,39,39,39,39
db 39,39,39,40,40,40,40,40,40,40
db 40,40,40,40,40,40,40,40,40,40
db 40
Jam_dzuhur_juli:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_juli:
db 00,43,43,43,43,44,44,44,44,44,44
db 45,45,45,45,45,45,45,45,45,45
db 45,45,45,46,46,46,46,46,46,46
db 45
Jam_ashar_juli:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_juli:
db 00,03,04,04,04,04,05,05,05,05,05
db 05,06,06,06,06,06,06,06,07,07
db 07,07,07,07,70,07,07,07,07,07
db 07
Jam_maghrib_juli:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_juli:
db 00,33,33,34,34,34,34,35,35,35,35
db 35,36,36,36,36,36,37,37,37,37
db 37,38,38,38,38,38,38,38,38,38
db 39
Jam_isya_juli:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_juli:
db 00,43,44,44,44,44,45,45,45,45,45
db 45,46,46,46,46,46,46,46,46,47
db 47,47,47,47,47,47,47,47,47,47
db 47
;**********************************************************
;Data Waktu Sholat agustus wis
;**********************************************************
Jam_subuh_agustus:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_agustus:
db 00,40,39,39,39,39,39,39,38,38,38
db 38,38,37,37,37,37,36,36,36,35
db 35,35,34,34,33,33,33,32,32,31
db 31
Jam_dzuhur_agustus:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_agustus:
db 00,45,45,45,45,45,45,45,45,45,44
db 44,44,44,44,44,43,43,43,43,43
db 43,42,42,42,41,41,41,40,40,40
db 39
Jam_ashar_agustus:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,14
db 14
Menit_ashar_agustus:
db 00,07,07,07,07,07,07,06,06,06,06
db 06,05,05,05,05,05,04,04,04,03
db 03,03,02,02,02,01,01,00,00,59
db 59
Jam_maghrib_agustus:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_agustus:
db 00,39,39,39,39,39,39,39,39,39,39
db 39,39,39,39,39,39,39,39,39,39
db 39,39,39,39,39,39,38,38,38,38
db 38
Jam_isya_agustus:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_agustus:
db 00,47,47,47,47,47,47,47,47,47,47
db 47,47,46,46,46,46,46,46,46,46
db 46,46,45,45,45,45,45,45,45,44
db 44
;**********************************************************
;Data Waktu Sholat september wis
;**********************************************************
Jam_subuh_september:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
Menit_subuh_september:
db 00,30,30,29,29,29,28,28,27,26,26
db 25,25,25,24,23,23,22,22,21,21
db 20,19,19,18,18,17,17,16,15,15
Jam_dzuhur_september:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_september:
db 00,39,39,39,38,38,38,37,37,37,36
db 36,36,35,35,34,34,34,33,33,33
db 32,32,32,31,31,31,31,30,29,29
Jam_ashar_september:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
Menit_ashar_september:
db 00,58,58,57,57,57,56,55,54,54,53
db 53,53,52,51,50,49,49,48,47,47
db 46,45,44,43,43,42,42,40,39,38
Jam_maghrib_september:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_september:
db 00,38,38,38,38,38,37,37,37,37,37
db 37,37,36,36,36,36,36,36,35,35
db 35,35,35,35,35,34,34,34,34,34
Jam_isya_september:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_september:
db 00,44,44,44,43,43,43,43,43,42,42
db 42,42,42,42,41,41,41,41,41,41
db 41,40,40,40,40,40,40,40,40,40
;**********************************************************
;Data Waktu Sholat oktober wis
;**********************************************************
Jam_subuh_oktober:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 03
Menit_subuh_oktober:
db 00,14,14,13,13,12,11,11,10,10,09
db 08,08,07,07,06,06,05,05,05,04
db 03,03,02,02,02,02,01,00,00,00
db 59
Jam_dzuhur_oktober:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_oktober:
db 00,43,43,43,42,42,42,41,41,41,40
db 40,40,40,39,39,39,39,39,38,38
db 38,38,37,37,37,37,37,37,36,36
db 23
Jam_ashar_oktober:
db 00,14,14,14,14,14,14,14,14,14,14
db 15,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14
Menit_ashar_oktober:
db 00,38,37,36,36,35,33,32,31,31,30
db 29,29,27,28,29,29,30,30,30,31
db 32,32,33,33,34,34,35,36,36,37
db 37
Jam_maghrib_oktober:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_oktober:
db 00,34,34,34,34,34,33,33,33,33,33
db 33,33,33,33,33,33,33,33,33,33
db 33,33,33,33,33,33,33,34,34,34
db 34
Jam_isya_oktober:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_oktober:
db 00,40,39,39,39,39,39,39,39,39,39
db 39,39,39,39,39,39,40,40,40,40
db 40,40,40,40,41,41,41,41,41,42
db 42
;**********************************************************
;Data Waktu Sholat november wis
;**********************************************************
Jam_subuh_november:
db 00,03,03,03,03,03,03,03,03,03,03
db 03,03,03,03,03,03,03,03,03,03
db 03,03,03,03,03,03,03,03,03,03
Menit_subuh_november:
db 00,59,58,58,58,58,57,57,57,57,57
db 56,56,56,56,55,55,55,55,55,55
db 55,55,55,55,55,55,55,55,56,56
Jam_dzuhur_november:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_november:
db 00,23,23,23,23,23,23,23,23,23,23
db 23,23,23,23,24,24,24,24,24,25
db 25,25,25,26,26,26,27,27,27,28
Jam_ashar_november:
db 00,14,14,14,14,14,14,14,14,14,14
db 15,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
Menit_ashar_november:
db 00,38,38,38,39,40,40,41,41,42,42
db 42,43,44,44,45,45,46,46,47,47
db 48,48,49,50,50,51,51,52,52,53
Jam_maghrib_november:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_november:
db 00,34,34,34,35,35,35,35,36,36,36
db 36,37,37,37,38,38,38,38,39,39
db 40,40,41,41,41,42,42,43,43,44
Jam_isya_november:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_november:
db 00,42,43,43,43,43,44,44,45,45,45
db 45,46,46,47,47,48,48,48,49,50
db 50,51,51,52,52,53,53,54,54,55
;**********************************************************
;Data Waktu Sholat desember wis Alhamdulillah
;**********************************************************
Jam_subuh_desember:
db 00,03,03,03,03,03,03,03,03,03,03
db 03,03,03,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_desember:
db 00,56,56,56,56,57,57,57,58,58,58
db 59,59,59,00,00,00,00,01,02,02
db 03,03,04,04,04,05,06,06,07,08
db 08
Jam_dzuhur_desember:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_desember:
db 00,28,28,28,29,29,30,30,31,31,31
db 32,33,33,34,34,34,34,35,36,36
db 37,37,38,38,38,39,40,40,41,41
db 42
Jam_ashar_desember:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_desember:
db 00,53,53,54,55,56,56,57,57,58,58
db 59,00,00,01,01,02,02,03,03,04
db 04,05,05,05,06,07,07,08,08,08
db 09
Jam_maghrib_desember:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_desember:
db 00,44,44,45,46,46,47,47,48,48,48
db 49,50,50,51,51,52,52,53,53,54
db 54,55,55,55,56,57,57,58,58,59
db 59
Jam_isya_desember:
db 00,18,18,18,18,18,18,18,18,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19
Menit_isya_desember:
db 00,55,55,56,57,58,58,59,59,00,00
db 01,02,02,03,03,04,04,05,06,06
db 07,07,07,07,08,09,09,10,10,11
db 11
end

2 thoughts on “PENAMPIL WAKTU SHOLAT

  1. Anda sedeqahkan ilmu yang bermanfa’at didunia dan akhirah, semoga Allah SWT menambah ilmu anda tersebut dan membalas kebaikan anda dengan kebaikan yang berlipat ganda. Amin…

Berikan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s