PERANGKAT PENGHITUNGAN WAKTU SECARA OTOMATIS BERBASIS MIKROKONTROLLER AT89S51 TUGAS AKHIR Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar ahli madya HALASSON DANIEL HARIANTO SILITONGA 062408005 DEPARTEMEN FISIKA INSTRUMENTASI FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2009 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 2 PERSETUJUAN JuduI : PERANGKAT PENGHITUNGAN WAKTU SECARA OTOMATIS BERBASIS MIKROKONTROLLER AT89S51 Kategori : TUGAS AKHIR Nama Nomor Induk Mahasiswa Program Studi Departemen Fakultas : : : : : HALASSON DANIEL HARIANTO SILITONGA 062408005 D3 FISIKA INSTRUMENTASI FISIKA MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, Juli 2009 Diketahui/Disetujui oleh Departemen Fisika FMIPA USU Ketua Program Studi Fisika Instrumentasi ( Drs.Syahrul Humaidi,M.Sc ) NIP : 132 050 870 Pembimbing ( Dra. Diana A Barus, M.Sc ) NIP : 132 010 479 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 3 PERNYATAAN PERANGKAT PENGHITUNGAN WAKTU SECARA OTOMATIS BERBASIS MIKROKONTROLLER AT89S51 TUGAS AKHIR Saya mengakui bahwa laporan tugas akhir ini adalah hasil kerja keras saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya. Medan, Juli 2009 HALASSON DANIEL HARIANTO SILITONGA 062408005 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 4 ABSTRAK Perangkat penghitungan waktu secara otomatis berbasis mikrokontroller AT89S51 ini adalah sebuah perangkat yang secara umum dibuat untuk menghitung waktu secara otomatis dan secara khusus dibuat untuk menanggulangi penyalahgunaan waktu di dalam penggunaan jasa warung internet gratis di kampus Universitas Sumatera Utara. Perangkat ini menggunakan sebuah dipswitch/saklar yang berfungsi sebagai pemberi data input berupa logika 0 ( low/berhenti menghitung ) dan 1 ( high/mulai menghitung ). Setelah waktu yang dihitung berakhir, maka display led dan buzzer/alarm akan aktif. Penghitungan waktu, logika, alarm Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 5 PENGHARGAAN Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas segala kasih, berkat dan pertolongan-NYA yang tidak pernah terlambat sehingga penulis dapat menyelesaikan laporan tugas akhir ini. Ucapan terimakasih saya sampaikan kepada ibu Dra. Diana A Barus,M.Sc selaku pembimbing yang telah banyak memberikan inspirasi, motivasi, bimbingan serta pengalaman berharga yang tidak akan pernah penulis lupakan sehingga laporan tugas akhir ini dapat diselesaikan dengan baik. Ucapan terima kasih juga penulis tujukan kepada Bapak Drs. Syahrul Humaidi, M.Si sebagai ketua jurusan Fisika Instrumentasi yang telah membantu penulis dalam memberikan banyak solusi berharga yang bersifat menolong. Dan yang lebih spesial to my family, B. Silitonga dan R br Tarihoran, Brando Silitonga, Monika br Silitonga, I love u all. Dan juga saya tidak lupa mengucapkan terima kasih kepada Bang Andika Siregar,Amd yang banyak membantu dalam menyelesaikan tugas akhir ini. Blucer Sihombing,Amd, David Simanjuntak Amd, Frengky Banjarnahor,Amd serta teman-teman seperjuangan lainnya yang telah banyak memberikan semangat dan dukungan, serta kawan-kawan stambuk ’06, instrument..jaya selalu. Semoga Tuhan Memberkati kita semua.Amin. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 6 DAFTAR ISI Halaman Persetujuan ii Pernyataan iii Abstrak iv Penghargaan v Daftar Isi vi Daftar Gambar viii Daftar Tabel ix BAB 1. PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Rumusan Masalah 1.3 Tujuan Penulisan 1.4 Batasan Masalah 1.5 Sistematika Penulisan BAB 2. LANDASAN TEORI 2.1 Mikrokontroller AT89S51 2.2 Beberapa Jenis Aplikasi dari Mikrokontroller AT89S51 2.3 Hubungan Pin-Pin pada Mikrokontroller AT89S51 2.4 Komponen Pendukung 2.4.1 Dipswitch/Saklar 2.4.2 LED ( Light Emitting Diode ) 2.4.3 Buzzer/Alarm 2.5 Perangkat Lunak 2.5.1 Bahasa Pemrograman dengan menggunakan BASCOM-8051 2.5.2 Software Downloader BAB 3. PERANCANGAN ALAT 3.1 Diagram Blok Rangkaian 3.2 Perancangan Power Supply ( PSA) 3.3 Perancangan Rangkaian Mikrokontroller AT89S51 3.4 Perancangan Rangkaian Dipswitch/Saklar 3.5 Perancangan Rangkaian Buzzer/Alarm 3.6 Perancangan Rangkaian Display LED 3.7 Perancangan Program BAB 4. PENGUJIAN ALAT 4.1 Pengujian Rangkaian Power Supply ( PSA ) 4.2 Pengujian Rangkaian Mikrokontroller AT89S51 4.3 Pengujian Rangkaian Dipswitch/Saklar 4.4 Pengujian Rangkaian Buzzer/Alarm 1 3 4 5 6 8 18 20 26 26 27 28 29 29 35 37 38 40 42 45 46 48 52 53 54 55 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 7 4.5 Pengujian Rangkaian Display LED 4.6 Kelemahan Alat BAB 5. KESIMPULAN DAN SARAN 56 57 5.1 Kesimpulan 5.2 Saran DAFTAR PUSTAKA 58 59 60 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 8 DAFTAR GAMBAR Halaman Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 2.7 Gambar 2.8 Gambar 2.9 Gambar 3.0 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 IC Mikrokontroller AT89S51 IC Mikrokontroller AT89S51 IC Mikrokontroller AT89S52 IC Mikrokontroller AT89C51 IC Mikrokontroller AT mega 8535 Pin/Kaki IC Mikrokontroller AT89S51 Dipswitch/Saklar Simbol LED Simbol Buzzer/Alarm ISP – Flash Programmer 3.a Diagram Blok Rangkaian Rangkaian Power Supply ( PSA ) Rangkaian Mikrokontroller AT89S51 Rangkaian Dipswitch/Saklar Hubungan Rangkaian Buzzer/Alarm Hubungan Rangkaian Display LED 10 13 14 15 16 21 27 28 29 36 37 39 41 43 45 46 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 9 DAFTAR TABEL Tabel 2.1 Tabel 2.2 Tabel 2.3 Spesifikasi IC Mikrokontroller Perbedaan Waktu Untuk Masing-Masing IC Tipe Data BASCOM Halaman 12 17 31 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 10 BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Dalam kurun waktu singkat perkembangan teknologi melaju dengan sangat pesat. Perkembangan teknologi ini merupakan hasil kerja keras dari rasa ingin tahu manusia terhadap suatu hal yang pada akhirnya diharapkan akan mempermudah manusia untuk dapat menyelesaikan beberapa pekerjaan yang dianggap rumit namun dapat diselesaikan dengan waktu yang singkat dan dengan biaya yang relatif murah. Salah satu perkembangan teknologi yang saat ini sedang berkembang dikalangan mahasiswa khususnya mahasiswa Universitas Sumatera Utara adalah jasa penggunaan warung internet gratis yang disediakan oleh pihak kampus untuk membantu kemudahan mahasiswa dalam mengakses data dan lain sebagainya. Namun dalam penggunaannya banyak terdapat penyalahgunaan dalam penggunaan jasa warung internet gratis tersebut, dimana pihak yang menyediakan telah menetapkan bahwa batas maksimal waktu penggunaannya untuk tiap mahasiswa adalah sekitar 2 jam, namun pada kenyataannya banyak mahasiswa yang menggunakan waktu penggunaan fasilitas warung internet gratis tersebut lebih dari waktu yang telah ditentukan. Sehingga mengakibatkan banyak pengguna ( mahasiswa ) lain yang harus mengantri dengan batas waktu yang tidak dapat Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 11 ditentukan, bahkan tidak mendapat kesempatan untuk menggunakan jasa internet dipuskom. Untuk itulah dibuatlah suatu alat yang dapat mempermudah pekerjaan dalam menanggulangi penyalahgunaan waktu tersebut. Adapun perangkat yang akan dibuat berfungsi untuk menghitung waktu penggunaan jasa warung internet gratis tersebut yang digunakan oleh pihak pengguna ( mahasiswa ). Untuk membuat perangkat tersebut dibutuhkan sebuah komponen yang dapat menghitung, mengingat, dan mengambil keputusan. Pada kenyataanya kemampuan yang seperti ini hanya dimiliki oleh sebuah computer yang memiliki kemampuan dalam hal mengingat, menghitung, serta mengambil keputusan. Namun alangkah tidak efektif jika kita harus menggunakan sebuah komputer ( PC ) sebagai alat untuk menghitung, menghitung, serta mengambil keputusan didalam pembuatan perangkat ini. Dikarenakan banyak pertimbangan yang memberatkan seperti bentuk fisiknya yang terlampau besar dan juga biaya penggunaannya yang terlampau besar. Atas dasar pertimbangan itu, menggantikan fungsi dari komputer yang mampu menghitung, mengingat dan mengambil keputusan didalam perangkat ini digunakan sebuah komponen yang mempunyai fungsi yang sama dengan fungsi komputer tersebut. Adapun komponen yang mempunyai fungsi yang sama dengan fungsi sebuah komputer dalam hal menghitung, mengingat serta mengambil keputusan digunakan sebuah mikrokontroller. Mikrokontroller merupakan sebuah chip atau ic yang terdiri dari berbagai macam komponen-komponen elektronik, rangkaianrangkaian logika digital serta sebuah prosessor dan sebuah flash memory yang dapat dibaca/ditulis sampai 1000 kali, sehingga biaya penggembangan menjadi murah karena dapat dihapus dan kemudian diisi kembali dengan program lain sesuai dengan kebutuhan kita. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 12 Adapun perangkat ini akan menghitung secara otomatis pada saat diberikan input masukan oleh bagian input yang menandakan adanya pengunjung atau pengguna, dan akan berhenti menghitung jikalau waktu yang telah dihitung telah selesai/habis dihitung dan dengan bersamaan habisnya waktu, display led dan alarm akan aktif ( menyala ) yang menandakan telah berakhirnya satu siklus waktu perhitungan yang berarti ada pengunjung yang waktunya telah berakhir dan harus keluar. 1.2 Rumusan Masalah Berdasarkan uraian yang terdapat dalam latar belakang di atas, maka dalam tugas akhir ini akan dibuat sebuah perangkat yang dapat menghitung waktu secara otomatis dengan judul “ PERANGKAT PENGHITUNGAN WAKTU SECARA OTOMATIS BERBASIS MIKROKONTROLLER AT89S51 “ Pada perangkat ini digunakan sebuah mikrokontroller AT89S51, rangkaian dipswitch/saklar, rangkaian led, rangkaian buzzer/alarm dan beberapa komponen pendukung lainnya. Dalam pembuatan perangkat ini, mikrokontroller AT89S51 digunakan sebagai otak dari semua system yang digunakan untuk membangun perangkat ini serta berfungsi untuk mengolah data masukan, menghitung, dan memberi keputusan ke bagian output. Rangkaian dipswitch/saklar digunakan sebagai pemberi data masukan/input ke bagian mikrokontroller yang mana datanya berupa keadaan logika high ( aktif ) dan low ( tidak aktif ). Rangkaian display led digunakan sebagai penampil dari data output yang menampilkan led dengan penomoran tertentu yang mengilustrasikan nomor komputer yang telah selesai waktunya. Rangkaian Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 13 buzzer/alarm digunakan sebagai tampilan ouput yang menghasilkan output suara yang memudahan dalam melihat komputer yang telah selesai waktunya. 1.3 Tujuan Penulisan Adapun tujuan dari penelitian ini adalah sebagai berikut: 1. Untuk menerapkan ilmu yang dipelajari di bangku perkuliahan secara nyata dan aplikatif. 2. Untuk melakukan penghitungan waktu secara otomatis dengan menggunakan sebuah mikrokontroller AT89S51 dengan komponenkomponen pendukung lainnya. 3. Membuat sebuah perangkat yang dapat menghitung waktu secara otomatis sehingga daapat mempermudah pekerjaan. 4. Untuk memenuhi salah satu persyaratan dalam menyelesaikan studi pada program diploma III di Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 14 1.4 Batasan Masalah Mengacu pada hal diatas, saya membuat sebuah perangkat penghitungan waktu secara otomatis berbasis mikrokontroller AT89S51 dengan batasan-batasan sebagai berikut: 1. Mikrokontroller yang digunakan adalah jenis AT89S51. 2. Untuk memberi data masukan/input agar mikrokontroller mulai menghitung digunakan dipswitch/saklar yang memberi data logika high ( ada pengunjung ) dan low ( tidak ada pengunjung atau waktunya telah berakhir ). 3. Sebagai bagian output yang menampilkan led-led yang telah diberi penomoran sebanyak komputer yang tersedia, sehingga apabila waktu telah habis maka dapat dengan mudah melihat komputer yang wakunya telah selesai/habis tersebut. 4. Yang memberi isyarat berupa suara digunakan rangkaian buzzer/alarm yang memberi isyarat jikalau telah ada waktu yang telah habis/berakhir. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 15 1.5 Sistematika Penulisan Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja dari sebuah perangkat penghitungan waktu secara otomatis, maka penulis menulis laporan ini sebagai berikut: BAB 1 PENDAHULUAN Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, serta sistematika penulisan. BAB 2 LANDASAN TEORI Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian. Teori pendukung itu antara lain tentang mikrokontroler AT89S51 (hardware dan software), bahasa program yang digunakan, serta karakteristik dari komponen-komponen pendukung. BAB 3 PERANCANGAN ALAT Pada bagian ini akan dibahas perancangan dari alat, yaitu diagram blok dari rangkaian, skematik dari masing-masing rangkaian dan fungsi dari masing-masing rangkaian. BAB 4 PENGUJIAN ALAT Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 16 Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja alat, penjelasan mengenai program-program yang digunakan untuk mengaktifkan rangkaian, penjelasan mengenai program yang diisikan ke mikrokontroler AT89S51. BAB 5 KESIMPULAN DAN SARAN Bab ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan yang dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai sistem kerja yang sama. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 17 BAB 2 LANDASAN TEORI 2.1 MIKROKONTROLLER AT89S51 Didalam pembuatan perangkat ini peran penting mikrokontroller sangat berpengaruh dalam menentukan hasil akhir /output dari fungsi perangkat ini , yang mana hasil akhir/ouput dari alat ini adalah hasil perhitungan waktu yang dihitung oleh mikrokontroller yang digunakan didalam pembuatan alat ini, sehingga dalam pembuatan perangkat ini mikrokontroller adalah otak dari semua system yang digunakan didalam membentuk fungsi dari perangkat ini. Di pasaran terdapat banyak jenis mikrokontroller yang beredar luas dengan fungsi dan spesifikasi bentuk yang berbeda-beda sebagai contoh : Mikrokontroller AT89S51, Mikrokontroller AT89S52, Mikrokontroler AT89S53, AT Mega 8353, AT Mega 8252 dan masih banyak lagi yang beredar luas dipasaran dengan fungsi dan spesifikasi yang berbeda-beda. Adapun jenis mikrokontroller yang digunakan didalam pembuatan perangkat ini adalah jenis Mikrokontroller AT89S51, dimana mikrokontroller jenis ini adalah salah satu keluarga dari mikrokontroller MCS – 51 keluaran ATMEL, yang mana didalam penggunaannya mikrokontroller AT89S51 dapat mengolah data per bit ataupun secara 8 bit sekaligus yang dimasukkan oleh bagian input dan langung mengolahnya secara per bit ataupun secara bersamaan. Mikrokontroller AT8951 yang digunakan didalam pembuatan perangkat ini adalah mikrokontroller yang memiliki spesifikasi secara umum berikut : Terdapat Sebuah Central Processing Unit 8 bit yang berfungsi untuk mengolah data masukan yang diberikan oleh bagian input yakni Dipswitch/Saklar secara 8 bit sekaligus ataupun secara per bit. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 18 Rangkaian pewaktu yang berfungsi untuk melakukan perhitungan waktu dalam melakukan suatu proses eksekusi data. RAM ( Random Acess Memory ) yang bersifat internal yang berkapasitas sebesar 128 byte, yang mempunyai tugas sebagai memory data masukan didalam pembuatan alat ini. Flash memori yang berkapasitas sebesar 4 Kbyte. Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi internal) Empat buah programable port I/0 yang masing-masing terdiri dari delapan buah jalur I/0 Sebuah port serial dengan kontrol serial full duplex UART Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada frekuensi 12 MHz.( LAMPIRAN 1 ) Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 19 Gambar 2.1 IC Mikrokontroller AT89S51 Dari gambar 2.1 diatas dapat dilihat spesifikasi dari pin/kaki dari IC mikrokontroller AT89S51 yang mana IC Mikrokontroller AT89S51 yang digunakan didalam pembuatan alat ini memiliki 40 buah kaki/pin yang mana ke 40 buah kaki/pin tersebut terdapat pada 4 buah port yang masing-masing port terdiri atas 8 buah kaki. Tidak semua kaki/pin pada IC Mikrokontroller AT89S51 itu digunakan, terdapat 8 buah kaki yang mempunyai fungsi tetap didalam IC Mikrokontroller AT89S51 ini. Mikrokontroller AT89S51 didalam perangkat ini digunakan sebagai pusat kendali yang mengolah data, mengontrol dan sekaligus yang memberikan perintah ke semua komponen pendukung yang membentuk perangkat ini. Data yang diolah oleh mikrokontroller AT89S51 disini adalah kondisi pada saat saklar on, yang berarti mikrokontroller mulai menghitung dan pada saat saklar off yang berarti mikrokontroller berhenti menghitung. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 20 Didalam kenyataannya fungsi dari IC Mikrokontroller AT89S51 disini dapat juga digantikan dengan beberapa jenis mikrokontroller jenis lain yang memiliki seri dan tipe yang lain. Dimana fungsi utama dari IC Mikrokontroller AT89S51 didalam pembuatan alat ini adalah untuk menghitung waktu. Adapun jenis mikrokontroller jenis lain yang telah dicoba untuk menggantikan fungsi dari IC Mikrokontroller AT89S51 ini adalah jenis mikrokontroller AT89S52, mikrokontroller AT89C51 dan AT mega 8535 yang masing-masing mikrokontroller tersebut mempunyai jenis pembentuk IC yang berbeda-beda sebagai contoh : - AT89S51 yang berarti, AT = atmel ( nama yang memproduksi ), 89 = kode, S = silikon ( bahan pembentuk ic mikrokontroller tersebut ), 51 = seri dari keluarga MCS-51. - AT89S52 yang berarti, AT = atmel ( nama yang memproduksi ), 89 = kode, S = silikon ( bahan pembentuk ic mikrokontroller tersebut ), 52 = seri dari keluarga MCS-51. - AT89C51 yang berarti , AT = atmel ( nama yang memproduksi ), 89 = kode, C = carbon ( bahan pembentuk ic tersebut ), 51 = seri keluarga dari MCS-51. - AT mega 8535 yang berarti, AT = atmel ( nama yang memproduksi ), 8535 = kode. Disamping perbedaan bahan pembentuk ic tersebut, masing-masing ic juga mempunyai fungsi yang berbeda-beda sesuai dengan yang kita inginkan. Namun dalam perangkat ini masing-masing jenis ic tersebut dapat dimasukkan program yang sama dengan program yang dimasukkan kedalam IC Mikrokontroller AT89S51 yang digunakan didalam perangkat ini, yang tujuan utama dari percobaan ini adalah untuk melihat perbedaan waktu yang dihasilkan oleh masing-masing ic mikrokontroller tersebut. Adapun spesifikasi dari masing-masing IC Mikrokontroller yang digunakan untuk Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 21 menggantikan fungsi dari ic mikrokontroller AT89S51 didalam percobaan ini adalah seperti yang ditunjukkan pada tabel dibawah ini. N Jenis Kapasitas O mikrokontroller Penggunaan Tegangan Frekwensi RAM Timer Jalur flash operasi ( MHz ) (x8bit) (16 bit) interupt memory (volt DC) 1 AT89S51 4 Kbyte 1000 kali 4.0 – 5.5 0 – 33 128 2 6 2 AT89S52 8 Kbyte 10.000 kali 4.0 – 5.5 0 – 33 256 3 8 3 AT89C51 4 Kbyte 1000 kali 4.0 – 5.5 0 – 24 128 2 6 4 AT mega 8535 4 Kbyte 100.000 4.5 – 5.5 0 – 16 SRAM 1 6 ( 512 ) 2 (8 bit) EEPROM ( 512 ) Tabel 2.1 Spesifikasi IC Mikrokontroller Dari tabel 2.1 diatas dapat dilihat perbedaan dari tiap – tiap jenis ic mikrokontroller yang digunakan didalam percobaan untuk menggantikan fungsi dari IC mikrokontroller AT89S51 yang digunakan didalam pembuatan perangkat penghitungan waktu secara otomatis ini. Berikut dituliskan perbedaan jenis ic mikrokontroller yang digunakan didalam percobaan menggantikan fungsi dari ic mikrokontroller AT89S51 didalam pembuatan perangkat ini ditinjau dari bahan pembentuk dan bentuk fisik dari ic mikrokontroller tersebut. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 22 1. Mikrokontroller AT89S51 dengan bahan/materi pembuatannya adalah terbuat dari bahan silikon, dengan bentuk fisik seperti gambar dibawah ini Gambar 2.2 IC Mikrokontroller AT89S51 Dari gambar 2.2 diatas dapat dilihat bentuk fisik dari ic mikrokontroller AT89S51 yang digunakan didalam pembuatan perangkat penghitungan waktu secara otomatis. Ic mikrokontroller AT89S51 ini memiliki 40 kaki/pin yang terbagi dalam 4 buah port yakni port 0, port 1, port 2, dan port 3. Dan untuk masing-masing port terdiri atas 8 kaki/pin. 2. Mikrokontroller AT89S52 dengan bahan/materi pembuatnya adalah terbuat dari bahan silikon, dengan bentuk fisik seperti gambar dibawah ini : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 23 Gambar 2.3 IC Mikrokontroller AT89S52 Dari gambar 2.3 diatas dapat dilihat bentuk fisik dari ic mikrokontroller AT89S52 yang digunakan didalam percobaan untuk menggantikan fungsi dari ic mikrokontroller AT89S51 didalam pembuatan perangkat penghitungan waktu secara otomatis ini. Dari jumlah kaki/pin hampir tidak terlihat perbedaan dengan ic mikrokontroller AT89S51 yakni sama – sama memiliki 40 buah pin/kaki, namun terdapat perbedaan pada fungsi dari beberapa kaki/pin pada ic mikrokontroller AT89S51 dengan ic mikrokontroller AT89S52, seperti yang ditunjukkan pada gambar diatas. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 24 3. Mikrokontroller AT89C51 dengan bahan/materi pembuatannya adalah terbuat dari bahan karbon, dengan bentuk fisik seperti gambar dibawah ini : Gambar 2.4 IC Mikrokontroller AT 89C51 Dari gambar 2.4 diatas dapat dilihat bentuk fisik dari ic mikrokontroller AT89C51 yang bahan pembuatnya terbuat dari karbon. Pada ic terdapat banyak kesamaan dengan ic – ic sebelumnya, yakni ditinjau dari segi jumlah kaki/pin dan jumlah port yang terdapat pada ic AT89C51 ini. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 25 4. Mikrokontroller AT mega 8535 dengan bahan pembuat dari silikon, dengan bentuk fisik seperti gambar dibawah ini : Gambar 2.5 IC Mikrokontroller AT mega 8535 Dari hasil percobaan dengan menggantikan fungsi dari IC Mikrokontroller AT89S51 didalam pembuatan alat ini dengan menggunakan beberapa jenis IC Mikrokontroller seperti mikrokontroller AT89S51, Mikrokontroller AT89S52, Mikrokontroller AT89C51, dan Mikrokontroller AT mega 8535. Yang mana didalam melakukan percobaan ini dilakukan untuk melihat perbedaan waktu antara satu jenis IC Mikrokontroller dengan jenis yang lainnnya, maka didapatkan data sebagai berikut : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 26 NO Jenis Perbedaaan waktu dengan jam Tegangan mikrokontroller biasa volt DC ) 1 AT89S51 3 4.5 2 AT89S52 2 4.5 3 AT89C51 5 4.5 4 AT mega 8535 13 4.5 keluaran ( Tabel 2.2 Perbedaan Waktu Untuk Masing-Masing IC Dari hasil data pada tabel 2.1 yang didapat setelah melakukan percobaan dengan menggantikan fungsi dari IC Mikrokontroller AT89S51 dengan jenis IC Mikrokontroller jenis lain, dapat ditarik kesimpulan bahwa perhitungan waktu untuk setiap jenis IC mikrokontroller berbeda – beda dikarenakan oleh beberapa faktor, yakni : 1. Besar nilai frekwensi untuk tiap-tiap IC mikrokontroller, dimana : a. IC mikrokontroller AT89S51, besar nilai frekwensi pada IC ini adalah sebesar 0 – 33 b. MHz. ( 2 ) IC mikrokontroller AT89S52, besar nilai frekwensi pada IC ini adalah sebesar 0 – 33 MHz. ( 3 ) c. IC mikrokontroller AT89C51, besar nilai frekwensi pada IC ini adalah sebesar 0 – 24 MHz. ( 4 ) d. IC mikrokontroller AT mega 8535, besar nilai frekwensi pada IC ini adalah sebesar 0 – 16 MHz. ( 5 ) 2. Besar internal memory data internal RAM ( Random Access Memory ) pada masing-masing IC mikrokontroller, dimana : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 27 a. IC mikrokontroller AT89S51, besar nilai RAM nya sekitar 128 byte. (2) b. IC mikrokontroller AT89S52, besar nilai RAM nya sekitar 256 byte. (3) c. IC mikrokontroller AT89C51, besar nilai RAM nya sekitar 128 byte. (4) d. IC mikrokontroller AT mega 8535, besar nilai SRAM nya sekitar 512 byte. (5) 3. Rangkaian pewaktu untuk masing-masing rangkaian sistem minimum yang digunakan untuk tiap-tiap IC mikrokontroller yang berfungsi untuk menetukan kecepatan dalam mengolah data. Yang mana komponen utama dari rangkaian pewaktu tersebut adalah sebuah kristal yang besarnya sangat tergantung dalam menentukan siklus pulsa yang dihasilkan. 2.2 Beberapa Jenis Aplikasi dari Mikrokontroller AT89S51 Didalam perkembangan dunia elektronika pada saat ini banyak dibuat alat-alat yang dapat membantu pekerjaan manusia. Pada umumnya alat tersebut dibuat dengan alasan untuk mempermudah pekerjaan manusia yang dianggap sulit dilakukan, memperbaharui alat-alat yang sudah ada sebelumnya dengan fungsi dan bentuk yang berbeda, dan juga menciptakan alat-alat yang sebelumnya belum pernah dibuat. Adapun dari kesemua alat yang dibuat tersebut sudah pastilah membutuhkan sebuah komponen utama yang dapat mengolah dan mengatur fungsi dari alat yang akan atau yang ingin dibuat tersebut. Salah satu komponen utama dari alat-alat yang akan dibuat tersebut adalah sebuah IC yang mampu menampung, menyimpan dan mengeksekusi Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 28 hasil dari keputusan alat tersebut yang pada akhirnya untuk mendapatkan tujuan akhir dari alat tersebut. Adapun IC yang digunakan adalah IC Mikrokontroller yang dapat menampung, menyimpan, dan mengeksekusi data. Dipasaran banyak terdapat jenisjenis IC Mikrokontroller seperti AT89S51,AT89S52,AT mega 8535,IC 74LS244 dan masih banyak lagi. Yang mana dari kesemua jenis IC tersebut mempunyai spesifikasi dan fungsi yang berbeda-beda. Namun untuk beberapa aplikasi yang ditemukan banyak digunakan penggunanaan IC Mikrokontroller AT89S51 dikarenakan jenis IC ini sangat familiar dengan para pengguna yang biasa menciptakan atau membuat rangkaianrangkaian otomatisasi dan logika digital. Dikarenakan IC ini mempunyai harga yang cukup murah namun IC ini mempunyai spesifikasi dan fungsi yang tidak kalah pentingnya dengan jenis IC yang lainnya. Beberapa aplikasi dengan menggunakan IC jenis AT89S51 yang telah ada dibuat adalah : 1. Alat pendeteksi warna dengan menggunakan LDR ( light dependent resistant ) berbasis mikrokontroller AT89S51, dimana cara kerja dari alat ini adalah LDR ( light dependent resistant ) digunakan sebagai sensor warna yang digunakan didalam pembuatan alat ini, LDR akan mendeteksi warna-warna yang diinginkan dengan menunjukkannya melalui sebuah media peraga ( penunjuk ), LDR ( light dependent resistant ) akan mengetahui warna yang ingin ditampilkannya karena pada IC mikrokontroller AT89S51 telah terlebih dahulu diisikan program dengan menentukan batas/range untuk setiap warna yang diinginkan, data tersebut kemudian diumpankan ke LDR sebagai sensor warna yang mendeteksi nilai range dari masing-masing warna tersebut. 2. Thermometer Digital dengan menggunakan LM35 berbasis mikrokontroller AT89S51, dimana cara kerja dari alat ini adalah LM 35 sebagai sensor suhu yang berfungsi untuk mendeteksi suhu ruangan yang inigin dideteksi, yang Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 29 sebelumnya pada IC mikrokontroller AT89S51 telah diisikan program untuk nilai batas-batas suhu yang dapat dideteksi oleh alat tersebut. Data tersebut kemudian diumpankan ke LM35 tersebut untuk mendeteksi suhu yang terdapat pada suatu ruangan. 3. Robot pengikut garis ( linefollower ) berbasis mikrokontroller AT89S51, IC mikrokontroller AT89S51 pada robot ini digunakan sebagai otak yang menyimpan semua data yang ingin dikerjakan oleh robot tesebut yang telah diprogramkan ke dalam ic mikrokontroller AT89S51 ini. Dan masih banyak lagi aplikasi dari penggunaan IC mikrokontroller AT89S51 yang telah dibuat didalam dunia elektronika digital pada saat ini. 2.3 Hubungan Pin – Pin pada Mikrokontroller AT89S51 Didalam pembuatan alat ini mikrokontroller AT89S51 sangat memegang peranan penting didalam menerima, mengolah dan mengeksekusi data yang diberikan untuk menjadi tujuan akhir didalam pembuatan alat ini. Mikrokontroller AT89S51 yang digunakan adalah jenis mikrokontroller yang memiliki 40 kaki/pin yang pada masingmasing kaki tersebut mempunyai fungsi dan tugas tertentu. Kaki/pin pada mikrokontroller AT89S51 ini terbagi didalam 4 buah port yang terdapat didalam IC mikrokontroller ini, yang mana port-port itu adalah P0, P1, P2, P3 yang pada masingmasing port terdiri atas 8 buah kaki/pin. Dalam alat ini masing-masing kaki/pin mempunyai hubungan dan fungsi sebagai berikut : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 30 Gambar 2.6 Pin/kaki IC mikrokontroller AT89S51 Port 0 ( kaki 34 – 39 ) Pada port ini juga terdapat 8 buah kaki/pin dari ic mikrokontroller, port ini merupakan port yang digunakan untuk bagian output, yang berfungsi untuk menampilkan tampilan akhir dari fungsi alat ini. Pada port ini dihubungkan 6 buah LED yang membentuk suatu gabungan menjadi display LED, keenam buah LED tersebut dihubungkan di kaki 34 – 39 atau diport P3.0 – P3.5, yang sebelumnya rangkaian display LED tersebut dihubungkan dengan 6 buah resistor dengan nilai tahanan 100 ohm, yang berfungsi untuk menjaga kestabilan arus yang masuk ke rangkaian display LED tersebut. Port 1 ( kaki 1 – 8 ) Pada port ini terdapat 8 buah kaki/pin ic dari mikrokontroller, didalam penggunaannya hanya akan digunakan 6 buah kaki/pin saja, sedangkan yang 2 kaki lagi tidak Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 31 digunakan. Port 1 ini merupakan port input yang berhubungan dengan sebuah dipswitch/saklar yang mempunyai 6 buah saklar yang bertugas untuk memberikan input ke bagian mikrokontroller. Keenam buah saklar tersebut terhubung dengan kaki P1.0 – P1.5 yang sebelumnya dihubungkan terlebih dahulu dengan sebuah resistor dengan nilai tahanan sebesar 4K7 ohm. Port 2 ( kaki 21 – 28 ) Pada port ini juga terdapat 8 buah kaki/pin dari ic mikrokontroller, port ini merupakan port yang digunakan untuk bagian output, yang berfungsi untuk menampilkan tampilan akhir dari fungsi alat ini. Pada port ini dihubungkan 6 buah LED yang membentuk suatu gabungan menjadi display LED, keenam buah LED tersebut dihubungkan di kaki 23 – 28 atau diport P2.0 – P2.5, pada port ini juga terdapat sebuah buzzer yang digunakan sebagai bagian ouput yang bertugas untuk memberikan output berupa suara, buzzer ini dihubungkan di kaki 22 atau pada port P2.6. Port 3 ( kaki 10 – 17 ) Pada port ini terdapat 8 buah kaki/pin ic dari mikrokontroller, didalam penggunaannya hanya akan digunakan 6 buah kaki/pin saja, sedangkan yang 2 kaki lagi tidak digunakan. Port 3 ini merupakan port input yang berhubungan dengan sebuah dipswitch/saklar yang mempunyai 6 buah saklar yang bertugas untuk memberikan input ke bagian mikrokontroller. Keenam buah saklar tersebut terhubung dengan kaki P3.0 – P3.5 yang sebelumnya dihubungkan terlebih dahulu dengan sebuah resistor dengan nilai tahanan sebesar 4K7 ohm. Terlepas dari ke 4 port tersebut, terdapat 8 buah kaki/pin yang mempunyai fungsi tetap didalam rangkaian mikrokontroller AT89S51, yakni : Kaki/pin 9 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 32 Pada kaki/pin ini berfungsi sebagai bagian reset, yang mana pada bagian ini terhubung dengan sebuah resistor dengan nilai sebesar 10 kilo ohm. Kaki 18 – 19 Pada kaki/pin ini berfungsi sebagai bagian pembangkit pulsa, yang berperan penting dalam kecepatan mengolah data. Pada bagian ini kaki 18 – 19 dihubungkan dengan sebuah kristal dengan nilai 12 MHz dan 2 buah kapasitor dengan nilai 30 piko-farad. Kaki 20 ( ground ) Pada kaki ini berfungsi sebagai kaki ground pada rangkaian mikrokontroller AT89S51. Kaki 40 ( VCC ) Pada kaki ini diberikan tegangan sebesar 5 volt DC ( direct current ), yang mana pada kaki ini merupakan kaki input untuk tegangan pada IC mikrokontroller AT89S51. Namun secara umum kaki/pin dari mikrokontroller AT89S51 dapat dituliskan sebagai berikut : VCC (Pin 40) Suplai tegangan DC. GND (Pin 20) Ground. Port 0 (Pin 39-Pin 32) Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 33 dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex address/data, port ini akan mempunyai internal pull up. Pada saat flash progamming diperlukan eksternal pull up, terutama pada saat verifikasi program Port 2 (Pin 21 – pin 28) Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakse memori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat memberikan output sink keempat buah input TTL. Port 3 (Pin 10 – pin 17) Port 3 merupakan 8 bit port I/O dua arah dengan internal pullup. RST (pin 9) Reset akan aktif dengan memberikan input high selama 2 cycle. ALE/PROG (pin 30) Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 34 Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat selama mengakses memori eksternal. Selain itu, sebagai pulsa input progam (PROG) selama memprogam Flash. PSEN (pin 29) Progam store enable digunakan untuk mengakses memori progam eksternal. EA (pin 31) Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada memori internal. Pada saat flash progamming, pin ini akan mendapat tegangan 12 Volt. XTAL1 (pin 19) Input untuk clock internal. XTAL2 (pin 18) Output dari osilator. ( 1 ) 2.4 Komponen Pendukung 2.4.1 Dipswitch/Saklar Dipswitch/saklar didalam pembuatan alat ini digunakan sebagai bagian input yang memberikan data input ke bagian mikrokontroller AT89S51, yang kemudian pada Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 35 bagian mikrokontroller AT89S51 data tersebut diolah sesuai dengan yang telah diprogramkan. Saklar digunakan untuk mengontrol aliran arus kedalam rangkaian. Arus mengalir ketika kontak-kontak saklar saling bersentuhan ( saklar dinaikkan kedalam keadaan ON ). Dalam keadaan seperti ini, saklar dikatakan membuka atau sambungan ( atau kontak ) dilakukan yang mengakibatkan arus masuk kebagian mikrokontroller sebagai input data masukan. Arus tidak dapat mengalir kedalam rangkaian apabila kontak-kontak tidak saling bersentuhan. Dalam keadaan ini saklar dikatakan menutup atau sambungan diputuskan ( dalam keadaan ini saklar dalam keadaan OFF ). ( 6 ) Gambar dari dipswitch/saklar yang digunakan didalam pembuatan perangkat ini dapat dilihat pada halaman berikutnya. Gambar 2. 7 Dipswitch/Saklar Pada gambar 2.7 diatas tampak bahwa dipswitch/saklar yang digunakan memiliki 6 buah saklar yang merupakan bagian yang memberikan data masukan Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 36 kebagian mikrokontroller AT89S51. Didalam pembuatan alat ini digunakan sebanyak 8 buah dipswitch/saklar yang pada masing-masing dipswitch/saklar terdapat 6 buah saklar pada masing-masing dipswitch/saklar. 2.4.2 LED ( Light Emitting Diode ) Didalam pembuatan alat ini LED sangat berperan penting, dikarenakan LED digunakan sebagai penampil dari data yang ingin ditampilkan yang merupakan tujuan akhir dari pembuatan alat ini. Didalam pembuatan alat ini dibutuhkan sebanyak 48 buah LED yang kemudian digabungkan menjadi satu yang akhirnya membentuk display LED yang berfungsi sebagai penampil dari data akhir yang diinginkan didalam pembuatan alat ini. Secara umum Light emitting diode atau yang biasa disingkat dengan nama LED menghasilkan cahaya ketika arus mengalir melewatinya. Pada sebuah LED terdapat 2 buah kaki atau yang sering dikenal dengan nama katoda dan anoda. Untuk membedakan kaki anoda dan katoda adalah dengan memperhatikan bagian rim dari LED tersebut. Bagian rim ini terletak disamping dari LED tersebut, biasanya rim ini dibuat berbentuk datar pada sisi yang berdekatan dengan kaki katoda, yang sekaligus menandakan bahwa kaki tersebut adalah kaki katoda dan kaki selebihnya adalah kaki anoda yang merupakan kutub postif dari LED tersebut. Sebuah LED membutuhkan arus sekitar 20 mA untuk memancarkan cahaya dengan kecerahan maksimum. ( 6 ) Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 37 Gambar 2. 8 Simbol LED 2.4.3 Buzzer/Alarm Didalam penggunaannya buzzer/alarm digunakan sebagai pemberi output berupa suara, suara yang dihasilkan oleh buzzer/alarm tersebut berfungsi untuk memberikan peringatan jikalau ada komputer yang waktunya telah habis/selesai digunakan. Buzzer/alarm yang digunakan didalam pembuatan alat ini adalah buzzer/alarm jenis piezo elektris, buzzer jenis ini beroperasi pada tegangan 6 volt dan membutuhkan arus sebesar 20mA, yang mana kabel dayanya diberi warna merah dan hitam. Sambungan kabel merah ke jalur negatif yang pada pembuatan alat ini terhubung pada port 2, tepatnya pada kaki 22 pada mikrokontroller. Intensitas suara yang dihasilkannya berkisar antara 100 dB hingga 110 dB. Suara yang dihasilkannya bersifat kontinu namun dapat dimodifikasi untuk menghasilkan bunyi dengan periodeperiode pendek. ( 6 ) Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 38 Gambar 2.9 Simbol Buzzer/Alarm Dari gambar 2.9 diatas terlihat simbol buzzer/alarm yang digunakan didalam rangkaian skematik didalam pembuatan alat ini. 2.5. Perangkat Lunak 2.5.1 Bahasa Pemrograman dengan Menggunakan BASCOM-8051 Bahasa yang digunakan untuk memprogram IC AT89S51 yang digunakan didalam pembuatan alat ini adalah Bahasa BASCOM-8051. BASCOM-8051 adalah program BASIC compiler berbasis Windows untuk mikrokontroler keluarga 8051 seperti AT89C51, AT89C2051, dan yang lainnya. BASCOM-8051 merupakan bahasa pemrograman tingkat tinggi ayng menggunakan bahasa BASIC yang dikembangkan dan dikeluarkan oleh MCS Elektronik sebagai perusahaan yang mempunyai hak paten atas software tersebut. Berikut dijelaskan spesifikasi dari BASCOM – 8051: Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 39 1.Tipe Data Setiap variabel dalam BASCOM memiliki tipe data yang menunjukkan daya tampungnya. Hal ini berhubungan dengan penggunaan memori mikrokontroler. Berikut adalah tipe data pada BASCOM berikut keterangannya, seperti terlihat pada tabel 2.3 dihalaman berikutnya : Tipe Data Ukuran (byte) Range Bit 1/8 - Byte 1 0 – 255 Integer 2 -32,768 - +32,767 Word 2 0 – 65535 Long 4 -214783648 - +2147483647 Single 4 - Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 40 String hingga 254 byte - Tabel 2.3 Tipe data BASCOM 2. Variabel Variabel dalam sebuah pemrograman berfungsi sebagai tempat penyimpanan data atau penampungan data sementara, misalnya menampung hasil perhitungan, menampung data hasil pembacaan register, dan lainnya. Variabel merupakan pointer yang menunjukkan pada alamat memori fisik dan mikrokontroler. Sebelum digunakan, maka variabel harus dideklarasikan terlebih dahulu. Dalam BASCOM, ada beberapa cara untuk mendeklarasikan sebuah variabel. Cara pertama adalah menggunakan pernyataan ‘DIM’ diikuti nama tipe datanya. Contoh pendeklarasian menggunakan DIM sebagai berikut: Dim nama as byte Dim tombol1 as integer Dim tombol2 as word Dim tombol3 as word Dim tombol4 as word Dim Kas as string*1 Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 41 3. Alias Dengan menggunakan alias, variabel yang sama dapat diberikan nama yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias digunakan untuk mengganti nama variabel yang telah baku, seperti port mikrokontroler. LEDBAR alias P1 Tombol1 alias P0.1 Tombol2 alias P0.2 Dengan deklarasi seperti diatas, perubahan pada tombol akan mengubah kondisi P0.1. Selain mengganti nama port, kita dapat pula menggunakan alias untuk mengakses bit tertentu dari sebuah variabel yang telah dideklarasikan. Dim LedBar as byte Led1 as LedBar.0 Led2 as LedBar.1 Led3 as LedBar.2 4. Konstanta Dalam BASCOM, selain variabel kita mengenal pula konstanta. Konstanta merupakan variabel pula. Perbedaannya dengan variabel biasa adalah nilai yang dikandung tetap. Dengan konstanta, kode program yang kita buat akan lebih mudah Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 42 dibaca dan dapat mencegah kesalahan penulisan pada program kita. Misalnya, kita akan lebih mudah menulis phi daripada menulis 3,14159867. Sama seperti variabel, agar konstanta bias dikenali oleh program, maka harus dideklarasikan terlebih dahulu. Berikut adalah cara pendeklarasian sebuah konstanta. Dim A As Const 5 Dim B1 As Const &B1001 Cara lain yang paling Mudah: Const Cbyte = &HF Const Cint = -1000 Const Csingle = 1.1 Const Cstring = “test” 5. Array Dengan array, kita bisa menggunakan sekumpulan variabel dengan nama dan tipe yang sama. Untuk mengakses variabel tertentu dalam array, kita harus menggunakan indeks. Indeks harus berupa angka dengan tipe data byte, integer, atau word. Artinya, nilai maksimum sebuah indeks sebesar 65535. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 43 Proses pendeklarasian sebuah array hampir sama dengan variabel, namun perbedaannya kita pun mengikutkan jumlah elemennya. Berikut adalah contoh pemakaian array; Dim kelas(10) as byte Dim c as Integer For C = 1 To 10 a(c) = c p1 = a(c) Next Program diatas membuat sebuah array dengan nama ‘kelas’ yang berisi 10 elemen (1-10) dan kemudian seluruh elemennya diisikan dengan nilai c yang berurutan. Untuk membacanya, kita menggunakan indeks dimana elemen disimpan. Pada program diatas, elemen-elemen arraynya dikeluarkan ke Port 1 dari mikrokontroler. 2.5.2 Software Downloader Untuk mengeksekusi program-program yang telah dimasukkan kedalam IC mikrokontroller dibutuhkan sebuah software yang berfungsi untuk mengkompile program-program yang telah dimasukkan. Software yang digunakan untuk mengkompile program-program yang dimasukkan tersebut digunakan software ISP- Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 44 Flash Programmer 3.0a yang dapat didownload dari internet. Tampilannya seperti gambar di bawah ini Gambar 3.0 ISP- Flash Programmer 3.a Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file dan kemudian dengan menekan write untuk mengisikan program kedalam IC mikrokontroller . Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 45 BAB 3 PERANCANGAN ALAT 3.1 Diagram Blok Rangkaian Diagram blok merupakan gambaran dasar untuk merancang dan akhirnya membuat suatu system/alat yang akan dibuat.adapun alat yang akan dibuat disini adalah suatu system penghitungan waktu secara otomatis. Secara garis besar perancangan system penghitungan waktu secara otomatis ini menggunakan beberapa rangkaian utama lainnya, yakni : rangkaian mikrokntroller AT89S51, rangkaian power supply, rangkaian dipswitch/saklar, rangkaian display led, dan rangkaian buzzer/alarm. Diagram blok dari system penghitungan waktu secara otomatis yang akan dibuat adalah : Rangkaian power supply Mikrokontroller AT 89S51 Buzzer/Alar m Dipswitch/saklar Display LED Gambar 3.1 Diagram Blok Rangkaian Dari gambar 3.1 diatas dapat dituliskan fungsi dari beberapa rangkaian utama tersebut, antara lain : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 46 1. Rangkaian power supply berfungsi sebagai rangkaian yang memberikan tegangan DC sebesar 5 volt ke semua rangkaian pendukung yang membentuk alat ini. 2. Rangkaian dipswitch/saklar berfungsi sebagai input yang memberi data masukan ke bagian mikrokontroller untuk diolah sesuai dengan program yang telah diisikan, dimana data yang diberikan berupa kondisi logika high ( saklar dalam keadaan on ) dan kondisi logika low ( saklar dalam keadaan off ). 3. Rangkaian mikrokontroller AT89S51 berfungsi sebagai rangkaian utama/otak dari semua rangkaian yang mengendalikan semua system yang digunakan didalam pembuatan alat ini. 4. Rangkaian buzzer/alarm berfungsi sebagai rangkaian output yang memberikan ouput berupa suara pada saat waktu yang telah dihitung oleh mikrokontroller selesai dihitung. 5. Rangkaian display led berfungsi sebagai penampil data keluaran yang dihasilkan oleh alat ini. 3.2 Perancangan Power Supply ( PSA ) Rangkaian power supply (PSA) yang dibuat terdiri dari tiga keluaran, yaitu positif 5 volt DC, negative 5 volt DC dan positif 12 volt DC. Keluaran positif 5 volt DC digunakan untuk menghidupkan seluruh rangkaian, keluaran positif 12 volt DC digunakan untuk menghidupkan buzzer/alarm. Rangkaian tampak seperti gambar di bawah ini: Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 47 LM7812CT LINE VREG VOLTAGE (+) 12 Volt DC COMMON 100uF LM7805CT TIP32C 2 220 V AC D1 1 IN 100 0V (+) 5 Volt DC Vreg 4 3 OUT 1.0k 330 1B4B42 1uF-POL 2200uF 1.0k 2200uF Ground 100uF COMMON VOLTAGE LINE VREG (-) 12 Volt DC LM7912CT Gambar 3.2. Rangkaian Power Supply (PSA) Didalam pembuatan rangkaian power supply ini digunakan banyak komponen yang membentuk rangkaian power supply ini. Diantaranya adalah Trafo CT stepdown, diode, kapasitor, regulator 7805, regulator 7912, resistor dan led. Berikut ini diterangkan proses kerja dari power supply yang digunakan. Trafo CT yang dipakai adalah trafo stepdown yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan empat buah diode yang terangkai menggunakan prinsip jembatan wheatstone, selanjutnya 12 volt DC akan diratakan oleh kapasitor 2200 μF. Regulator tegangan 5 volt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupply arus apabila terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan (LM7805CT) Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 48 tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan (+) 12 volt DC langsung dihasilkan oleh regulator tegangan LM7812. Dan tegangan (-) 12 volt dihasilkan oleh regulator tegangan LM7912 sebagai tambahan. 3.3 Perancangan Rangkaian Mikrokontroller AT89S51 Rangkaian mikrokontroller AT89S51 pada perangkat ini berfungsi sebagai pusat kendali dari seluruh sistem. Rangkaian mikrokontroler AT89S51 ini akan menunggu kondisi pada saklar manual, apabila kondisi saklar dalam keadaan high (on) maka mikrokontroller mulai menghitung dan akan mengeksekusi system secara otomatis.Sebaliknya apabila keadaan saklar dalam kodisi low (off), maka mikrokontroller akan berhenti menghitung waktu.. Adapun perintah otomatis yang akan dikerjakan dengan system kode biner karena mikrokontroller hanya mengenal system bilangan biner yaitu 0 dan 1, yang mana 0 berarti kondisi low (tegangan 0 volt) dan 1 ( tegangan 5 volt) yang berarti kondisi high. Selanjutnya mikrokontroller akan membandingkan dengan data biner yang benar yang terprogram pada mikrokontroller . ketika data yang diterima sesuai dengan kondisi yang benar dengan kata lain sesuai dengan keadaan yang telah terprogram, maka mikrokontroller akan mulai menghitung dan mengeksekusi perintah yang sesuai dengan kondisi yang telah terperogram dan dilanjutkan dengan mengaktifkan buzzer/alarm dan display led. Adapun konstruksi dari mikrokontroller AT89S51 dapat dilihat pada gambar 3.3 dihalaman berikutnya : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 49 V CC AT89S8252 1 2 3 4 V CC 5V 5 6 7 8 10uF P1.0 Vcc P1.1 P0.0 (AD0) P1.2 P0.1 (AD1) P1.3 P0.2 (AD2) P1.4 P0.3 (AD3) P1.5 P0.4 (AD4) P1.6 P0.5 (AD5) P1.7 P0.6 (AD6) 9 10 11 12 13 V CC 5V 14 15 16 4.7k 17 2SA733 18 19 330 30pF P3.0 (RXD) P3.1 (TXD) P0.7 (AD7) EA/VPP ALE/PROG P3.2 (INT0) PSEN 2 20 30pF 39 38 37 36 35 34 33 32 31 30 29 P3.3 (INT1) P2.7 (A15) P3.4 (T0) P2.6 (A14) P3.5 (T1) P2.5 (A13) P3.6 (WR) P2.4 (A12) P3.7 (RD) P2.3 (A11) XTA L 12 MHz 1 RST 40 XTAL2 P2.2 (A10) XTAL1 P2.1 (A9) GND P2.0 (A8) 27 26 25 24 23 22 21 Gambar 3.3. Rangkaian mikrokontroler AT89S51 Komponen utama dari rangkaian ini adalah IC mikrokontroler AT89S51. Kapasitor 10 µF dan resistor 10K ohm bekerja sebagai “ power on reset” bagi mikrokontroler AT89S51 dan kristal 12 MHZ bekerja sebagai penentu nilai clock/frekwensi yang menentukan kecepatan data dalam mengolah data, sementara kapasitor 30 µF bekerja sebagai rangkaian pendukung dari rangkaian clock/frekwensi tersebut. Resistor 330 ohm digunakan sebagai penahan arus agar tegangan yang masuk ke led tetap stabil, transistor 2SA733 sebagai saklar otomatis terhadap LED, resistor 4K7 kiloohm digunakan sebagai penahan arus yang masuk ke basis transistor NPN. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 5V 50 Untuk menguji rangkaian mikrokontroller ini berjalan dengan baik maka pada pin 17 yang merupakan P3.7 dihubungkan dengan transistor dan sebuah LED. Ini dilakukan hanya untuk menguji apakah rangkaian minimum mikrokontroller AT89S51 sudah bekerja atau belum. Dengan memberikan program sederhana pada mikrokontroller tersebut, dapat diketahui apakah rangkaian minimum tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubung ke Pin 17 sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum tersebut telah siap digunakan. Namun setelah seluruh rangkaian disatukan, LED yang terhubung ke pin 17 ini tidak digunakan lagi. Pada P0 atau pada PIN 1 s/d 8 dihubungkan resistor 4,7K ohm, yang mana resistor ini akan menjaga kondisi dari P0 tersebut agar tegangan yang masuk tetap stabil. 3.4 Perancangan Rangkaian Dipswitch/Saklar Rangkaian dipswitch/saklar didalam perangkat ini digunakan sebagai bagian yang memberikan input data masukan ke mikrokontroller. Data yang diberikan ke bagian mikrokontroller tersebut berupa data logika digital yang terdiri dari 2 kondisi, yakni kondisi logika high ( 1 ) yang mana tegangan keluarannya adalah 5 volt DC, dan kemudian adalah kondisi logika low ( 0 ) yang mana tegangan keluarannya adalah 0 volt DC. Rangkaian dipswitch/saklar yang digunakan didalam perangkat ini berjumlah 8 buah dipswitch/saklar yang pada masing-masing dipswitch/saklar tersebut terdiri dari 6 buah saklar untuk tiap dipswitch/saklar tersebut. Rangkaian dipswitch/saklar tersebut sebelum dihubungkan ke bagian mikrokontroller terlebih dahulu dihubungkan dengan resistor untuk tiap masing-masing saklarnya, yang berarti dibutuhkan 6 buah resistor dengan nilai tahanan sebesar 4700 kiloohm yang berfungsi untuk menjaga kestabilan Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 51 tegangan yang keluar dari resistor dan yang masuk ke mikrokontroller. Berikut gambar rangkaian dari dipswitch/saklar tersebut : Gambar 3.4. Rangkaian Dipswitch/Saklar Dari gambar 3.4 diatas dapat dilihat bahwa terdapat 6 buah saklar yang mana kaki 1 sampai 6 yang dalam keadaan off dihubungkan dengan ground sedangkan kaki 7 sampai 12 dihubungkan dengan 6 buah resistor dengan nilai 4700 kiloohm yang selanjutnya dihubungkan dengan mikrokontroller AT89S51. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 52 3.5 Perancangan Rangkaian Buzzer/Alarm Didalam perangkat ini buzzer/alarm digunakan sebagai bagian output berupa suara. Buzzer/alarm memberikan output suara jikalau mikrokontroller telah selesai menghitung waktu yang telah diprogramkan ke ic mikrokontroller tersebut. Untuk perancangan rangkaian buzzer/alarm didalam perangkat ini tidak dibutuhkan rangkaian pendukung, dikarenakan buzzer/alarm yang digunakan telah dijual dalam bentuk fisik yang siap pakai. Buzzer/alarm hanya perlu dihubungkan dengan port 2.1 atau pada kaki 22 untuk kutub negative dan untuk kutub positifnya dihubungkan dengan output power supply dengan tegangan 12 volt. Dan untuk mengaktifkannya hanya perlu diprogram dibagian ic mikrokontroller tersebut. Pada halaman Berikutnya ditampilkan gambar 3.5 rangkaian buzzer/alarm yang digunakan didalam pembuatan perangkat ini : Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 53 Gambar 3.5 Hubungan Rangkaian Buzzer/alarm Dari gambar 3.5 diatas dapat dilihat hubungan antara ic mikrokontroller AT89S51 yang dihubungkan dengan port 2.1 untuk kaki negatifnya dan untuk kutub positifnya langsung dihubungkan dengan tegangan power supply ( PSA ) dengan besar tegangan sebesar 12 volt DC. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 54 3.6 Perancangan rangkaian display LED Untuk rangkaian ini digunakan sebagai rangkaian penampil dari data ouput yang ingin ditampilkan. Rangkaian display led ini menampilkan ilustrasi dari komputer yang aktif dan komputer yang waktunya telah selesai digunakan. Dalam pembuatan alat digunakan sebanyak 48 buah led yang digunakan sebagai display penampil data keluaran. Untuk rangkaian display led ini dihubungkan dengan ic mikrokontroller yang didalam pembuatan alat ini digunakan sebanyak 4 buah ic mikrokontroller dengan pembagian untuk tiap mikrokontroller terdapat 12 buah led sebagai display led. Berikut ditampilkan rangkaian display led : Gambar 3.6 Hubungan rangkaian display led Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 55 Dari gambar 3.6 diatas digambarkan hubungan rangkaian display led yang digunakan sebagai penampil data output didalam perangkat ini yang disusun secara paralel. Rangkaian display led tersebut tersusun atas beberapa komponen-komponen tambahan yakni : mikrokontroller AT89S51 sebagai otak yang akan memberi perintah untuk menampilkan data output kebagian display led, yang pada bagian ini digunakan 2 buah port ic mikrokontroller tersebut ( port P0.0 – P0.5 ), sebelum dihubungkan dengan led terlebih dahulu dihubungkan dengan resistor yang mempunyai tahanan 100 ohm, dan untuk pembuatan perangkat ini digunakan sebanyak 48 buah led dengan 48 buah resistor pula. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 56 BAB 4 PENGUJIAN ALAT 4.1 Pengujian Rangkaian Power Supply ( PSA ) Pengujian pada rangkaian power supply ini difokuskan dalam pengukuran tegangan keluaran yang dihasilkan oleh rangkaian power supply ini. Dikarenakan power supply ini sangat berpengaruh dalam kinerja dari perangkat ini. Pengujian rangkaian ini digunakan dengan menggunakan multimeter digital yang arah indikatornya diputar pada settingan untuk mengukur tegangan. Alasan digunakannya multimeter digital didalam pengukuran ini dikarenakan multimeter digital memiliki data yang lebih akurat daripada menggunakan multimeter analog. Dari hasil pengujian pada rangkaian ini didapatkan tegangan keluaran sebesar + 5,1 volt DC dan + 12 volt DC. Tegangan sebesar 5,1 volt DC yang dihasilkan oleh rangkaian ini digunakan untuk mengaktifkan tegangan kesemua rangkaian pendukung didalam pembuatan perangkat ini seperti : rangkaian mikrokontroller AT89S51, rangkaian dipswitch/saklar, dan rangkaian display led, kecuali rangkaian buzzer/alarm, dikarenakan rangkaian ini membutuhkan tegangan sebesar 12 volt DC untuk mengaktifkannya yang dihasilkan oleh rangkaian ini juga. 4.2 Pengujian Rangkaian Mikrokontroller AT89S51 Untuk melakukan pengujian pada rangkaian mikrokontroller AT89S51 ini dapat dilakukan dengan memasukkan beberapa program sederhana yang berguna untuk mengetahui apakah rangkaian ini telah bekerja atau tidak. Bahasa Pemrograman yang dimasukkan kedalam mikrokontroller AT89S51 ini adalah bahasa pemrograman Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 57 BASCOM. Berikut adalah program yang diberikan untuk mengetahui apakah rangkaian mikrokontroller AT89S51 ini bekerja : dO ResetP0.2 Waitms 50 Set P2.1 Waitms 50 LOOP Program di atas bertujuan untuk menghidupkan Buzzer yang terhubung ke P2.1 selama ± 50 milidetik kemudian mematikannya selama ± 50 milidetik secara terus menerus. Perintah Reset P0.2 akan menjadikan P0.2 berlogika low yang menyebabkan led pada port P0.2 tidak aktif, sehingga Buzzer dalam kondisi aktif. Perintah waitms akan menyebabkan Buzzer ini akan aktif selama lebih kurang 50 milidetik dan setelah itu tidak aktif. Perintah loop digunakan agar program terus berulang kebagian program lainnya. 4.3 Pengujian Rangkaian Dipswitch/Saklar Didalam perangkat ini, rangkaian dipswitch/saklar dapat dilakukan pengujian dengan menggunakan sebuah multimeter analog untuk melihat dipswitch/saklar tersebut dapat bekerja atau tidak. Yang diuji didalam rangkaian ini adalah ada tidaknya Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 58 tegangan keluaran yang dihasilkan oleh 6 buah saklar yang terdapat didalam sebuah dipswitch pada saat keenam saklar tersebut dalam keadaan on ( aktif ). Cara pengujian yang dilakukan pada rangkaian ini adalah keenam buah saklar yang terdapat pada dipswitch/saklar tersebut diatur dalam keadaan off. setelah itu multimeter analog diatur/diset untuk mengukur tegangan, kemudian kedua buah alat pendeteksi yang terdapat di multimeter tersebut dihubungkan dengan keenam saklar tersebut dengan cara mengetes saklar tersebut secara satu per satu tersebut, yang mana kutub positif dari alat pendeteksi pada multimeter tersebut dihubungkan dengan kaki dipswitch yang on dan yang kutub negative dihubungkan dengan kaki dipswitch yang off, setelah itu saklar yang akan diukur tegangannya itu dinaikkan ( saklar dalam kondisi on ), pada multimeter dilihat perubahan tegangan yang dihasilkan. Apabila tegangan yang ditampilkan oleh multimeter sebesar 5 volt, maka saklar tersebut dinyatakan baik dan dapat bekerja. Akan tetapi jika tegangan tidak berubah pada saat saklar dinaikkan kekeadaan on ( tetap 0 volt ) maka saklar tersebut tidak dapat bekerja. Begitulah cara untuk pengujian saklar-saklar berikutnya. 4.4 Pengujian Rangkaian Buzzer/Alarm Untuk melakukan pengujian pada rangkaian ini dapat dilakukan dengan 2 cara, yakni : 1. Kabel Vcc dari Buzzer ( yang berwarna merah ) dihubungkan dengan tegangan keluaran power supply sebesar 12 volt dc, kemudian kabel negatifnya ( kabel yang berwarna hitam ) dihubungkan ke port 2, tepatnya di port 2.1 pada ic mikrokontroller AT89S51 dan selanjutnya diberikan program sederhana yang Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 59 menggunakan bahasa pemrograman BASCOM. Berikut adalah program yang digunakan untuk menyalakan buzzer/saklarsebagai berikut: Set P2.1 = 1 Yang artinya isikan logika 1 pada P2.1 maka buzzer/alarm akan menyala. 2. Kabel Vcc langsung dihubungkan dengan tegangan keluaran sebesar 12 volt dc dari power supply, dan kemudian kabel negatif dari buzzer/alarm langsung dihubungkan dengan tegangan negative dari tegangan keluaran dari power supply, maka buzzer/alarm akan langsung menyala. 4.5 Pengujian Rangkaian Display LED Untuk melakukan pengujian pada rangkaian ini dapat dilakukan dengan memasukkan langsung program menghitung pada ic mikrokontroller AT89S51 atau dengan mencek satu per satu LED tersebut dengan menggunakan multimeter analog. Pegujian rangkaian display led dengan cara memasukkan program dapat dilakukan dengan langsung mengisikan program ke ic mikrokontroller AT89S51. Berikut program yang diisikan : If P1.2 = 0 then Set P0.4 Incr detik3 Else Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 60 Reset P0.4 Set P2.1 Detik3 = 0 End if Keterangan dari program ini adalah if P1.2 =0 then artinya jikalau pada bagian port 1.2 saklar dalam keadaan low ( tidak aktif ) maka set P0.4 yang berarti aktifkan led pada port p0.4, incr detik3 berarti tambahkan waktu ( dalam arti program menunggu sampai ada perintah pada P1.2 dalam keadaan high baru waktu akan ditambahkan ). Else menyatakan lain, yang berarti jikalau ada kondisi selain dari perintah yang dimasukkan, maka reset P0.4 yang berarti non aktifkan led diport P0.4, dan selanjutnya aktifkan alarm diport P2.1, detik3 = 0 artinya waktu mulai menghitung dari 0 sampai 3600 detik dikarenakan ada perintah else yang berarti ada kemungkinan lain dari perintah yang dituliskan sebelumnya. 4.6 Kelemahan Alat Didalam pembuatan perangkat ini terdapat 2 kelemahan yang paling fatal seperti diantaranya display led yang nyalanya kurang sempurna, dan buzzer terkadang sering menyala dengan sendirinya. Hal yang menyebabkan terjadinya kelemahan ini adalah : 1. Solderan pada papan PCB ( printed circuit board ) yang kurang sempurna, yang menyebabkan timah solderan tidak menempel seutuhnya sehingga kaki komponen tidak menempel dengan sempurna papan PCB dan terkadang tidak terhubung antara kaki komponen yang satu dengan yang lainnya. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 61 2. Adanya jalur rangkaian pada papan PCB (printed circuit board ) yang putus sehingga ada beberapa komponen yang tidak bekerja. 3. Adanya jalur yang short ( terhubung ) yang diakibatkan terlampau rapatnya jalur rangkaian, penggunaan jumper yang terlampau banyak dan ponyelderan yang kurang baik. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 62 BAB 5 KESIMPULAN DAN SARAN 5.1 Kesimpulan Dari hasil pembuatan perangkat ini hingga pengujian dan pembahasan perangkat ini, maka penulis dapat menarik kesimpulan, antara lain : 1. Mikrokontroller AT89S51 digunakan sebagai komponen yang berfungsi untuk menghitung waktu yang merupakan tujuan akhir dari pembuatan perangkat ini. 2. System penghitungan waktu dengan menggunakan IC Mikrokontroller AT89S51 sebagai otak dari perangkat ini dan dengan memanfaatkan komponenkomponen pendukung lainnya dapat memudahkan system penghitungan waktu yang datanya diberikan secara acak ( random ). 3. Tampilan display led dan isyarat berupa suara dapat memudahkan untuk mengetahui keadaan berakhir atau tidaknya perhitungan waktu. 5.2 Saran Setelah melakukan penulisan ini diperoleh beberapa hal yang dapat dijadikan saran untuk dapat melakukan perancangan lebih lanjut, yaitu : 1. Agar dilakukan peningkatan kemampuan perangkat ini sehingga makin cerdas dengan mengkombinasikan dengan komponen-komponen lain sehingga perangkat ini dapat bekerja lebih baik lagi. 2. Agar perangkat atau rangkaian yang digunakan tidak terganggu, sebaiknya perangkat ini diletakkan ditempat yang aman dan terlindungi sehingga penggunaannya lebih efektif. 3. Untuk dimasa yang akan datang, agar perangkat ini dapat lebih ditingkatkan lagi cara kerjanya dan lebih dikembangkan lagi aplikasinya. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009. 63 DAFTAR PUSTAKA Malvino, Albert Paul, 2003. PRINSIP – PRINSIP ELEKTRONIKA, jilid 1, Edisi Pertama, Jakarta : Salemba Teknik. Owen, Bishop, 2002, DASAR – DASAR ELEKTRONIKA, Jakarta: Erlangga. Samuel, C Lee, 1994, RANGKAIAN DIGITAL DAN RANCANGAN LOGIKA, Edisi ketiga, Jakarta : Erlangga. www.google.com/arsitektur AT89S51. Halasson Daniel Harianto Silitonga : Perangkat Penghitungan Waktu Secara Otomatis Berbasis Mikrokontroller AT89S51, 2009.