MICROCONTROLLER
Oleh :
Nama : HARRY SETYO WICAKSONO
NIM : 01.41020.0054
Program : S1 (Strata Satu)
Jurusan : Sistem Komputer
SEKOLAH TINGGI
MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA
ABSTRAKSI ... vi
KATA PENGANTAR ... vii
DAFTAR ISI ... ix
DAFTAR TABEL ... xiii
DAFTAR GAMBAR ... xiv
DAFTAR ISTILAH DAN SINGKATAN ... xvi
DAFTAR LAMPIRAN ... xix
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang Masalah ... 1
1.2. Perumusan Masalah ... 2
1.3. Pembatasan Masalah ... 2
1.4. Tujuan ... 3
1.5. Kontribusi ... 3
1.6. Sistematika Penulisan ... 4
1.6.1. Bab I Pendahuluan ... 4
1.6.2. Bab II Landasan Teori ... 4
1.6.3. Bab III Metode Penelitian ... 5
1.6.4. Bab IV Pengujian dan Evaluasi Sistem ... 5
1.6.5. Bab V Penutup ... 5
BAB II LANDASAN TEORI ... 6
2.1. Kalender ……… .. 6
2.1.1. Kalender Masehi ... 8
2.1.2. Kalender Hijriyah ... 11
A. Metode Penelitian Awal Bulan dalam Kalender Hijriyah ... 12
A.1. Rukhyatul Hilal ... 12
A.2. Hisab ... 12
A.2.1. Hisab Urfi ... 13
A.2.2. Hisab Haqiqi ... 14
2.1.3. Kalender Jawa ... 15
2.1.4. Kalender China... 17
2.2. Mikrokontroler MCS 51 ... 18
2.2.1. Keterangan pin-pin AT89S52 ... 19
2.2.2. Clock generator dan Timer ... 22
2.2.3. Struktur Memori ... 24
A. RAM Internal ... 24
B. SFR (Special Function Register) ... 25
C. Flash PEROM ... 26
D. EEPROM ... 26
2.3. Komunikasi Serial RS232 ... 27
2.4. Serial RTC (Real Time Clock) DS1307 ... 29
2.4.1. Komunikasi Serial I2C (Inter Integrated Circiut) .... 30
2.5. 8-Bit Shift Register ... 32
2.6. Transistor ... 34
2.7. Octal Data Latch ... 36
2.8. LED dot matrix ... 38
BAB III METODE PENELITIAN ... 41
3.1. Perancangan Perangkat Keras ... 42
3.1.1. Rangkaian Minimum Sistem AT89S52 ... 42
A. Rangkaian Programmer ... 44
3.1.2. Rangkaian Komunikasi Serial RS232 ... 45
3.1.3. Serial RTC DS1307 ... 47
3.1.4. Rangkaian Driver Basis (TIP42) ... 47
3.1.5. Rangkaian Shift Register 74LS164 ... 49
3.1.6. Rangkaian Display Dot Matrix ... 50
3.2. Perancangan Perangkat Lunak ... 51
3.2.1. Perangkat Lunak pada Komputer ... 51
A. Proses Penentuan Hari ... 52
B. Proses Konversi Kalender ... 53
3.2.2. Perangkat Lunak pada Mikrokontroler ... 55
A. Proses Scanning Baris ... 56
B. Proses Update Waktu ... 59
C. Proses Serial Interrupt ... 60
BAB IV PENGUJIAN DAN EVALUASI SISTEM ... 62
4.1. Pengujian Perangkat Lunak... 62
4.1.1. Pengujian Penentuan Hari ... 62
A. Tujuan... 62
B. Perangkat yang dibutuhkan ... 62
C. Prosedur Pengujian ... 63
D. Hasil Pengujian ... 63
4.1.2. Pengujian Konversi Kalender ... 64
A. Tujuan ... 64
B. Perangkat yang dibutuhkan ... 64
C. Prosedur Pengujian ... 64
D. Hasil Pengujian ... 65
4.2. Pengujian Perangkat Keras ... 65
4.2.1. Pengujian Pengiriman Data ... 66
A. Tujuan ... 66
B. Alat yang digunakan ... 66
C. Prosedur Pengujian ... 66
D. Hasil Pengujian ... 66
BAB V PENUTUP ... 69
5.1. Kesimpulan ... 69
5.2. Saran ... 69
DAFTAR PUSTAKA ... 70
LAMPIRAN ... 74
BAB I PENDAHULUAN
1.1 Latar Belakang Masalah
Hampir semua aktivitas manusia dalam kehidupan sehari-hari tidak pernah
terlepas dari lingkaran waktu. Setiap aktivitas individu dengan individu yang lain
dalam merencanakan dan menyelesaikan suatu pekerjaan baik secara informal
maupun formal akan selalu diukur dengan satuan waktu tertentu. Masing-masing
memiliki pengaturan dan jadwal berbeda-beda serta tujuan maupun alasan
tertentu. Perbedaan ini tentu dapat menjadi kendala seandainya dibutuhkan suatu
interaksi atau kerjasama antara individu satu dengan lainnya atau antar instansi
yang memiliki pedoman waktu yang berlainan. Untuk meminimalkan
kesalahpahaman dan menyelaraskan perbedaan penunjuk waktu yang ada,
dibutuhkan sebuah pedoman yang digunakan oleh masyarakat umum.
Salah satu permasalahan yang membutuhkan pedoman diantaranya adalah
sistem penanggalan. Seperti diketahui, sistem penanggalan atau seringkali disebut
dengan kalender yang digunakan di masyarakat acapkali menggunakan pedoman
yang berlainan antara satu dengan lainnya. Seperti misal, masyarakat Arab
berpedoman pada kalender Hijriah, masyarakat Eropa umumnya menggunakan
kalender Masehi dan masyarakat Cina menggunakan kalender Cina dalam
melakukan aktivitasnya. Untuk mengatasi semua perbedaan ini tentu diperlukan
kesamaan persepsi maupun kesepakatan yang disetujui bersama, sehingga tidak
Guna menghindari dan meminimalkan kesalahan diperlukan perhitungan
berdasarkan parameter dari masing-masing sistem penanggalan yang memiliki
acuan berbeda-beda. Namun tentunya tidak semua orang mengetahui cara
perhitungan kalender ini, dan juga sedikitnya kalender yang beredar di masyarakat
memuat berbagai macam sistem penanggalan.
Dalam tugas akhir ini memunculkan suatu ide pembuatan kalender digital
berbasis microcontroller dengan menggunakan display dot matrix yang dapat
menampilkan keseluruhan sistem penanggalan. Dengan adanya Tugas akhir ini
diharapkan dapat membantu masyarakat luas dalam memberikan informasi
kalender yang diinginkan secara lengkap.
1.2 Perumusan Masalah
Berkaitan dengan latar belakang diatas maka dibuat rumusan masalah
seperti berikut :
1. Perancangan dan pembuatan kalender digital berdasarkan 4 sistem
penanggalan dengan menggunakan mikrokontroler.
2. Penggunaan algoritma yang tepat dalam penentuan hari, tanggal, bulan dan
tahun.
3. Perhitungan untuk konversi kalender.
1.3 Pembatasan Masalah
Perlu diberikan beberapa batasan masalah dengan tujuan agar pembahasan
tidak meluas dan menyimpang dari tujuan, adapun batasan masalah dari sistem
yang akan dibuat antara lain :
2. Kalender menyediakan 4 macam sistem penanggalan, yaitu : Arab, Cina,
Masehi dan Jawa.
3. Sistem penanggalan yang dijadikan dasar acuan adalah kalender Masehi
4. Kalender Arab, Jawa, dan Cina pada display dot matriks berupa running text.
5. Perhitungan tahun kabisat hanya digunakan pada kalender Masehi, Kalender
Jawa, dan kalender Hijriyah.
1.4 Tujuan
Sistem yang akan dibuat dalam tugas akhir ini bertujuan untuk :
1. Menerapkan algoritma yang tepat dalam perhitungan kalender.
2. Membuat kalender digital berdasarkan 4 sistem penanggalan dengan
menggunakan mikrokontroler.
3. Membuat kalender yang memiliki perhitungan konversi berbagai macam
kalender seperti Hijriah, Masehi, Cina, Jawa.
1.5 Kontribusi
Sepanjang sejarah manusia senantiasa bersinggungan dengan
hitung-hitungan waktu. Bahkan dalam sejarah pemikiran filsafat, konsep waktu menjadi
pembahasan penting pada manusia. Hitungan hari ke minggu, bulan ke tahun,
widu ke dasawarsa, hingga ke abad adalah hitungan matematis, akurat dan
sistematis. Dan diantara sistem waktu tersebut adalah sistem kalender.
Sistem kalender atau penanggalan, telah lama dikenal dalam sejarah.
Kalender merupakan sebuah sistem untuk memberi nama pada sebuah periode
waktu tertentu (misalnya hari). Nama-nama yang tertera kemudian, biasa disebut
seperti matahari dan bulan. Kalender digunakan sebagai panduan ketika hendak
menyelenggarakan acara-acara tertentu ataupun aktivitas keseharian biasa.
Kebiasaan ini berlangsung sejak jaman Mesir kuno, Mesopotamia kuno, jaman
Romawi hingga kini ( http://www.Akmaliah.com, 2008 )
Dalam penelitian ini, kalender yang dicantumkan memiliki 4 sistem
penanggalan yaitu sistem penanggalan Masehi, Jawa, Cina dan Hijriyah. Kalender
digital dengan display dot matrix ini dapat menampilkan kalender dengan 4 sistem
penanggalan waktu sekarang maupun dalam rentang waktu 100 tahun mendatang
dengan perhitungan hari secara otomatis sesuai kalender Masehi yang di-input
-kan.
1.6 Sistematika Penulisan
Secara garis besar penulisan tugas akhir ini terbagi dalam lima bab dan
didalamnya terdapat beberapa sub bab. Adapun sistematika dari penyusunan
laporan tugas akhir ini adalah sebagai berikut:
BAB I : Pendahuluan
Bab ini menguraikan mengenai latar belakang masalah, perumusan masalah,
batasan masalah, tujuan, kontribusi serta sistematika penulisan laporan Tugas
Akhir ini.
BAB II : Landasan Teori
Dalam bab ini, dijelaskan teori-teori yang digunakan sebagai dasar analisis
permasalahan. Diawali dengan penjelasan mengenai algoritma-algoritma yang
komponen-komponen yang digunakan untuk membangun hardware (bagian
elektronik).
BAB III : Metode Penelitian
Pada bab ini dibahas proses mengenai perancangan perangkat keras (hardware),
perangkat lunak (software) yang nantinya digunakan sebagai acuan dalam
pembuatan perangkat keras dan perangkat lunak. Perancangan perangkat keras
akan ditampilkan berupa blok diagram sedangkan untuk perancangan perangkat
lunaknya akan ditampilkan berupa flowchart dan state program yang
diaplikasikan pada seluruh sistem. Pembuatan perangkat keras diantaranya
meliputi perancangan modul minimum system microcontroller, Dot Matriks,
rangkaian Transistor, dan rangkaian Shift Register. Untuk menjelaskan tentang
perangkat keras tersebut secara rinci, setiap blok rangkaian akan disertai dengan
gambar rangkaian elektronik.
BAB IV : Pengujian dan Evaluasi Sistem
Dalam bab ini, membahas mengenai pengujian terhadap bagian-bagin sistem
yang dibangun (bagian software dan hardware). Pembahasan akan dilanjutkan
dengan pengujian terhadap keseluruhan sistem yang dibangun. Selanjutnya
dijelaskan tentang data hasil pengujian sistem secara keseluruhan.
BAB V : Penutup
Pada bab kesimpulan dan saran ini merupakan kesimpulan hasil pengujian sistem
secara keseluruhan dan saran-saran yang diharapkan dapat membantu
BAB II
LANDASAN TEORI
2.1. Kalender
Kalender pada awalnya dibuat untuk menandai pergantian iklim yang
terjadi selama satu tahun. Pergantian iklim perlu diketahui karena terkait erat
dengan banyak aktivitas kita, seperti waktu bercocok tanam.
Bermacam-macam kalender pun diciptakan. Pada awalnya kalender sangat
sederhana. Bangsa Arab dan Mesir kuno, misalnya, menggunakan siklus terbit
bintang Sirius sebagai kalender, yang menjadi penanda musim tanam atau musim
panen. Bangsa-bangsa Eropa yang tinggal di belahan bumi utara menggunakan
perubahan azimuth matahari saat terbit sebagai penanda pergantian musim.
Karena adanya kebutuhan terhadap kalender yang lebih informatif, maka dibuat
kalender yang lebih kompleks ( TEMPO, 2008 ).
Berdasarkan jenisnya, kalender yang terdapat dan biasa digunakan di
masyarakat dibedakan menjadi 3 macam, yaitu :
1. Kalender Solar
Kalender ini berdasarkan matahari. Satu tahun terdiri dari 365 hari 5 jam
48 menit 46 detik atau 365,2422 hari atau lamanya waktu yang diperlukan bumi
untuk mengelilingi matahari. Kalender masehi yang kita gunakan sehari-hari
adalah contoh kalender solar. Kelebihan kalender ini adalah kesesuaiannya
dengan musim. Karenanya, kalender ini digunakan sebagai pedoman beraktivitas
2. Kalender Lunar
Kalender bulan memanfaatkan perubahan fase bulan sebagai dasar
perhitungan waktu. Dalam perjalanannya mengelilingi bumi, fase bulan akan
berubah dari bulan mati ke bulan sabit, bulan separuh, bulan lebih separuh,
purnama, bulan separuh, bulan sabit, dan kembali ke bulan mati. Satu periode dari
bulan mati ke bulan mati, lamanya 29 hari 12 jam 44 menit 3 detik (29.5306 hari).
Periode ini disebut dengan satu bulan. Panjang tahun dalam kalender bulan adalah
12 bulan (12 x 29.5306 hari), yakni 354 hari 8 jam 48 menit 34 detik (354.3672
hari). Sebagai misal, kalender yang berdasarkan bulan adalah kalender Hijriyah
dan kalender Jawa (http://Media.isnet.org., 2008).
3. Kalender Lunisolar
Merupakan kalender lunar yang disesuaikan dengan matahari. Oleh karena
kalender lunar dalam setahun 11 hari lebih cepat dari kalender solar, maka
kalender lunisolar memiliki bulan interkalasi (bulan tambahan atau bulan ke-13)
setiap 3 tahun, agar kembali sesuai dengan perjalanan matahari. Adapun contoh
kalender lunisolar adalah kalender Imlek atau Cina, Saka, dan Buddha
(http://ikhwan-interaktif.com., 2008)
Semua kalender tidak ada yang sempurna, sebab jumlah hari dalam setahun
tidak bulat. Untuk memperkecil kesalahan, ada tahun-tahun tertentu menurut
kesepakatan yang dibuat sehari lebih panjang atau terdapat bulan tambahan dalam
kalender Cina pada tahun kabisat (http://ikhwan-interaktif.com., 2008).
Pada kalender solar, pergantian hari berlangsung tengah malam dan awal
setiap bulan (tanggal 1) tidak tergantung pada posisi bulan. Adapun pada kalender
setiap bulan adalah saat konjungsi (Imlek, Saka, dan Buddha) atau saat munculnya
hilal (Hijriyah dan Jawa) (http://Yulian.Firdaus.or.id., 2008).
2.1.1. Kalender Masehi
Sistem penanggalan Gregorian atau lebih sering dikenal sebagai sistem
penanggalan Masehi merupakan sistem penanggalan internasional yang digunakan
secara luas sekarang ini. Sistem penanggalan Masehi merupakan sistem
penanggalan yang berdasarkan pada siklus pergerakan semu Matahari melewati
titik vernal equinok dua kali berturut-turut, yang lamanya rata-rata adalah
365,242199 hari. Titik vernal equinok adalah titik semu pada lintasan ekliptika
tempat Matahari melewati atau tepat berada pada garis ekuator langit
(perpanjangan garis ekuator Bumi), yang terjadi sekitar tanggal 21 Maret.
Berdasarkan penyesuaian dengan pergerakan semu Matahari inilah, satu tahun
dalam kalender Gregorian lamanya 365 hari ( http://langitselatan.com., 2008 )
Menurut sejarahnya, kalender Masehi berasal dari kalender yang
digunakan oleh bangsa Romawi kuno dan bukan berdasarkan pada siklus
Matahari (kalender solar) seperti sekarang ini. Pada awalnya kalender ini
memiliki jumlah hari dalam setahun sebanyak 304 hari. Kemudian dilakukan
perubahan sehingga menjadi kalender yang terdiri dari 12 bulan dengan jumlah
hari tiap bulannya masih menyesuaikan dengan siklus peredaran Bulan mengitari
Bumi, yang rata-rata adalah 29,5 hari.
Jumlah 354 hari dalam setahun tidak sesuai dengan periode Bumi
mengelilingi Matahari yang telah diketahui waktu itu, yaitu 365,242199 hari.
hari dengan pergantian musim, dan setelah 3 tahun perbedaan dengan musim ini
menjadi sekitar 1 bulan.
Pada 46 SM, Julius Caesar merubah kalender dengan memerintahkan
bahwa panjang 1 tahun haruslah 365 hari dan terdiri dari 12 bulan berdasarkan
pertimbangan dari seorang ahli astronomi bernama Sosigenes. Hal ini
mengakibatkan beberapa hari harus ditambahkan pada beberapa bulan agar
panjang tahun yang semula 354 hari dapat menjadi 365 hari. Terdapat juga
penetapan bahwa bulan-bulan yang berada pada urutan ganjil memiliki 31 hari
dan bulan yang berada pada urutan genap memiliki 30 hari, dengan bulan Februari
berjumlah 29 hari.
Penetapan Julius Caesar diatas mengakibatkan dalam beberapa bulan tak
lagi bersesuaian dengan siklus Bulan mengelilingi Bumi yang lamanya rata-rata
29,5 hari. Sehingga kalender Julian ini tak lagi bersifat lunar calendar.
Berdasarkan kalender Julian, masih ada perbedaan sekitar seperempat hari
dengan panjang tahun sebenarnya (pergerakan semu Matahari sepanjang tahun).
Jika dibiarkan dalam kurun waktu 4 tahun kalender Julian akan mengalami
akumulasi perbedaan sebesar 1 hari. Dalam waktu beberapa puluh tahun, akan
mengalami akumulasi perbedaan dengan musim lebih besar lagi. Sehingga
kalender Julian tidak sesuai dengan pergantian musim, padahal tujuan utama
adalah penyesuaian dengan musim. Untuk mengatasi perbedaan musim tersebut,
terdapat pertimbangan dari Sosigenes, setiap 4 tahun sekali akan ditambahkan 1
tahunnya adalah 365,25 hari dan menjadi cukup dekat dengan tahun sebenarnya
yang panjang rata-ratanya 365,242199 hari.
Setelah didapatkan panjang tahun yang mendekati tahun sebenarnya
dengan solusi tahun kabisat. Pada tahun 1582 kalender Julian telah memiliki
ketaksesuaian dengan musim sebesar 10 hari. Untuk mengatasi, Paus Gregorius
XIII mengambil dua langkah. Pertama, memutuskan bahwa tanggal 4 Oktober
tahun 1582 akan langsung diikuti dengan tanggal 15 Oktober 1582, bukan tanggal
5 Oktober. Kedua, untuk mencegah ketidaksesuaian dengan musim kembali
terjadi, menetapkan bahwa tiga dari empat tahun abad (kelipatan 100) bukan
tahun kabisat. Bila pada kalender Julian tahun kabisat adalah tahun yang angka
tahunnya habis dibagi 4. Dengan peraturan Paus Gregorius ini maka tahun abad
yang tidak habis dibagi 400 tidak akan menjadi tahun kabisat. Sebagai contoh,
tahun 1700,1800,1900 bukan tahun kabisat, sedangkan tahun 2000, yang habis
dibagi 400, merupakan tahun kabisat. Sehingga terjadi pengurangan jumlah tahun
kabisat sebanyak 3 buah tahun kabisat dalam 400 tahun dan panjang satu tahun
Matahari dalam sistem penanggalan ini menjadi 365,2425 hari.
(http://langitselatan.com, 2008).
Pada kalender Masehi terdapat 12 bulan, antara lain Januari, Februari,
Maret, April, Mei, Juni, Juli, Agustus, September, Oktober, November, dan
Desember, dimana masing-masing bulan memiliki jumlah hari yang bervariasi.
Tabel 2.1 Nama Bulan dan Jumlah hari kalender Masehi
Bulan ke-
Nama Bulan Jumlah Hari
1. Januari 31 hari
2. Februari 28/29 hari
3. Maret 31 hari
4. April 30 hari
5. Mei 31 hari
6. Juni 30 hari
7. Juli 31 hari
8. Agustus 31 hari
9. September 30 hari
10. Oktober 31 hari
11. November 30 hari 12. Desember 31 hari
2.1.2. Kalender Hijriyah
Sistem penanggalan Hijriah, yang di Indonesia digunakan oleh komunitas
Muslim sebagai kalender ibadah, dibangun berdasarkan rata-rata siklus sinodik
Bulan. Dengan siklus sinodik Bulan ini, bilangan hari dalam satu tahunnya (yaitu
12 x 29,53059 hari = 354,36708 hari) lebih pendek 10 hari 21 jam daripada siklus
tropis Matahari yang digunakan dalam kalender Masehi. Perbedaan jumlah hari
inilah yang menjelaskan pergeseran sekitar 11 hari suatu tanggal dalam kalender
Hijriyah terhadap kalender Masehi setiap tahunnya ( http:/ achoyob.com., 2008 ).
Jumlah hari dalam satu bulan dalam kalender Hijriyah bergantung pada
posisi Bulan, Bumi, dan Matahari. Usia bulan yang mencapai 30 hari bersesuaian
dengan terjadinya Bulan baru (new moon) di titik apogee, yaitu di jarak terjauh
antara Bulan dan Bumi, dan pada saat yang hampir bersamaan Bumi berada di
berlangsung 29 hari bertepatan dengan saat terjadinya Bulan baru di perigee (jarak
terdekat Bulan – Bumi) dengan Bumi berada di jarak terjauhnya dari Matahari
(aphelion). Dari sini terlihat bahwa usia bulan tidaklah tetap, melainkan
berubah-ubah (29/30 hari) sesuai dengan kedudukan ketiga benda langit tersebut
(http://Wapedia.mobile/id., 2008).
A. Metode Penentuan Awal Bulan dalam Kalender Hijriyah :
A.1. Rukyatul Hilal
Rukyatul Hilal adalah kegiatan melakukan pengamatan secara visual baik
menggunakan mata langsung maupun dengan bantuan alat terhadap kemunculan
hilal. Awal tiap bulan ditentukan dengan mengamati kehadiran Bulan sabit
pertama kali (hilal) di ufuk barat segera setelah Bulan baru ketika Matahari
terbenam. Kegiatan observasi hilal ini lazimnya dilakukan setiap tanggal 29 dari
bulan Hijriyah yang sedang berjalan. Pergantian hari dalam kalender Hijriyah
terjadi saat Matahari terbenam. Bila hilal terlihat, malam itu telah memasuki
tanggal 1 di bulan berikutnya yang berarti bahwa usia bulan yang baru saja dilalui
adalah 29 hari. Sementara bila hilal tidak terlihat, malam itu masih tanggal 30
bulan Hijriyah. Karena usia bulan dalam kalender Hijriyah tidak mungkin 31 hari,
ketika Matahari terbenam pada tanggal 30 menjadi tanda masuknya tanggal 1 di
bulan yang baru (http://id.Wikipedia.org., 2008).
A.2. Hisab
Hisab atau perhitungan astronomis yang berkembang awalnya hanya
dikenal adanya 2 sistem hisab dalam penyusunan kalendar qamariyah, yakni Hisab Urfi dan Hisab Haqiqi (Abdurrahman, 2008).
A.2.1. Hisab Urfi
Dalam sistem Hisab Urfi, kalender qamariyah disusun berdasarkan masa
peredaran rata-rata Bulan mengelilingi Bumi, yakni 29 hari 12 jam 44 menit 3
detik (satu bulan Sinodis). Berdasarkan perhitungan ini, maka 1 tahun (12 bulan)
dihitung sama dengan 354 hari 8 jam 48 menit 36 detik (354 11/30 hari).
Karena terdapat angka pecahan sebesar 11/30 hari, maka untuk
menghilangkannya sistem ini membuat siklus 30 tahunan dalam kalender
qamariyah yang terdiri dari 19 tahun Basitah (354 hari) dan 11 tahun Kabisat
(355 hari). Tahun Kabisat dalam siklus 30 tahun tersebut jatuh pada urutan ke 2,
5, 7, 10, 13, 16, 18, 21, 24, 26, 29. Umur bulan dalam metode hisab urfi dibuat
tetap, yakni 30 hari untuk bulan urutan ganjil dan 29 hari untuk bulan urutan
genap (bulan 12 pada tahun Kabisat berumur 30 hari) (http://mathemtics.its.ac.id.,
2008).
Penggunaan metode ini menyebabkan awal bulan qamaryiah disegenap
belahan Bumi akan selalu jatuh pada hari yang sama. Penulis menggunakan
metode hisab urfi untuk pembuatan kalender digital dalam Tugas Akhir ini.
Tabel 2.2 Nama Bulan dan Jumlah hari kalender Hijriyah berdasarkan hisab urfi.
Bulan ke-
Nama Bulan Jumlah Hari
1. Muharram 30 hari
2. Shafar 29 hari
3. Rabiul Awwal 30 hari 4. Rabiul Akhir 29 hari 5. Jumadil Awwal 30 hari 6. Jumadil Akhir 29 hari
7. Rajab 30 hari
8. Shaban 29 hari
9. Ramadhan 30 hari
10. Syawal 29 hari
11. Dzulka’idah 30 hari 12. Dzulhijjah 29/30 hari
A.2.2. Hisab Haqiqi
Hisab haqiqi menggunakan kaidah astronomis dan matematika dengan
menggunakan rumus-rumus serta dilengkapi dengan data-data astronomis terbaru
sehingga memiliki tingkat ketelitian yang tinggi. Kalender qamariyah disusun
berdasarkan masa peredaran Bulan yang sebenarnya (hakiki). Karena itu, 1 bulan
sinodis tidak selalu sama setiap bulan. Kadang hanya 29 hari lebih 6 jam dan
beberapa menit, dan kadang sampai 29 hari lebih 19 jam dan beberapa menit.
Berkaitan dengan ini, maka umur bulan yang selalu tetap seperti dalam hisab Urfi
tidak dikenal dalam sistem ini. Boleh jadi 29 hari atau 30 hari berturut-turut.
Dalam praktiknya, sistem ini menyusun kalender dengan perhitungan posisi
2.1.3. Kalender Jawa
Masyarakat Jawa menggunakan sistem penanggalan berdasarkan
pergerakan matahari sebelum tahun 1633 M. Penanggalan matahari tersebut
dikenal sebagai Saka Hindu Jawa. Tahun Saka Hindu 1555, bertepatan dengan
tahun 1633 M, Raja Mataram Sri Sultan Agung Prabu Hanyokrokusumo
mengganti konsep dasar sistem penanggalan matahari (Syamsiyah) menjadi sistem
Bulan (Qamariyah). Perubahan penanggalan berlaku untuk seluruh pulau Jawa
dan Madura kecuali Banten, karena tidak termasuk daerah Mataram.
Perubahan sistem penanggalan dilaksanakan hari Jumat Legi, saat
pergantian tahun baru Saka 1555 yang ketika itu bertepatan dengan tahun baru
Hijriyah tanggal 1 Muharam 1043 H dan 8 Juli 1633 M. Pergantian sistem
penanggalan tidak mengganti hitungan Saka 1555 yang sedang berjalan menjadi
tahun 1, melainkan meneruskannya. Perhitungan tahun tersebut berlangsung
hingga sekarang (http://albarokah.or.id., 2008).
Selain mengubah sistem penanggalan, terdapat penyesuaian seperti nama
bulan dan hari menjadi mirip bahasa Arab. Hal ini menunjukkan kuatnya
pengaruh budaya dan penanggalan Islam dalam penanggalan Jawa. Secara
astronomis, kalender Jawa tergolong mathematical calendar, dimana perhitungan
didasarkan secara matematika dari peristiwa astronomi, sehingga didapatkan
jumlah hari seperti yang tertera pada tabel 2.3.
Tabel 2.3 Nama Bulan dan Jumlah hari kalender Jawa
Bulan ke-
Nama Bulan Jumlah Hari
1. Suro 30 hari
2. Sapar 29 hari
3. Mulud 30 hari
4. Rabiulakir 29 hari 5. Jumadilawal 30 hari 6. Jumadilakir 29 hari
7. Rajab 30 hari
8. Ruwah 29 hari
9. Puasa 30 hari
10. Sawal 29 hari
11. Hapir 30 hari
12. Besar 29/30 hari
Meskipun kalender Hijriyah dan kalender Jawa dasar penanggalannya
sama yaitu penampakan bulan, kalender Jawa bukanlah kalender Hijriyah. Meski
mengadopsi konsep dasar penanggalan Hijriyah, kalender Jawa tidak mengikuti
aturan penanggalannya. Kalender Jawa lebih tepat disebut sebagai penggabungan
unsur- unsur Jawa dengan penanggalan Hijriyah.
Konsep hari pasaran yang terdiri dari 5 hari (Kliwon, Legi, Pahing, Pon,
Wage) dan Wuku (Pawukon) merupakan wujud unsur-unsur Jawa yang tidak
ditemui dalam penanggalan Hijriyah dan Masehi. Siklus 8 tahun yang disebut
Windu juga merupakan konsep penanggalan khas Jawa. Nama tahun dalam
penanggalan Jawa mengikuti siklus Windu, terdiri dari Alip, Ehe, Jimawal, Je,
Dal, Be, Wawu, dan Jimakir (http://www.babadbali.com, 2008). Dari siklus 8
tahun, didapatkan tahun tertentu yang merupakan tahun kabisat. Untuk lebih
Tabel 2.4 Nama Tahun dalam siklus Windu
No. Nama Tahun Umur (hari)
1 Alip 354
2 Ehe 355
3 Jimawal 354
4 Je 355
5 Dal 354
6 Be 354
7 Wawu 354
8 Jimakir 355
Jumlah 2835
2.1.4. Kalender Cina
Berbeda dengan kalender Masehi dan Hijriyah yang semata-mata
menggunakan Matahari atau Bulan sebagai acuan, pada kalender Cina
menggunakan Matahari dan Bulan sekaligus. Artinya, untuk menentukan panjang
tahun kalender ini menggunakan pergerakan Matahari, sementara untuk
menentukan usia bulan (month) memanfaatkan siklus sinodik, yaitu selang waktu
dua fase Bulan (moon) yang sama berurutan. Misalnya dari purnama ke purnama
berikutnya, yang rata-rata berdurasi 29,53059 hari. Karena menggunakan
Matahari dan Bulan sekaligus, kalender Cina disebut juga luni-solar calendar
(http://rukyatuhilal.org.,2008) .
Satu tahun dalam sistem penanggalan Cina juga terdiri atas 12 bulan, yang
setara dengan 12 lunasi Bulan (12 kali siklus sinodik). Dengan demikian, dalam
12 bulan terdapat 354,36708 hari. Padahal “tahun” di dalam penanggalan Cina
didefinisikan sebagai siklus Matahari berada di titik musim dingin (winter
solstice) dua kali berurutan yang lamanya 365,24274 hari, sehingga terdapat
kalender Cina selalu bergerak maju 11 hari tiap tahunnya (jatuh dalam rentang 21
Januari hingga 19 Februari). Namun, dengan disyaratkannya titik musim dingin
selalu jatuh di bulan ke-11, perayaan tahun baru akan mundur kembali setiap 3
tahun.
Dalam kalender Cina juga dikenal tahun basit dan tahun kabisat. Bila pada
kalender Masehi tahun kabisat ditandai dengan adanya penambahan sebesar satu
hari dalam tahun berjalan, dalam penanggalan Cina penambahannya mencapai 30
hari atau satu bulan. Tahun basit terdiri atas 12 bulan, sementara pada tahun
kabisat berjumlah 13 bulan (http://rukyatuhilal.org., 2008).
Secara astronomis, kalender Jawa dan kalender Masehi tergolong
mathematical calendar, sedangkan kalender Hijriyah astronomical calendar.
Mathematical atau aritmatical calendar merupakan sistem penanggalan yang
aturannya didasarkan pada perhitungan matematika dari peristiwa-peristiwa alam.
Adapun astronomical calendar merupakan kalender berdasarkan fenomena alam
seperti kalender Hijriyah dan kalender Cina.
2.2. Mikrokontroler MCS-51
Mikrokontroler AT89S52 merupakan satu contoh dari keluarga
mikrokontroler MCS-51. Integrated Circuit (IC) ini dapat digunakan untuk proses
perhitungan matematis, komunikasi, dan banyak lainnya. Mikrokontroler
AT89S52 adalah mikrokontroler produksi Atmel.dengan 8K Bytes Flash PEROM
(Programmable and Erasable Read Only Memory), 2K Bytes EEPROM
Mikrokontroler AT89S52 memiliki memori dengan teknologi nonvolatile
memory, isi memori tersebut dapat diisi atau dihapus berkali-kali.
Memori ini biasa digunakan untuk menyimpan instruksi (perintah)
berstandar MCS-51, sehingga memungkinkan mikrokontroler AT89S52 bekerja
tanpa memerlukan external memory untuk menyimpan source code jika
kapasitasnya tidak melebihi yang sudah ditentukan.
Mikrokontroler AT89S52 mempunyai 40 kaki, 32 kaki di antaranya untuk
keperluan port paralel. Tiap port paralel terdiri dari 8 kaki, dengan demikian 32
kaki tersebut membentuk 4 buah port paralel, yang dikenal sebagai Port 0, Port 1,
Port 2 dan Port 3. Nomor dari masing-masing jalur (kaki) dari port paralel mulai
dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut sebagai P0.0 dan jalur terakhir
untuk Port 3 adalah P3.7. untuk lebih jelasnya perhatikan pada Gambar 2.1
Gambar 2.1 Diagram Pin AT89S52 (Datasheet, Atmel Corporation)
2.2.1. Keterangan pin-pin AT89S52
a. RST
Berfungsi sebagai input untuk melakukan reset. Jika RST bernilai high dalam
b. Address Latch Enable(ALE)/PROG
Mempunyai fungsi memberikan sinyal ke IC latch agar menyimpan address
yang akan menuju memori eksternal. ALE aktif pada saat mengakses memori
eksternal.
c. Program Store Enable (PSEN)
Pin ini berfungsi sebagai pulsa pengaktif untuk membaca memori eksternal.
d. XTAL 1
Merupakan pin input untuk kristal Osilator.
e. XTAL 2
Output Osilator
f. EA
EA (External Access) harus dihubungkan dengan ground jika menggunakan
program memori eksternal. Jika menggunakan program memori internal maka
EA harus dihubungkan dengan VCC atau dalam kondisi high.
g. Port 0
Merupakan salah satu port yang berfungsi sebagai general purpose I/O (dapat
digunakan sebagai masukan dan juga keluaran) dengan lebar 8 bit. Fungsi
lainnya adalah sebagai multiplexed address/data bus (pada saat mengakses
memori eksternal).
h. Port 1
Merupakan salah satu port yang berfungsi sebagai general purpose I/O dengan
lebar 8 bit. Pada pin–pin Port 1 memiliki beberapa fungsi tambahan. P1.0 dan
P1.1 dapat dikonfigurasi menjadi masukan pencacah ekternal ke
arah (P1.1/T2EX). Selanjutnya P1.4, P1.5, P1.6 dan P1.7 dapat dikonfigurasi
menjadi Serial Peripheral Interface (SPI) untuk dijadikan port slave, untuk
lebih jelasnya keterangan pin–pin Port 1 terdapat pada tabel 2.5.
Tabel 2.5 Keterangan pin–pin pada Port 1(Datasheet, Atmel Corporation).
i. Port 2
Port 2 adalah 8 bit I/O port dua arah dengan dilengkapi internal pull up dan
berfungsi sebagai input dengan memberikan logika 1. Fungsi lain Port 2
sebagai Byte alamat tinggi (A8 s/d A15) pada saat menjalankan program
eksternal dan mengakses data pada memori data eksternal dengan
menggunakan pengalamatan 16 bit (instruksi MOVX @DPTR) sedangkan
jika menggunakan 8 bit (instruksi MOVX @RI) maka Port 2 berisi Special
Function Register (SFR) P2.
j. Port 3
Port 3 adalah 8 bit I/O port dua arah dengan dilengkapi internal pull up, sama
seperti Port 1 dan Port 2 jika sebagai port. Sedangkan sebagai fungsi spesial,
Tabel 2.6 Keterangan pin–pin pada Port 3 (Datasheet, Atmel Corporation).
k. GND
Ground
l. VCC
Power Supply. Berfungsi sebagai sumber tegangan +5V.
2.2.2. Clock generator dan Timer
Mikrokontroler AT89S52 memiliki clock generator internal (on-chip) yang
digunakan untuk mengeksekusi instruksi yang ada pada memori program.
Gambar 2.2. Hubungan ke Kristal
Untuk menggunakan osilator internal diperlukan sebuah kristal atau
keramik resonator yang dipasangkan antara pin XTAL1 dan pin XTAL2 dan 2
buah kapasitor ke GND seperti tampak pada gambar 2.2. Penggunaan frekuensi
kristal keramik resonator disesuaikan dengan kecepatan yang diinginkan oleh
P3.0 RXD Port Serial Input
P3.1 TXD Port Serial Output
P3.2 INT 0 Port External Interupt 0
P3.3 INT 1 Port External Interupt 1
P3.4 T0 Port External Timer 0
P3.5 T1 Port External Timer 1
P3.6 WR External Data Memory Write Strobe
pengguna minimum sistem dengan ketentuan frekuensi maksimal 24 MHz dan
menggunakan kapasitor 5 pF.
Bila menggunakan clock eksternal, maka pin XTAL1 berfungsi sebagai
input clock osilator dan XTAL2 tidak disambungkan atau no connect (NC),
seperti pada gambar 2.3.
Gambar 2.3 Konfigurasi Clock Eksternal
Dari kristal didapatkan perhitungan timer dibawah ini :
T = (65536 – TH0TL0) x 1µs
T / 1µs = (65536 – TH0TL0)
Jika T dimisalkan sama dengan 1 ms maka persamaannya adalah :
1 ms / 1µs = (65536 – TH0TL0)
1µs adalah sama dengan 0,001 ms
TH0TL0 = 65536 – (1 ms / 1µs)
= 64536 (dec)
2.2.3. Struktur Memori
Struktur memori yang terdapat pada AT89S52 terdiri dari :
A. Random Access Memory (RAM) Internal, memori sebesar 256 Byte yang
biasanya digunakan untuk menyimpan variabel atau data yang bersifat
sementara.
B. Special Function Register (SFR), memori yang berisi register–register yang
mempunyai fungsi khusus seperti timer, serial dan lain sebagainya.
C. Flash PEROM, memori yang digunakan untuk menyimpan instruksi–
instruksi MCS-51.
D. EEPROM, memori sebesar 2K Byte yang biasanya digunakan untuk
menyimpan data yang bersifat nonvolatile.
A. RAM Internal
1. Register Banks
AT89S52 mempunyai 8 buah register yang terdiri dari R0 hingga R7. Delapan
buah register tersebut terletak pada alamat 00H hingga 07H pada setiap kali
reset.
2. Bit Addressable RAM
Alamat 20H hingga 2FH pada RAM dapat diakses secara pengalamatan bit.
B. SFR ( Special Function Register )
AT89S52 mempunyai beberapa SFR. Adapun register–register tersebut
adalah :
1. Accumulator
Digunakan sebagai register utama dalam proses aritmatika dan penyimpan
data sementara.
2. Port
AT89S52 mempunyai empat buah port yaitu Port 0, Port 1, Port 2, dan Port
3, yang terletak pada alamat 80H, 90H, A0H, dan B0H.
3. ProgramStatus Word
PSW terletak pada alamat memori D0H. Special function register ini
digunakan untuk menyimpan bit-bit yang penting yang akan di-set maupun
di-clear oleh instruksi MCS-51.
4. Register B
Register ini juga digunakan bersama Accumulator untuk proses aritmatik dan
logika.
5. Stack Pointer
Register Stack Pointer merupakan sebuah register 8 bit yang terletak di alamat
81H.
6. Data Pointer
Data Pointer atau DPTR adalah register 16 bit yang terletak pada alamat
82H–83H untuk DPL dan 84H–85H untuk DPH. DPTR biasanya digunakan
sebagai pengakses source code ataupun data di memori eksternal dan
7. RegisterTimer
Register ini mempunyai 16 bit Timer/Counter, yang terbagi menjadi Timer 0,
Timer 1 dan Timer 2. Masing–masing register tersebut berada pada alamat
8AH, 8BH dan 0CCH.
8. RegisterPort Serial
Register ini digunakan untuk dapat melakukan komunikasi serial. Buffer untuk
proses pengiriman dan penerimaan data serial terletak pada register SBUF,
pada alamat 99H. Sedangkan untuk mengatur mode serial dapat dilakukan
dengan mengubah isi dari register SCON yang terletak pada alamat 98H.
9. Register Interupsi
Untuk pengaturan interupsi, terdapat beberapa register penting yang perlu
diperhatikan, yaitu register Interrupt Enable (IE), dan register Interrupt
Priority (IP), masing–masing register tersebut terdapat pada alamat A8H dan
B8H.
C. Flash PEROM
Untuk AT89S52 mempunyai 8K Byte Flash PEROM, ROM yang dapat
ditulis dan dihapus secara berulang–ulang hingga 10.000 kali.
D. EEPROM
Menurut Atmel Corporation pada mikrokontroler AT89S52 mempunyai
2K Byte EEPROM, memori data yang dapat ditulis dan dihapus secara berulang–
ulang hingga 100.000 kali. (Atmel Corporation,8-bit microcontroller with 8K
2.3. Komunikasi Serial RS232
Dikenal 2 macam cara dalam mentransmisikan data secara serial, yaitu
secara Synchronous dan Asynchronous.. Kedua cara tersebut dibedakan oleh
sinyal denyut (clock) yang dipakai untuk men-‘dorong’ data seri. Transmisi secara
Synchronous yaitu pengiriman data serial bersamaan dengan sinyal clock,
sedangkan Asynchronous yaitu pengiriman data serial tidak bersamaan dengan
sinyal clock sehingga receiver harus membangkitkan sinyal clock sendiri (tidak
perlu sinkronisasi) (Nalwan, 2007).
Port seri MCS51 bisa dipakai dalam 4 mode kerja yang berbeda. Dari 4
mode tersebut, 1 mode diantaranya bekerja secara sinkron dan 3 lainnya bekerja
secara asinkron. Secara ringkas ke-empat mode kerja tersebut bisa dibedakan
sebagai berikut:
1. Mode 0
Mode ini bekerja secara sinkron, data seri dikirim dan diterima melalui
kaki P3.0 (RxD), dan kaki P3.1 (TxD) dipakai untuk menyalurkan clock
pendorong data seri yang dibangkitkan MCS51.
Data dikirim atau diterima 8 bit sekaligus, dimulai dari bit yang bobotnya
paling kecil (bit 0) dan diakhiri dengan bit yang bobotnya paling besar (bit 7).
2. Mode 1
Mode ini dan mode-mode berikutnya bekerja secara asinkron, data dikirim
melalui kaki P3.1 (TxD) dan diterima melalui kaki P3.0 (RxD). Pada Mode 1 data
dikirim/diterima 10 bit sekaligus, diawali dengan 1 bit start, disusul dengan 8 bit
data yang dimulai dari bit yang bobotnya paling kecil (bit 0), diakhiri dengan 1 bit
stop. Pada MCS51 yang berfungsi sebagai penerima bit stop ditampung pada RB8
dalam register SCON. Kecepatan pengiriman data (baudrate) bisa diatur sesuai
dengan keperluan. Mode inilah yang umum dikenal sebagai UART (Universal
Asynchronous Receiver/Transmitter)
3. Mode 2
Data dikirim/diterima 11 bit sekaligus, diawali dengan 1 bit start, disusul 8
bit data yang dimulai dari bit yang bobotnya paling kecil (bit 0), kemudian bit ke
9 yang bisa diatur lebih lanjut, diakhiri dengan 1 bit stop. Pada MCS51 yang
berfungsi sebagai pengirim, bit 9 tersebut berasal dari bit TB8 dalam register
SCON. Pada MCS52 yang berfungsi sebagai penerima, bit 9 ditampung pada bit
RB8 dalam register SCON, sedangkan bit stop diabaikan tidak ditampung.
Kecepatan pengiriman data (baudrate) bisa dipilih antara 1/32 atau 1/64 frekuensi
osilator kristal.
4. Mode 3
Mode ini sama dengan Mode 2, hanya saja kecepatan pengiriman data
(baudrate) bisa diatur sesuai dengan keperluan, seperti halnya Mode 1.(Putra,
2.4. Serial RTC (Real Time Clock) DS1307
Real Time Clock pada dasarnya adalah sebuah jam digital. RTC serial
DS1307 memberikan informasi berupa jam, menit, detik, hari, bulan, dan tahun pada mikrokontroler. Mode komunikasi data yang digunakan oleh DS1307 adalah
mode synchronous serial dimana tiap bit data ditransfer antara DS1307 dan
mikrokontroler dengan metoda sinkronisasi dengan pewaktuan (clock) yang
dikendalikan oleh mikrokontroler. Sinyal clock pada RTC dibangkitkan oleh
kristal sebesar 32,768 Khz. Kristal terhubung pada pin X1 dan X2. Diagram pin
[image:34.595.98.508.318.565.2]pada RTC DS1307 dapat dilihat pada Gambar 2.4.
Gambar 2.4 Pin DS1307 (DALLAS Semiconductor, www.maxim-ic.com)
Pada aplikasi ini DS1307 bekerja dengan dua mode, yaitu:
1. Mode Slave Penerima (Master Menulis Pada Slave):
Setiap menerima byte data DS1307 akan merespon dengan
membangkitkan bit acknowledge. Untuk mengawali proses pengiriman data
diawali dengan kondisi START dan diakhiri dengan kondisi STOP. Byte alamat
slave adalah byte pertama yang diterima slave setelah master membangkitkan
kondisi START. Byte alamat terdiri dari 7 bit data, dan diikuti oleh bit arah
(R/W), yang mana untuk penulisan data ke slave adalah 0. Setelah menerima dan
Master akan mengirimkan sebuah data word alamat pada DS1307 untuk mengeset
registerpointer. Register pointer bertambah nilainya setiap terjadi penulisan data.
Untuk mengakhiri pengiriman data, master membangkitkan kondisi STOP.
2. Mode Slave Pengirim (Master Membaca Dari Slave):
DS1307 mengirimkan data serial pada SDA ketika menerima sinyal clock
pada SCL. Proses pengiriman data diawali dengan kondisi START dan diakhiri
dengan kondisi STOP. Byte yang berisi data alamat diterima setelah master
membangkitkan kondis START. Byte alamat DS1307 terdiri dari 7-bit alamat
yaitu 1101000 dan 1 bit arah (R/W) adalah 0 untuk read. Setelah menerima dan
mengolah data alamat, DS1307 akan membalas dengan membangkitkan bit
acknowledge pada SDA. Nilai registerpointer bertambah setiap pembacaan 1 byte
data. Untuk mengakhiri pengiriman data, master mengirimkan tanda “not
acknowledge” kepada slave.
Datapada DS1307 disimpan dalam format BCD. Pada format ini, setiap 4
bit data merepresentasikan satu digit desimal. Misalkan angka 12 dalam desimal
disimpan sebagai 0001 0010 dalam BCD. Device address untuk DS1307 adalah
0xD0. Data pada register Timekeeper DS1307 dapat dilihat pada tabel 2.7.
Tabel 2.7 Tabel Timekeeper Register DS1307 (DALLAS Semiconductor,
2.4.1 Komunikasi Serial I2C (Inter Integrated Circuit)
Komunikasi serial I2C bus adalah antarmuka synchronous serial yang
dikembangkan oleh Philip Semiconductors. I2C ini merupakan protokol transfer
data serial. Jalur komunikasi data pada I2C ada 2 buah, yaitu serial data (SDA)
dan serial clock (SCL). Tiap perangkat yang dihubungkan ke jalur I2C harus
memiliki alamat khusus dan dapat beroperasi sebagai pengirim maupun penerima
tergantung pada fungsinya masing-masing. Perangkat yang mengirim data disebut
transmitter, sedangkan perangkat yang menerimanya disebut receiver. Perangkat
yang terhubung pada I2C digolongkan menjadi master dan slave. Master adalah
perangkat yang memulai operasi transfer data dan akses pada I2C bus dengan
membentuk sinyal START, mengakhiri transfer data dengan membentuk sinyal
STOP, dan membangkitkan sinyal clock melalui pin SCL. Slave adalah perangkat
yang dikendalikan atau dialamati oleh master. Dalam pembuatan kalender digital
ini, DS1307 adalah Real Time Clock yang berperan sebagai slave pada
komunikasi serial ini, sedangkan yang bertindak sebagai master adalah
mikrokontroler. Sinyal START merupakan sinyal untuk memulai semua perintah
sedangkan sinyal STOP merupakan sinyal untuk mengakhiri semua perintah.
[image:36.595.202.461.615.685.2]Kondisi sinyal STARTdan sinyal STOP seperti tampak pada Gambar 2.5.
Sinyal dasar yang lain dalam I2C Bus adalah sinyal acknowledge yang
disimbolkan dengan ACK. Setelah transfer data oleh master berhasil diterima
slave, slave akan menjawabnya dengan mengirim sinyal acknowledge,. Kondisi
[image:37.595.92.499.234.601.2]sinyal acknowledge seperti tampak pada Gambar 2.6.
Gambar 2.6 Kondisi Sinyal Acknowledge (www.new.indorenesas.com)
Dalam melakukan transfer data pada I2C bus, terdapat aturan yang telah
ditetapkan yaitu :
a. Transfer data hanya dapat dilakukan ketika bus tidak dalam keadaan sibuk.
b. Selama proses transfer data, keadaan data pada SDA harus stabil selama SCL
dalam kondisi high. Perubahan pada SDA hanya dapat dilakukan selama SCL
dalam keadaan low. Jika terjadi perubahan keadaan SDA pada saat SCL dalam
keadaan tinggi, maka perubahan itu dianggap sebagai sinyal START atau
sinyal STOP.
2.5 8-Bit Shift Register
Dalam sistem digital, register dibutuhkan untuk menyimpan atau
memindahkan sekumpulan bit dalam format tertentu. Shift register memberikan
fasilitas perpindahan data dalam format serial atau paralel dan menyimpan data
8-Bit Shift Register terbagi menjadi dua bagian yaitu : shift register SIPO
(Serial Input/Paralel Output) dan PISO (Paralel Input/Serial Output). Contoh
komponen yang mempunyai karakteristik SIPO adalah IC 74LS164 sedangkan IC
74LS165 merupakan komponen yang mempunyai karakteristik PISO. Shift
Register adalah sebuah komponen yang memiliki 2 serial input(A dan B), 8 bit
paralel output(QA-QH), Clear dan Clock. Shift Register berfungsi untuk
mengubah sebuah input data seri menjadi 8 buah output data paralel, sehingga
dapat menambah port output.
Karakteristik dari IC 74LS164 :
a. Jalur (enable/disable) input serial.
b. Memiliki bufferclock dan serial input secara lengkap.
c. Asynchronous.
d. Frekuensi clock 36 MHz.
e. Powerdissipation 80 mW.
Susunan pin input dan outputshift register untuk lebih jelasnya dapat dilihat
[image:38.595.93.512.289.651.2]pada gambar 2.7.
Gambar 2.7 Pin IC Shift Register 74LS164 (Datasheet, National Semiconductor)
Cara kerja Shift Register adalah dengan menggeser data pada output
(QA) akan mengikuti input A dan B. Kaki Clear (aktif low) akan me’reset’
semua output (QA-QH) bila diberi sinyal low, jadi kaki clear harus selalu diberi
high bila tidak ingin me’reset’ Shift Register. Cara kerja secara lengkap dari Shift
[image:39.595.92.510.238.523.2]Register ditunjukkan pada tabel 2.8.
Tabel 2.8 Tabel kebenaran IC Shift Register(Datasheet, National Semiconductor)
Shift Register menggunakan beberapa buah Flip-flop yang digunakan
sebagai penyimpan informasi digital. Flip-flop tersebut dihubungkan sedemikian
rupa sehingga output Flip-flop yang satu terhubung pada input Flip-flop
berikutnya. Semua Flip-flop mendapat Clock Pulse yang sama, sehingga data
dapat digeser ke kiri atau ke kanan.
2.6 Transistor
Transistor TIP terdiri dari 2 jenis yaitu tipe pnp dan npn. Perbedaan dari
tipe npn dan pnp adalah pada arah aliran arus yang mengalir. Untuk tipe npn arah
aliran elektron mengalir ke dalam emitter dan ke luar ke basis dan collector, arus
konvensional emitter mengalir ke luar dari emitter, arus konvensional basis dan
pengimbang (complement) dari transistor npn. Perkataan pengimbang menentukan
bahwa semua tegangan dan arus berlawanan dengan pada transistor npn. Arah
arus emitter mengalir ke atas dan tegangan collector negatif. Kita dapat
mendefinisikan arah positif dari tegangan dan arus sebagai transistor npn yang
dibias forward. Karena itu tegangan dan arus dalam sebuah transistor pnp yang
dibias forward adalah negatif terhadap arah npn.
Dengan demikian transistor tipe pnp lebih banyak digunakan sebagai
driver pada LED, sedangkan transistor tipe npn lebih banyak digunakan sebagai
driver motor DC. Kedua jenis TIP tersebut mempunyai karakteristik pin out yang
sama dimana terdiri dari basis, emitter dan collector seperti terlihat pada Gambar
[image:40.595.95.508.297.518.2]2.8.
Gambar 2.8 Pinout transistor TIP42
Karakteristik kerja dari transistor TIP42 yang digunakan dapat dilihat
Gambar 2.9 Karakteristik transistor TIP42
2.7 Octal Data Latch
Octal Data Latch merupakan komponen yang digunakan untuk menahan 8
bit data dalam waktu singkat dengan kecepatan tinggi, dan juga dapat digunakan
untuk memisahkan antara data dan alamat yang dikirimkan dari mikrokontroler.
IC 74HC573 dan IC 74HC373 mempunyai hasil keluaran yang sama persis,
perbedaan dari kedua IC adalah letak pin masukan dan keluaran. IC 74HC373
mempunyai letak pin masukan dan keluaran yang tidak berurutan, sehingga agak
sulit untuk menentukan antara pin masukan dan pin keluaran. Berbeda dengan IC
74HC573, susunan IC ini lebih terurut antara pin masukan dan keluarannya.
Gambar 2.10 Pinout 74HC573 (Datasheet, Philips Semiconductor)
Blok diagram dari IC 74HC573 disusun dari delapan buah komponen
D-flipflop. Susunan dari D-flipflop yang membentuk 74HC573 terlihat pada Gambar
2.11.
Gambar 2.11 Blok diagram IC 74HC573 (Datasheet, Philips Semiconductor)
Prinsip kerja yang digunakan adalah jika Latch Enable (LE) pada pin no
11 mempunyai nilai logika 1, maka data yang dikeluarkan melalui jalur keluaran
(O0 sampai O7) akan sama persis dengan data yang masuk pada jalur masukan
(D0 sampai dengan D7), namun jika nilai logika LE diubah menjadi 0, maka data
yang dikeluarkan melalui jalur keluaran adalah data keluaran sebelumnya.
Saat mikrokontoler mengirimkan alamat, maka sinyal ALE akan menahan
[image:42.595.95.506.321.528.2]jika ALE bernilai 1 atau Port 0 berupa jalur data jika ALE bernilai 0. Hal ini
[image:43.595.94.507.186.532.2]sesuai dengan Tabel 2.9.
Tabel 2.9 Tabel kebenaran 74HC573 (Datasheet, Philips Semiconductor)
Octal data latch sangat sering digunakan, rangkaian ini memanfaatkan
impedansi dari 74HC573, jadi tegangan keluaran yang dikeluarkan oleh
mikrokontroler dapat terjaga dengan konstan. IC ini digunakan untuk menahan
data, karena terdapat jumlah yang tidak seimbang antara jumlah input dengan
jumlah output yang akan ditampilkan.
2.8 LED dot matrix
LED dot matrix sebenarnya adalah susunan dari beberapa jumlah LED
yang digabungkan menjadi satu dalam bentuk matrix. Jumlah LED dot matrix
tersedia berbagai macam ukuran dari 5x5, 5x7, 8x8, dan sebagainya. LED dot
matrix juga mempunyai bermacam warna yang dapat menyala seperti 1 warna, 2
warna dan RGB. Dalam LED dot matrix juga terdapat beberapa pin yang
digunakan untuk baris dan kolom matrix tersebut. Pada dot matrix dengan 3
warna sebenarnya adalah sebuah dot matrix yang terdiri dari 2 warna dan 1 warna
warna merah, hijau dan warna kombinasi oranye. Warna merah, biru dan dari
kombinasi kedua warna merah dan biru dan beberapa jenis display dot matrix 2
warna yang lainnya. Display dot matrix 2 warna mempunyai beberapa
karakteristik yang sama tergantung pada ukuran dari dot matrix itu sendiri, jumlah
common positif pada dot matrix 2 warna menunjukkan banyak baris sedangkan
common negatif dot matrix 2 warna mempunyai 2 pin setiap satu titik display dot
matrix yang merupakan sebagai pemilih warna (UNI, 2:2000).
Pin-pin pada kaki dot matrix berfungsi untuk mengendalikan tiap led dot
matrix. Terdapat pin yang berguna untuk koneksi ke baris maupun kolom. Untuk
lebih jelas koneksi pin mana yang terhubung ke baris atau kolom dapat dilihat
[image:44.595.89.509.298.621.2]pada Gambar 2.12 dan Gambar 2.13 .
Gambar 2.12. Circuit pada led dot matrix 2 warna (Datasheet A-5880EG,
Gambar 2.13 Pin untuk led dot matrix 2 warna (Datasheet
BAB III
METODE PENELITIAN
Metode penelitian yang digunakan dalam penelitian tugas akhir ini
adalah studi kepustakaan dan melakukan percobaan. Dengan ini penulis berusaha
untuk mengumpulkan data, informasi serta materi–materi dasar yang bersifat
teoritis yang sesuai dengan permasalahan. Hal tersebut diperoleh dari buku, materi
kuliah, literatur melalui browsing di internet dan melakukan berbagai percobaan.
Dari data-data yang diperoleh penulis berusaha menerapkannya untuk
menyelesaikan permasalahan yang ada dalam penelitian ini.
Pada sub bab ini akan membahas tentang perancangan sistem secara
keseluruhan dari penelitian ini, yaitu tentang perancangan perangkat keras dan
perangkat lunak. Keseluruhan sistem pada penelitian ini sesuai dengan blok
[image:46.595.92.529.302.666.2]diagram pada Gambar 3.1.
Gambar 3.1 Blok Diagram rangkaian keseluruhan. KOMPUTER
MAX 232 Converter
Mikrokontroler
Display
DOT MATRIK Driver Baris
Driver Kolom
3.1 Perancangan Perangkat Keras
Langkah selanjutnya dalam perancangan perangkat keras pada sistem
kalender digital menggunakan dot matrix ini adalah merealisasikan rangkaian
pada diagram diatas. Rangkaian-rangkaian yang akan direalisasikan adalah:
1. Rangkaian Minimum Sistem AT89S52.
2. Rangkaian Komunikasi Serial RS232.
3. Rangkaian Serial RTC DS1307.
4. Rangkaian Driver Baris (TIP42).
5. Rangkaian Shift Register 74LS164.
6. Rangkaian Display Dot Matrix.
Dalam perancangan perangkat lunak terdapat proses-proses sebagai
berikut: program utama, program interrupt serial, program konversi kalender .
3.1.1 Rangkaian Minimum Sistem AT89S52
Rangkaian mikrokontroler berfungsi sebagai pusat pengontrol dari
rangkaian Kalender Digital ini. Pada Tugas Akhir ini digunakan mikrokontroler
keluaran ATMEL yaitu Mikrokontroler AT89S52. Mikrokontroler ini mempunyai
40 pin dengan 4 jalur port yaitu Port 0, Port 1, Port 2, dan Port 3. Untuk
mengetahui lebih lanjut konfigurasi mikrokontroler sebagai pengendali sistem,
A10 A9 D0 5v Baris6 XTAL1 D4 Baris1 A11 XTAL2 Y 1
[image:48.595.98.487.85.498.2]CRY STAL 11.0592Mhz 30pF SCL 30pF Baris7 XTAL1 U2 AT89S52 11 12 13 14 15 16 17 18 19 2 0 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 1 2 3 4 5 6 7 8 9 10 P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD XTAL2 XTAL1 GN D P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 PSEN ALE/PROG EA/VPP P0.7/AD7 P0.6/AD6 P0.5/AD5 P0.4/AD4 P0.3/AD3 P0.2/AD2 P0.1/AD1 P0.0/AD0 VCC P1.0/T2 P1.1/T2EX P1.2 P1.3 P1.4/SS P1.5/MOSI P1.6/MISO P1.7/SCK RST P3.0/RXD D3 D7 CLOCK Baris2 DATA SDA Baris8 RN2 R-PACK 1 2 3 4 5 6 7 8 9 RN2 R-PACK 2 3 4 5 6 7 8 9 P3.0 Rx D6 Baris4 WE Baris3 D2 P3.1 Tx XTAL2 D5 A8 Baris5 OE D1 VCC
Gambar 3.2 Minimum sistem Mikrokontroler AT89S52
Pada skematik yang tecantum pada gambar 3.2 terdapat beberapa port
yang berhubungan dengan komponen yang lainnya. Port 0 dihubungkan dengan
komponen 74HC573 yang berfungsi sebagai penyangga data yang diterima dari
mikrokontroler. Port 1 terhubung dengan rangkaian driver baris. Pada port 1 ini
digunakan untuk melakukan scanning 8 baris. Port 3 (P3.4 dan P3.5)
masing-masing berfungsi sebagai input data dan input clock pada shift register. Pin RxD
dan TxD berfungsi sebagai penerima dan pengirim data serial ke komputer,
terhubung melalui MAX 232 sebagai konverter.
Pada rangkaian mikrokontroler ini, digunakan komponen XTAL 11,0592
Mhz yang terhubung pada pin XTAL1 dan XTAL2.
Penulis menggunakan rangkaian programmer yang terdiri dari sebuah IC
74LS244 yang berguna sebagai buffer dan kabel downloader dengan interface
DB25 yang terhubung pada port LPT1 pada komputer dalam melakukan proses
download program dalam format .HEX dari komputer ke mikrokontroler.
Sedangkan software yang digunakan adalah Atmel Microcontroller ISP Software.
Skematik kabel downloader yang digunakan untuk mendownload program ke
mikrokontroler seperti pada Gambar 3.3.
P2 CONNECTOR DB25 13 25 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 U11 74LS244 A1 2 A2 4 A3 6 A4 8 1OE 1
Y 1 18 Y 2 16 Y 3 14 Y 4 12
VC C 2 0 GN D 1 0 A5 11 A6 13 A7 15 A8 17
Y 5 9 Y 6 7 Y 7 5 Y 8 3
[image:49.595.92.506.285.504.2]2OE 19 J1 HEADER 6 1 2 3 4 5 6
Gambar 3.3 Rangkaian kabel downloader pada port LPT
Setelah kabel downloader terhubung ke Port paralel pada PC melalui
DB25 dan terhubung ke mikrokontroler melalui konektor 6 pin. Tahap selanjutnya
adalah melakukan download program ke mikro. Penulis menggunakan software
Gambar 3.4 Atmel Microcontroller ISP Software
Konektor 6 pin pada Gambar 3.3 dihubungkan terlebih dahulu pada
Mikrokontroler AT89S52 jika akan melakukan proses download program.
Konektor yang terhubung ke mikro seperti pada Gambar 3.5.
TR
J2
downloader
1 2 3 4 5 6
MOSI
SCK MISO
[image:50.595.173.486.82.365.2]RESET
Gambar 3.5 Konektor downloader pada Mikrokontroler
3.1.2 Rangkaian Komunikasi Serial RS232
Data yang diterima dari komputer melalui serial port adalah berupa
tegangan dengan standar RS-232, yaitu antara -3 sampai -25 Volt untuk kondisi
high dan +3 sampai +25 Volt untuk kondisi low. Sedangkan mikrokontroler
untuk kondisi low. MAX232 akan mengubah level tegangan RS-232 menjadi level
tegangan TTL agar dapat diolah oleh mikrokontroler. Demikian pula sebaliknya,
data yang dikirim mikrokontroler akan diubah ke level tegangan RS-232 agar
dapat diolah oleh komputer. Pengiriman data dari program visual di PC ke
mikrokontroler menggunakan komunikasi serial RS232. Diagram skematik dari
[image:51.595.93.508.255.506.2]rangkaian serial terlihat pada Gambar 3.6.
Gambar 3.6 Rangkaian skematik RS232
Penulis menggunakan komunikasi serial mode 1 dengan baudrate sebesar
9600 bps. Sehingga pengaturan register SCON dan register PCON adalah seperti
pada tabel 3.1 dan tabel 3.2.
Tabel 3.1 Susunan bit dalam register SCON
SM0 SM1 SM2 REN TB8 RB8 TI RI
0 1 0 1 0 0 0 0
Dari tabel 3.1 maka SCON bernilai 0x50 dimana SM0 = 0 dan SM1 = 1
berarti menggunakan mode 1, sedangkan REN = 1 berarti mengaktifkan port
serial untuk menerima data.
Tabel 3.2 Susunan bit dalam register PCON
SMOD - - - GF1 GF0 PD IDL
0 0 0 0 0 0 0 0
Dari tabel 3.2 maka PCON bernilai 0 x 00,
3.1.3 Rangkaian Serial RTC DS1307
Real Time Clock DS1307 digunakan untuk merancang jam digital. RTC
ini berkomunikasi secara serial dengan mikrokontroler melalui kaki SDA (serial
data) dan SCL (serial clock). Pada rangkaian ini DS1307 beroperasi sebagai slave
dengan mengirimkan data waktu ke mikrontroler yang berfungsi sebagai master.
Konfigurasi dari pin RTC DS1307 yang digunakan dalam Tugas Akhir ini dapat
dilihat pada Gambar 3.7.
SDA
SCL
U45
DS1307
GN
D
4
SQW/OUT 7 SDA 5 X1
1
X2
2
SCL
6
VBAT
3
VCC
8
GND Y 3
32.768kHz
C1
100nF
BT2 CR2032 3V VCC
Gambar 3.7 Rangkaian Real Time Clock DS1307
3.1.4 Rangkaian Driver Baris (TIP42)
Pada rangkaian kontroler memiliki 8 pasang transistor yang berfungsi
sebagai driver baris. Dimana setiap pasang terdiri dari transistor 9013 dan TIP42.
Rangkaian driver baris terhubung ke Port 1 mikrokontroler dan ke baris dot
matrix. Agar lebih jelas mengenai uraian diatas, dapat dilihat skematik driver
[image:52.595.93.507.315.542.2]VCC Q3 Q5A C9013 3 1 2 VCC Q11A C9013 3 1 2 R93 BRS 4 R93 Q6A C9013 3 1 2 Q3 R93 BARIS4 BARIS2 BRS 7 Q3 B1 Q11A C9013 3 1 2 VCC BRS 5 BRS 6 VCC Q3 BARIS3 R93 BARIS1 Q11A C9013 3 1 2 BARIS7 VCC Q3 BRS 2 R93 VCC BARIS5 BRS 1 Q11A C9013 3 1 2 BARIS8 R93 BARIS6 R93 VCC BRS 3 VCC Q11A C9013 3 1 2 Q4A C9013 3 1 2 B1 R93 Q3 B1 BRS 8 Q3 Q3
Gambar 3.8 Rangkaian driver baris transistor TIP42
Output dari mikrokontroler tidak cukup kuat untuk menyalakan satu baris
led dot matrix yang terdiri atas 288 led. Dibutuhkan transistor yang berdaya besar
untuk memperkuat arus dari mikrokontroler agar dapat menyalakan atau
mematikan tiap baris led dot matrix.
Penulis menggunakan 2 buah transistor PNP tipe TIP42 dan 9013 yang
dirangkai seperti pada gambar 3.8. Transistor berfungsi sebagai saklar untuk
menyalakan atau mematikan tiap baris dari led dot matrix. Display dot matrix
terdiri dari 8 baris led sehingga digunakan 8 pasang rangkaian dengan setiap
pasang transistor terhubung ke Port P1.0 sampai Port 1.7.
Pin basis pada TIP42 terhubung ke mikrokontroler, pin collector sebagai
output yang terhubung ke pin baris pada led dot matrix, sedangkan pin emitter
terhubung pada tegangan 5V. Rangkaian driver ini mempunyai karakteristik akan
transistor 9013 akan ON, tegangan di kolektor akan menjadi 0 V dan transistor
TIP42 akan OFF, sehingga baris led akan mati. Sebaliknya jika output
mikrokontroler low, maka transistor 9013 akan OFF, tegangan di kolektor 9013
akan menjadi 12 V dan transistor TIP42 akan ON sehingga baris led akan hidup.
3.1.5 Rangkaian Shift Register 74LS164
Rangkaian shift register digunakan sebagai driver kolom pada display dot
matrix. Input pada IC shift register berupa data, clock dan clear dimana
masing-masing terhubung ke Port P3.4, Port P3.5 dan VCC dari mikrokontroler. Output
shift register terhubung pada kolom display dot matrix. Agar lebih jelas tentang
konfigurasi pin dari IC 74LS164, dapat dilihat skematik rangkaian pada Gambar
[image:54.595.90.510.313.647.2]3.9. H5 H7 H8 H21 H23 H24 H17 H18 H19 H22 H20 H13 H15 H16 H9 H10 H11 H12 H14 H29 H31 H32 H33 H25 H26 H27 H28 H30 U16 74LS164 A 1 B 2 CLK 8 CLR 9 QA 3 QB 4 QC 5 QD 6 QE 10 QF 11 QG 12 QH 13 VC C 1 4 GN D 7 H24 C6 DATA H16 H8 CLK VCC CLK VCC CLK VCC R28 R25 R26 R27 R32 R29 R30 R31 DATA CLK VCC U16 74LS164 A 1 B 2 CLK 8 CLR 9 QA 3 QB 4 QC 5 QD 6 QE 10 QF 11 QG 12 QH 13 VC C 1 4 GN D 7 C6 R4 R1 R2 R3 R8 R5 R6 R7 U16 74LS164 A 1 B 2 CLK 8 CLR 9 QA 3 QB 4 QC 5 QD 6 QE 10 QF 11 QG 12 QH 13 VC C 1 4 GN D 7 C6 R12 R9 R10 R11 R16 R13 R14 R15 VCC CLK U16 74LS164 A 1 B 2 CLK 8 CLR 9 QA 3 QB 4 QC 5 QD 6 QE 10 QF 11 QG 12 QH 13 VC C 1 4 GN D 7 C6 R20 R17 R18 R19 R24 R21 R22 R23 H3 H2 H4 H1 H6
Gambar 3.9 Rangkaian ShiftRegister 74LS164
Pada rangkaian display dot matrix terdiri dari 288 kolom sehingga
Register digunakan untuk mengatasi masalah ini, dimana cukup dipakai 3 output
dari mikrokontroler untuk mengatur seluruh 288 kolom led.
Shift Register mempunyai 2 input A dan B yang terhubung oleh gerbang
’and’, kedua input ini dihubungkan jadi satu dan dihubungkan ke Port P3.5 dari
mikrokontroler. Output dan Shift Register hanya ada 8 (QA-QH) jadi dipakai 36
buah Shift Register untuk mengatur 288 kolom LED. Output terakhir dari Shift
Register (QH) dihubungkan ke input Shift Register yang berikutnya agar semua
data dapat digeser oleh Shift Register. Semua kaki Clock dari Shift Register
terhubung ke Port P3.4 dan semua kaki Clear terhubung ke VCC agar semua Shift
Register berjalan secara sinkron.Rangkaian ini menggunakan sistem SIPO (Serial
Input Parallel Output).
3.1.6 Rangkaian Display Dot Matrix
Dalam perancangan kalender digital dengan dotmatrix ini, ukuran display
yang digunakan 48x48, dimana mikrokontroler mempunyai display ukuran 8x288.
Pola display tidak memanjang tetapi berbentuk persegi, karena dot matrix yang
disusun ke bawah secara rapat sehingga membentuk suatu display dot matrix
ukuran 48x48. Maksud dari rangkaian display dot matrix diperjelas melalui
H30 J2 DOT MATRIX 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 J3 DOT MATRIX 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 J4 DOT MATRIX 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 J5 DOT MATRIX 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 H1 H2 BRS1 BRS3 H3 BRS2 BRS4 H4 H29 BRS5 BRS7 H31 BRS6 BRS8 H32 BRS1 H9 H11 BRS2 H10 H12 BRS3 BRS4 H13 H14 BRS5 BRS7 H15 BRS6 BRS8 H16 BRS5 H5 H7 BRS6 H6 H8 BRS7 BRS8 H25 BRS1 H27 BRS2 H26 H28 BRS3 BRS4 H17 BRS1 H19 BRS2 H18 H20 BRS3 BRS4 H21 BRS5 H23 BRS6 H22 H24 BRS7 BRS8
Gambar 3.10. Rangkaian display dot matrix
3.1 Perancangan Perangkat Lunak
Dalam perancangan perangkat lunak dibagi atas 2 jenis : perancangan
perangkat lunak pada komputer dan perancangan perangkat lunak pada
mikrokontroler.
3.2.1 Perangkat Lunak pada Komputer
Perancangan perangkat lunak pada komputer berfungsi sebagai interface
dan digunakan dal