PERANCANGAN SOFTWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307
TUGAS AKHIR
TAUFIK PASARIBU 072408023
PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2010
PERANCANGAN SOFTWARE JAM DIGITAL DENGAN SISTEM KALENDER BERBASIS MIKROKONTROLLER DS1307
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh gelar Ahli Madya
TAUFIK PASARIBU 072408023
PROGRAM STUDI DIPLOMA III FISIKA INSTRUMENTASI DEPARTEMEN FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2010
PERNYATAAN
PERANCANGAN SOFTWARE JAM DIGITALDENGAN SISTEM KALENDER BERBASIS MIKROKONTROLER DS1307
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juli 2010
TAUFIK PASARIBU 072408023
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa, dengan limpahan berkatnya penyusunan tugas akhir ini dapat diselesaikan dalam waktu yang ditetapkan.
Ucapan terima kasih penulis sampaikan kepada berbagai pihak yang telah banyak membantu penulis dalam penyelesaian Tugas Akhir ini yaitu kepada: 1. Bapak Prof. Dr. Eddy Marlianto, M.Sc, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam. 2. Bapak Drs. Syahrul Humaidi, M.Sc, selaku Ketua Program Studi D-III Fisika Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam. 3. Ibu Dra. Justinon, M.Si, selaku Sekretaris Program Studi D-III Fisika Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam. 4. Bapak Drs. Kurnia Brahmana, M.Si, selaku Dosen Pembimbing Tugas Akhir yang telah memberikan bimbingan dan kepercayaan penuh pada penulis untuk menyempurnakan tugas akhir ini. 5. Dosen, staff dan pegawai di Program Studi D-III Fisika Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan Alam. 6. Teristimewa kepada Ibunda S.Sirait yang telah banyak memberikan dukungan doa dan moril maupun materil. Kepada Kakak dan Adik (Kak Frieska, Kak Eva, Kak Betty, Kak Aril dan Dek Ria) atas perhatian, motivasi dan doanya. 7. Eva Natalie Siringo-ringo yang telah banyak membantu dan memberi dukungan serta pemikiran kepada penulis.
8. Teman-teman di PNJ (Pondok Nur Jaya) khususnya Selina, Tina, Martin, Fajar, Fasionah, Robby, dan Team futsal Laguboti FC (Park’Lian, Benny, Wilman, Amin, Bang Juntriman, dan Mesu) atas dukungan semangat dan doanya. 9. Teman-teman seperjuangan FIN’07 , khususnya “GORGOM 07” (Dedy Xtankovic, Yatim Pique dan Marvel Margukguk, Julio Gabe, Miswar Budin) yang telah banyak memberi dukungan semangat dan kerja sama selama masa perkuliahan.
Akhir kata penulis ucapkan terima kasih kepada semua pihak yang telah membantu saya dalam menyelesaikan tugas akhir ini.
ABSTRAK
Untuk mengatur waktu aktifitas sehari-hari agar berjalan sesuai rutinitas yang diinginkan seseorang, maka sering kali diperlukan alat bantu sebagai pengingat waktu, berupa jam digital yang dipengkapi dengan kalender. Tugas akhir ini merancang bangun jam digital menggunakan IC Real Time Clock yang dilengkapi dengan mikrokontroller ATMega8-L sebagai pengendali waktu saat ini dan kalender untuk menampilkan tanggal, bulan dan tahun saat ini. Dalam sistem ini IC Real Time Clock (RTC) DS1307 sebagai masukan waktu ke mikrokontroller dan seven segen debagai penunjuk waktu (jam dan menit) dan kalender (tanggal, bulan dan tahun). Waktu yang menjadi acuan dalam jam digital diatur pada awal penggunaan jam digital ini ke dalam IC RTC melalui tombol tekan dan mikrokontroller akan mengambil data waktu tersebut pada alamat memori tertentu. Berdasarkan hasil pengujian, mulai dari set waktu dan set tampilan kalender dapat dikendalikan oleh mikrokontroller. Secara keseluruhan sistem ini dapat berfungsi sesuai dengan rancangan.
DAFTAR ISI
Halaman Persetujuan
ii
Pernyataan
iii
Penghargaan
iv
Abstrak
vi
Daftar Isi
vii
Daftar Gambar
x
Daftar Tabel
BAB 1
BAB 2
xii
PENDAHULUAN 1.1. Latar Belakang Masalah
1
1.2. Rumusan Masalah
2
1.3. Tujuan Penulisan
2
1.4. Batasan Masalah
2
1.5. Sistematika Penulisan
3
LANDASAN TEORI 2.1. Perangkat Keras 2.1.1. Real Time Clock (RTC) DS1307
5 5
2.1.1.1. Komunikasi Serial Antar IC (I2C/TWI)
7
2.1.1.2. Prinsip Komunikasi I2C
7
2.1.1.3. Pengalamatan 7-bit I2C/TWI
8
2.1.1.4. Defenisi-defenisi Kondisi Bus
9
2.1.1.5. Mode Pengoperasian Transfer Data
10
2.1.1.6. Mode Operasi RTC DS1307 melalui I2C/TWI 11 2.1.1.7. Peta Alamat (Address Map) RTC DS1307
14
2.1.1.8. Jam dan Kalender
14
2.1.1.9. Register Kontrol (Control Register) 2.1.2. Mikrokontroller ATMega8L
16 17
2.1.2.1. Konstruksi ATMega8L
18
2.1.2.2. Pin-pin pada Mikrokontroller ATMega8L
20
2.1.3. Menentukan Lamanya Satu Detik
19
2.1.3.1. Menentukan Satu Detik Menggunakan Osilator Kristal
22
2.1.3.2. Menentukan Satu Detik Pada Mikrokontroller 24 2.1.4. Mikrokontroller AT89C2051 2.1.4.1. Pin-Pin Pada Mikrokontroller AT89C2051
27 28
2.1.5. IC 4094
30
2.1.6. Seven Segment
32
2.2. Perangkat Lunak 2.2.1. Pemrograman Bahasa C
34 34
2.2.1.1. Bentuk Dasar Program C
34
2.2.1.2. Pengenal
35
2.2.1.3. Tipe Data
36
2.2.1.4. Variabel Bertanda (Signed) dan Tak Bertanda (Unsigned)
BAB 3
38
2.2.1.5. Pengarah Preprosesor
38
2.2.1.6. Pernyataan
39
2.2.1.7. Fungsi Pustaka
39
2.2.1.8. Pernyataan IF
40
2.2.1.9. Pernyataan Switch
41
2.2.1.10. Memanggil Assembler
42
2.2.2. Bahasa Assembly MCS-51
43
2.2.3. Code Vision AVR
47
2.2.4. Software 8051 Editor, Assembler, Simulator
49
2.2.5. Software Downloader
50
PERANCANGAN ALAT 3.1. Diagram Blok Rangkaian
51
3.2. Sistem Kerja Rangkaian
51
3.3. Perancangan Power Supply (PSA)
52
3.4. Rangkaian Mikrokontroller ATMega8L
53
3.5. Perancangan Driver
54
3.6. Perancangan Display Seven Segment
54
3.6.1. Pengaturan Jam dan Menit dengan Tombol Manual
BAB 4
BAB 5
ANALISA PROGRAM 4.1. Pengujian Rangkaian PSA
58
4.2. Pengujian Rangkaian Mikrokontroller ATMega8L
58
4.3. Pengujian Rangakian Display Seven Segment
60
4.4. Pengujian Detik
61
4.5. Pengujian Program Keseluruhan Sistem
62
KESIMPULAN DAN SARAN 5.1. Kesimpulan
71
5.2. Saran
72
DAFTAR PUSTAKA LAMPIRAN
57
73
DAFTAR GAMBAR
Halaman
Gambar 2.1 Diagram pin RTC DS1307
6
Gambar 2.2 Block diagram DS1307
7
Gambar 2.3 Prinsip komunikasi serial bus I2C
8
Gambar 2.4 Proses transfer data pada I2C
11
Gambar 2.5 Data write-slave receiver mode
12
Gambar 2.6 Data read-slave transmitter mode
13
Gambar 2.7 Konfigurasi pin mikrokontroller ATMega8L
20
Gambar 2.8 Skema penentuan detik, menit dan jam
22
Gambar 2.9 Rangkaian skematik untuk menentukan suatu detik menggunakan kristal osilator 50 kHz
24
Gambar 2.10 Pembangkitan clock 1 MHz di port 1 pin 0
26
Gambar 2.11 Pembangkitan clock 500 kHz
26
Gambar 2.12 Pin IC Mikrokontroller AT89C2051
28
Gambar 2.13 Diagram fungsi register
31
Gambar 2.14 Diagram pin IC 4094
31
Gambar 2.15 Tampilan seven segment
32
Gambar 2.16 Konfigurasi seven segment tipe common anoda
32
Gambar 2.17 Konfigurasi seven segment tipe common katoda
33
Gambar 2.18 Programmer setting
48
Gambar 2.19 Software 8051 editor, assembler, simulator
49
Gambar 2.20 ISP-Flash programmer
50
Gambar 3.1 Diagram blok rancangan jam digital dengan sistem kalender
51
Gambar 3.2 Rangkaian power supply
52
Gambar 3.3 Sistem minimum ATMega8L
53
Gambar 3.4 Rangkaian Driver
54
Gambar 3.5 Rangkaian skematik display seven segment
55
Gambar 3.6 Rangkaian Jam dan Menit
55
Gambar 3.7 Rangkaian Tanggal, Bulan dan Tahun
56
Gambar 3.8 Rangkaian pengaturan jam secara manual
57
Gambar 4.1. Blok diagram pengujian jam dengan frequensi counter
61
DAFTAR TABEL
Halaman
Tabel 2.1 Peta alamat RTC DS1307
15
Tabel 2.2 Register kontrol (control register)
16
Tabel 2.3 Rate select (RS1, RS0)
16
Tabel 2.4 Jumlah intruksi NOP yang di sisipkan dan frekuensi clock keluaran
27
Tabel 2.5 Fungsi masing-masing pin port 3 mikrokontroller AT89S2051
29
Tabel 2.6 Tipe data
36
Tabel 4.1. Konversi angka desimal ke heksadesimal
60