• Tidak ada hasil yang ditemukan

PENAMPIL WAKTU PADA PERTANDINGAN TINJU BERBASIS MIKROKONTROLER AT 89S51

N/A
N/A
Protected

Academic year: 2019

Membagikan "PENAMPIL WAKTU PADA PERTANDINGAN TINJU BERBASIS MIKROKONTROLER AT 89S51"

Copied!
190
0
0

Teks penuh

(1)

TUGAS AKHIR

Diajukan untuk memenuhi salah satu syarat Memperoleh gelar Sarjana Teknik

Program Studi Teknik elektro

Fakultas Teknik Universitas Sanata Dharma

Disusun oleh : Laurentius Tutus Adhi P.

NIM : 995114036

JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA YOGYAKARTA

2007

(2)

FINAL PROJECT

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degre

In Electrical Engineering

Compiled By Laurentius Tutus Adhi P.

NIM : 995114036

ELECTRICAL ENGINEERING STUDY PROGRAM ELECTRICAL ENGINEERING DEPARTMENT

ENGINEERINGFACULTY SANATA DHARMA UNIVERSITY

2007

(3)

PENAMPIL WAKTU PADA PERTANDINGAN TINJU BERBASIS MIKROKONTROLER AT 89S51 (THE TIME DISPLAY IN BOXING BASED ON

MICROCONTROLLER AT89S51)

Disusun oleh :

Laurentius Tutus Adhi P

NIM : 995114036

Telah disetujui oleh :

Dosen Pembimbing

Martanto, S.T., M.T. tanggal :25 Januari 2007

(4)

BERBASIS MIKROKONTROLER AT 89S51 (THE TIME DISPLAY IN BOXING BASED ON

MICROCONTROLLER AT89S51)

Disusun oleh : Laurentius Tutus Adhi P

995114036

Telah dipertahankan di depan Panitia Penguji pada tanggal : 30 Januari 2007

dan dinyatakan memenuhi syarat.

Susunan Panitia Penguji :

Nama Lengkap Tanda Tangan

Ketua : B. Djoko Untoro Suwarno, S.Si., M.T., ...

Sekretaris : Martanto, S.T., M.T., ...

Anggota : Ir. Tjendro ...

Anggota : Pius Yozy Merucahyo, S.T., M.T., ...

Yogyakarta,... Fakultas Teknik

Universitas Sanata Dharma Dekan,

Ir. Greg. Heliarko S.J.,S.S.,B.S.T.,M.A.,M.Sc

(5)

ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah”

Yogyakarta,

Laurentius Tutus Adhi P

(6)

Skripsi ini dipersembahkan untuk :

¾ Gusti Yesus yang telah memberi saya hidup

¾ Kepada bapak dan ibu serta adikku yang sangat kucintai ¾ Semua teman – teman senasib seperjuangan

(7)

alat penampil waktu pada pertandingan tinju yang proses kerjanya dikendalikan oleh mikrokontroler AT89SA51.

Mikrokontroler diprogram sebagai penampil waktu dengan menggunakan bahasa assembly dan menggunakan programmer kit untuk men download program kedalam mikrokontroler tersebut. Sebagai masukan digunakan tiga tombol, yaitu tombol start, reset, dan pause. Alat penampil waktu ini akan mulai bekerja bila tombol start ditekan. Dan sebagai keluaran digunakan LCD 2 x 16 karakter untuk menampilkan waktu setiap ronde dan waktu istirahat. Untuk waktu setiap rondenya telah di setting 3 menit dan untuk waktu istirahat adalah 1 menit. Selain LCD, keluaran juga menggunakan buzzer yang berfungsi sebagai bel tanda waktu pertandingan setiap ronde dimulai ataupun telah habis.

Kata Kunci : penampil waktu ; mikrokontroler AT89S51

(8)

Using assembly language, microcontroller as programed as a timer display and the program is download by programmer kit. As input button it use start, reset, and pause button. This timer display will work if the start button is pushed. As an output LCD caracter 2 x 16 is use to show the time for every match period and time out. The time is set 3 minutes for one periode and 1 minutes for time out.

Beside use LCD as an out pat, this display timer also use buzzer that function as bell that rings in the beginning and in the end of each periode.

Key word : timer display, microcontroller AT89S51

(9)

dan karunia-Nya sehingga penulis dapat menyelesaikan penulisan skripsi ini tepat

pada waktunya sesuai dengan yang diharapkan. Tugas akhir ini diberi judul :

Penampil Waktu Pada Pertandingan Tinju Berbasis Mikrokontroler AT89S51.

Tugas Akhir ini ditulis bertujuan untuk memenuhi salah satu syarat dalam

memperoleh gelar sarjana teknik pada program studi Teknik Elektro Universitas

Sanata Dharma. Penulisan skripsi ini didasarkan pada hasil-hasil yang penulis peroleh

berdasarkan pada perancangan alat, pembuatan alat, dan sampai pada pengujian alat

dan pengembangannya.

Penulisan tugas ini dapat diselesaikan berkat bantuan, dorongan, dan

bimbingan dari berbagai pihak. Pada kesempatan ini penulis ingin mengucapkan

terima kasih yang sebesar-besarnya kepada :

1. Romo Ir. Greg. Heliarko S.J.,S.S.,B.S.T.,M.A.,M.Sc., selaku Dekan Fakultas

Teknik Universitas Sanata Dharma.

2. Bapak Agustinus Bayu Primawan S.T., M.Eng., selaku Ketua Jurusan Teknik

Elektro Universaitas Sanata Dharma .

3. Bapak Martanto S.T., selaku dosen pembimbing akademik dan dosen

pembimbing tugas akhir yang telah bersedia memberikan ide, saran,

bimbingan, dan waktu untuk penulis dalam menyelesaikan tugas akhir ini.

4. Bapak dan ibu dosen yang telah banyak memberikan pengetahuan dan

bimbingan kepada penulis selama kuliah di Universitas Sanata Dharma.

5. Bapak Djito selaku pimpinan dan seluruh karyawan sekretariat Teknik

Universitas Sanata Dharma.

(10)

8. Mbah Marto Kakung dan Puteri yang mau menampung penulis.

9. Bapak dan Ibu Sihono sekeluarga serta Bapak dan Ibu Jumiran sekeluarga

yang mau membimbing dan membantu penulis dan sudah penulis anggap

sebagai orang tua kandung, Terima kasih atas bantuan yang tidak mungkin

bisa penulis lupakan dan tidak mungkin bisa terbalaskan.

10. Teman yang kukasihi dan kusayangi Whenny Evietha Dewi, yang telah

memberikan semangat, perhatian, kasih sayang, yang dengan sabar dan

senantiasa menghibur penulis.

11. Teman – teman mahasiswa Teknik Elektro, khususnya angkatan 99 yang

sudah mendahului maupun seperjuangan dengan penulis: Giri, Boim, Bagus,

Apri, Agung, Adri, Rahmad, Brown, Roni, Ari Inyonx, dan semua saja yang

tidak dapat penulis sebutkan satu persatu.

12. Teman – teman Mudika St. Michael : Kodok, Bongkeng, Cempluk, Kentul,

Joko ( dobel ), Nanang ( dobel ), dll.

13. Semua pihak yang tidak dapat disebutkan satu persatu disini, yang tak perlu

diragukan lagi atas segala kebaikan dan ketulusannya dalam membantu

penulis.

Penulis menyadari bahwa pada penulisan skripsi ini masih banyak terdapat

kesalahan dan kekurangannya, maka dari itu segala kritik dan saran dari berbagai

pihak sangat diharapkan agar penulis dapat lebih maju dan lebih baik.

Akhirnya penulis juga berharap semoga karya tulis ini dapat bermanfaat bagi

pembaca. Dan kiranya Tuhan selalu membalas kebaikan kepada semua yang telah

(11)

mendidik mahasiswa yang cemerlang demi kepentingan bersama. Sekian dan terima

kasih.

Yogyakarta, 2 Februari 2007

Penulis,

Laurentius Tutus Adhi P

.

(12)

HALAMAN JUDUL ...ii

HALAMAN PERSETUJUAN...iii

HALAMAN PENGESAHAN ...iv

PERNYATAAN KEASLIAN ...v

PERSEMBAHAN...vi

INTISARI ...vii

ABSTRACT...viii

KATA PENGANTAR ...ix

DAFTAR ISI...xii

DAFTAR GAMBAR ...xvi

DAFTAR TABEL...xviii

BAB I PENDAHULUAN...1

1.1 Judul...1

1.2 Latar Belakang Masalah ...1

1.3 Perumusan Masalah ...2

1.4 Batasan Masalah ...3

1.5 Tujuan Penelitian ...3

1.6 Manfaat Penelitian ...3

1.7 Sistematika Penulisan ...3

(13)

2.2.1 Organisasi Memori AT89S51 ...7

2.2.1.1 Memori Program...8

2.2.1.2 Memori Data ...8

2.2.2 Register Fungsi Khusus ...9

2.2.3 Timer / Counter...12

2.2.3.1 Register TCON ...12

2.2.3.2 Register TMOD ...13

2.2.3.3 Mode Timer / Counter ...14

2.2.4.Port Masukan / Keluaran ( I/O Port)...16

2.2.5.Sistem Interupsi Mikrokontroler AT89S51 ...18

2.2.5.1. Pengaktifan Interupsi ...18

2.2.5.2. Vektor Interupsi ...19

2.3 LCD ( Liquid Crystal Display ) ...20

2.4. Buzzer ...23

BAB III PERANCANGAN ALAT ...26

3.1 Perancangan Perangkat Keras...27

3.1.1 Saklar Push-Button ...27

3.1.2 Rangkaian Reset Mikrokontroler AT89S51 ...28

3.1.3 Rangkaian Osilator ...30

3.1.4 LCD...30

3.1.5 Buzzer ...31

(14)

3.2.1.2.Program Interupsi Timer 0...35

3.2.1.3.Waktu Main dan Istirahat...36

3.2.1.4.Program Interupsi Eksternal 0 ...38

3.2.2.Implementasi Diagram Alir ...39

3.2.2.1.Inisialisasi LCD ...39

3.2.2.2.Menampilkan Karakter Pada LCD...39

3.2.2.3 Program Utama ...42

3.2.2.4.Program Interupsi Timer 0...42

3.2.2.5.Program Eksternal 0...44

BAB IV PENGAMATAN DAN PEMBAHASAN...45

4.1 Cara Kerja Alat ...46

4.2 Pengamatan Waktu ...48

4.2.1.Pengamatan Waktu Tiap Ronde...49

4.2.2.Pengamatan Waktu Istirahat ...50

4.3 Pengamatan Penekanan Tombol ...51

4.3.1.Tombol Start ...51

4.3.2.Tombol Pause...52

4.3.3.Tombol Reset ...52

4.4.Pengamatan Buzzer...53

BAB V KESIMPULAN DAN SARAN ...54

5.1.Kesimpulan ...54

(15)
(16)

Gambar 2.2 Peta Memori Data ...9

Gambar 2.3 Register Program Status Word...11

Gambar 2.4 Register AUXR1 ...11

Gambar 2.4 Register TCON ...12

Gambar 2.6 Register TMOD...13

Gambar 2.7 Register IE...18

Gambar 2.8 Dimensi Layar LCD...20

Gambar 2.9 Rangkaian Penggerak Buzzer ...24

Gambar 3.1.Diagram Blok Alat Penampil Waktu Tinju...26

Gambar 3.2.Rangkaian Reset dengan Mikrokontroler ...27

Gambar 3.3.Rangkaian Reset AT89S51 ...28

Gambar 3.4.Rangkaian Osilator AT89S51 ...30

Gambar 3.5.Rangkaian LCD dengan Mikrokontroler ...31

Gambar 3.6.Rangkaian Buzzer dengan Mikrokontroler ...31

Gambar 3.7.Diagram Alir Program Utama...35

Gambar 3.8.Diagram Alir Program Interupsi Timer 0 ...36

Gambar 3.9.Diagram Alir Sub Program Waktu Main dan Istirahat ...37

Gambar 3.10.Diagram Alir Program Interupsi Eksternal ...38

Gambar 4.1.Bentuk Alat Penampil Waktu pada Pertandingan tinju ...45

Gambar 4.2 Tampilan Awal LCD...46

Gambar 4.3. Tampilan Setelah Tombol Start Ditekan...47

Gambar 4.4.Tampilan Ronde 01 Selesai...47

(17)
(18)

Tabel 2.2 Keterangan Register TCON...13

Tabel 2.3 Keterangan Register TMOD...14

Tabel 2.4. Keterangan Kombinasi M0 dan M1 Register TMOD . ...14

Tabel 2.5. Fungsi Alternatif Port 1 ...17

Tabel 2.6.Fungsi Alternatif Port 3 ...17

Tabel 2.7.Register IE ...19

Tabel 2.8.Daftar Vektor Interupsi...19

Tabel 2.9.Penomoran Pin LCD...22

Tabel 4.1.Data Pengamatan Waktu Tiap Ronde...49

Tabel 4.2.Data Pengamatan Waktu Istirahat...50

Tabel 4.3. Data Pengamatan Penekanan Tombol………...53

(19)

1.1Judul

Alat Penampil Waktu Pada Pertandingan Tinju Berbasis Mikrokontroler

AT89S51.

1.2Latar Belakang Masalah

Perkembangan teknologi yang sangat pesat saat ini telah banyak membuat

perubahan dalam kehidupan manusia sehari–hari. Bahkan telah banyak ditemukan

berbagai macam fasilitas dan kemudahan yang diberikan oleh kemajuan

teknologi, sehingga hal ini membuat manusia merasa sangat membutuhkan

teknologi dalam kehidupannya. Hal–hal yang sebelumnya sulit dan seakan tidak

dapat dilakukan, kini dengan kemajuan teknologi hal tersebut dapat dilakukan

dengan cukup mudah.

Perkembangan teknologi saat ini hampir mencakup di segala bidang,

seperti bidang komunikasi, kesehatan, keamanan, transportasi, bahkan juga olah

raga. Salah satu perkembangan teknologi yang cukup banyak digunakan oleh

manusia dalam kehidupannya sehari–hari ialah peralatan dengan menggunakan

sistem mikrokontroler. Dalam pembahasan kali ini akan dibahas aplikasi

teknologi mikrokontroler dalam bidang olah raga, khususnya olah raga tinju.

Dalam pertandingan tinju, untuk mengontrol waktu yang berjalan yang

beracuan pada stopwatch dan membunyikan bel sebagai tanda untuk dimulai

ataupun berakhirnya setiap ronde diperlukan operator atau petugas. Dengan

(20)

mikrokontroler beberapa bagian dari alat itu yang tidak terintegrasi seperti

stopwatch, bel tanda dapat diintegrasikan kedalam alat. Stopwatch sendiri dapat

dirancang dengan mikrokontroler. Mikrokontroler juga dapat mengendalikan

buzzer yang dapat menghasilkan suara, sehingga suara tersebut dapat digunakan

sebagai bel. Selain itu dengan menggunakan mikrokontroler, kita dapat

menampilkan ronde dan waktu yang sedang berjalan pada sebuah LCD.

1.3Perumusan Masalah

Yang menjadi pokok permasalahan dalam penelitian ini adalah bagaimana

menggantikan peran operator atau petugas yang bertugas untuk membunyikan bel

dan menjalankan waktu. Kemudian peran dari operator dalam mengendalikan

waktu dan bel dalam pertandingan tinju ini akan digantikan dengan

mikrokontroler AT89S51. Pada alat penampil waktu pada pertandingan tinju ini

menggunakan IC AT89S51 yang digunakan sebagai pengendali utamanya, dimana

waktu akan berjalan secara mundur. Kemudian waktu tersebut akan ditampilkan

pada sebuah LCD dengan jumlah karakter sebanyak 2x16. Selain waktu, LCD juga

akan menampilkan ronde yang sedang berjalan. Sebagai keluaran suara akan

digunakan buzzer yang apabila waktu tersebut telah habis ataupun dimulainya

ronde berikutnya maka buzzer akan berbunyi.

Untuk merealisasikan semua ide tersebut maka dibuat dalam suatu

program dalam bahasa assembly pada komputer yang nantinya akan di download

(21)

1.4Batasan Masalah

Batasan yang ditentukan pada perancangan alat penampil waktu pada

pertandingan tinju adalah :

1. Jumlah ronde dalam alat ini terdiri dari 12 ronde

2. Waktu satu ronde berjalan selama 3 menit dan waktu istirahat berjalan 1

menit, dengan tampilan waktu dihitung mundur

1.5Tujuan Penelitian

Tujuan yang ingin dicapai dalam penelitian ini adalah :

1. Merancang dan membuat suatu penampil waktu pada pertandingan tinju

dengan menggunakan mikrokontroler AT89S51.

2. Mempelajari dan memanfaatkan mikrokontroler AT89S51 dalam

penerapannya di bidang olah raga.

1.6Manfaat Penelitian

Manfaat dari penelitian ini adalah:

1. Dapat mempermudah dalam menghitung waktu pada pertandingan tinju.

2. Dapat menghemat tenaga yang dibutuhkan dalam menghitung waktu pada

pertandingan tinju.

1.7.Sistematika Penulisan

BAB I Membahas tentang latar belakang, tujuan, manfaat penelitian, betas

(22)

BAB II Membahas dasar teori, untuk memberikan gambaran mengenai

fungsi, cara kerja dan karakteristikdari komponen – komponen

yang digunakan.

BAB III Membahas mengenai perancangan alat, baik hardware maupun

software.

BAB IV Pengamatan dan pengambilan data, serta pembahasannya.

BAB V Kesimpulan dan saran

(23)

BAB II

DASAR TEORI

Pada bab ini akan dijelaskan mengenai teori dasar komponen dan

rangkaian, termasuk juga teori dasar yang digunakan untuk merancang perangkat

lunak sebagai pembentuk sistem Penampil Waktu Pada Pertandingan Tinju

Berbasis Mikrokontroler AT89S51’. Pembentuk sistem terdiri dari:

mikrokontroler AT89S51, pengendali speaker menggunakan transistor, penampil

LCD.

2.1.Tinjauan Umum

Olah raga tinju merupakan olah raga yang cukup digemari oleh banyak

orang, baik di Indonesia maupun di dunia. Setelah olah raga sepak bola tentunya.

Olah raga tinju termasuk olah raga keras, karena olah raga ini mempertontonkan

orang yang saling pukul. Tetapi disamping mengandalkan teknik – teknik

pukulan, olah raga tinju juga membutuhkan strategi yang cukup jitu karena bila

salah strategi atau taktik maka petinju dalam setiap pertandingan hanya akan

membuang – buang tenaga karena asal memukul tanpa strategi atau taktik yang

jelas.

Pertandingan tinju dibagi atau dibedakan dalam beberapa kelas. Kelas –

kelas tersebut dibedakan berdasarkan berat dari petinju. Pembagian kelas dalam

pertandingan tinju adalah :

(24)

2. kelas terbang 51 kg

3. kelas bantam 54 kg

4. kelas bulu 57 kg

5. kelas ringan 60 kg

6. kelas welter ringan 63,3 kg

7. kelas welter 67 kg

8. kelas menengah ringan 71 kg

9. kelas menengah 75 kg

10.kelas berat ringan 81 kg

11.kelas berat diatas 81 kg

Sedangkan pertandingan tinju itu sendiri dibedakan menjadi dua ( 2 ), yaitu :

1. amatir

Dilakukan hanya semata – mata demi kesenangan atau hobi, tanpa

menerima bayaran atau hadiah berupa uang ataupun benda berharga

lainnya. Terdiri dari tiga ( 3 ) ataupun empat ( 4 ) ronde. Tiap ronde

berlangsung selama 3 menit dengan waktu istirahat selama 1 menit.

2. profesional

Dilakukan dengan mengharap bayaran uang sebanyak yang telah

dijanjikan dalam kontrak yang telah disepakati. Terdiri dari 7, 12,

ataupun 15 ronde sesuai dengan perjanjian sebelumnya. Untuk tinju

professional, waktu untuk setiap ronde dan waktu istirahatnya sama

dengan tinju amatir yaitu 3 menit untuk waktu setiap rondenya dan 1

(25)

Dalam perancangan alat penampil waktu ini digunakan acuan untuk pertandingan

tinju professional yaitu pertandingan tinju dengan 12 ronde.

2.2.Mikrokontroler AT89S51

Mikrokontroler AT89S51 adalah mikrokontroler CMOS 8-bit yang

berkemampuan tinggi dengan 4 Kbytes in-system programmable Flash Memory.

AT89S51 ini dibuat dengan teknologi Atmel, memori non-volatile dan sesuai

dengan standar industri pinout dan instruksi set MCS 51. AT89S51 yang dipakai

memiliki fitur: 4KB In-System Programmable Flash, 128 Bytes RAM, 32 jalur

I/O, dua 16-bit timers / counters, Watchdog Timer, 2 data pointer, 5 vektor dua

level interupsi, serial portfull duplex, osilatoron-chip dan clock circuitry.

2.2.1 Organisasi Memori AT89S51

Mikrokontroler AT89S51 memiliki ruang alamat untuk memori program

dan memori data yang terpisah, seperti terlihat pada gambar 2.1. di bawah. Setiap

memori program dan memori data eksternal dapat dialamati hingga 64 Kbytes.

(26)

Pemisahan program dan data memori ini memungkinkan pengaksesan data

memori dengan pengalamatan 8 bit, sehingga dapat langsung disimpan dan

dimanipulasi oleh mikrokontroler dengan kapasitas akses 8 bit. Namun demikian,

untuk pengaksesan data memori dengan alamat 16 bit, harus dilakukan dengan

menggunakan register DPTR (Data Pointer). Program memori hanya dapat

dibaca saja (diletakkan pada ROM / EPROM). Untuk membaca program memori

eksternal, mikrokontroler akan mengirim sinyal PSEN (Program Store Enable).

Sebagai data memori eksternal dapat digunakan RAM eksternal (maksimum 64

Kbyte). Dalam pengaksesannya mikrokontroler akan mengirimkan sinyal RD

(Read, melakukan operasi pembacaan data) dan WR (Write, melakukan operasi

penulisan data).

2.2.1.1 Memori Program

Memori program atau sering disebut dengan flash memory pada

mikrokontroler AT89S51 memiliki kapasitas sebesar 4KByang hanya bisa dibaca

saja. Bila pin EA dihubungkan pada ground program memori dapat di akses

secara eksternal, bila pin EAdihubungkan pada VCC memori program 4KB dapat

diakses langsung pada alamat 0000H-0FFFH secara internal dan pada alamat

1000H-FFFFH secara eksternal.

2.2.1.2. Memori Data

Memori data menggunakan memori jenis RAM. RAM merupakan memori

yang dapat dibaca dan ditulis. RAM dipakai sebagai penyimpan data pada saat

(27)

Mikrokontroler AT89S51 memiliki memori data 256 bytes dan dapat

diakses secara pengalamatan langsung dan pengalamatan tidak langsung.

Pengoperasian stack adalah contoh dari pengalamatan tidak langsung, jadi 128

bytes RAM data tersedia sebagai ruang stack. Peta memori data dapat dilihat pada

Gambar 2.2.

Gambar 2.2. Peta memori data

2.2.2 Register Fungsi Khusus (Special Function Register)

Peta dari memori on-chip disebut dengan ruang register fungsi khusus

(Special Function Register) yang diperlihatkan pada Tabel 2.1.

Tabel 2.1. Peta memori SFR

(28)

Akumulator

ACC atau akumulator yang menempati lokasi E0H digunakan sebagai

register untuk penyimpanan data sementara, dalam program.

Register B

Register B (lokasi F0) digunakan selama operasi perkalian dan pembagian ,

untuk intruksi lain dapat diperlakukan sebagai register scratch pad (papan

coret-coret).

Program Status Word (PSW)

Register PSW (lokasi D0H) mengandung informasi status program seperti

terlihat pada Gambar 2.3. Fungsi bit pada PSW sebagai berikut:

CY (PSW7) : carry setelah operasi aritmatika.

AC (PSW6) : auxiliary carry setelah operasi aritmatika.

F0 (PSW5) : flag untuk fungsi umum.

RS0 (PSW4) : untuk memilih bank register.

RS1 (PSW3) : untuk memilih bank register.

0V (PSW2) : overflow setelah operasi aritmatika.

( – ) (PSW1) : user definable flag

P (PSW0) : Parity Flag (P), merupakan bit even-parity dari

akumulator. Jika banyaknya angka 1 dalam

Akumulator ganjil, maka P akan di-set menjadi 1;

(29)

Gambar 2.3. Register Program Status Word

Stack Pointer

Register Stack Pointer (lokasi 81H) merupakan register dengan panjang

8-bit, digunakan dalam proses simpan dan ambil dari atau ke stack.

Data Pointer

Register Data Pointer mengandung DPTR untuk byte tinggi (DPH) dan

byte rendah (DPL). Pada AT89S51 memiliki 2 buah DPTR untuk memudahkan

pengaksesan baik internal maupun eksternal, yaitu DP0 di lokasi 82H-83H dan

DP1 di lokasi 84H-85H. Untuk menggunakannya harus menginisialisasi bit DPS

pada register AUXR1 (lokasi A2H). Bila DPS = 0, maka memilih register DPTR

DP0L - DP0H dan bila DPS = 1, maka memilih register DPTR DP1L - DP1H.

Register AUXR1 dapat dilihat pada Gambar 2.4.

__ __ __ __ __ __ __ DPS

7 6 5 4 3 2 1 0

Gambar 2.4. Register AUXR1

Kontrol Register

Register-register IP, IE, TMOD, dan TCON berisi bit-bit kontrol dan status

(30)

2.2.3. Timer / Counter

Mikrokontroler AT89S51 mempunyai dua buah register timer/counter 16

bit , Timer 0 dan Timer 1. Pada saat sebagai Timer, register naik satu (increment)

setiap satu cycle. Jika digunakan osilator 12 Mhz, maka satu cycle sama dengan

1/12 frekuensi osilator = 1µs. Pada saat sebagai counter, register naik satu

(increment) pada saat transisi 1 ke 0 dari input eksternal , T0 atau T1. Apabila

periode tertentu telah dilampaui, timer/counter segera menginterupsi

mikrokontroler untuk memberitahukan bahwa perhitungan periode waktu telah

selesai dilaksanakan. Periode waktu timer/counter secara umum ditentukan oleh

persamaan berikut:

a. Sebagai T/C 8 bit

T = (255 – TLx) * 1µs ……..………..(2.1)

Dimana TLx adalah isi register TL0 atau TL1.

b. Sebagai T/C 16 bit

T = (65535 – THx TLx) * 1µs ……..………..(2.2)

THx = isi register TH0 atau TH1

TLx = isi register TL0 atau TL1

2.2.3.1. Register TCON

Pengontrol kerja timer/counter ada pada register timer control (TCON).

Adapun definisi dari bit-bit pada timer control adalah sebagai berikut:

(31)

Tabel 2.2. Keterangan register TCON

Simbol Fungsi

TF1 Timer 1 overflow flag. Di set oleh hardware pada saat timer/counter overflow. Di clear oleh hardware pada saat menjalankan rutin TR1 Timer 1 Run control bit. Di set/clear oleh software. Digunakan untuk

mengaktifkan/nonaktifkan timer/counter

TF0 Timer 0 overflow flag. Di set oleh hardware pada saat timer/counter overflow.

TR0 Timer 0 Run control bit. Di set/clear oleh software. Digunakan untuk mengaktifkan / nonaktifkan timer/counter

IE1 Interrupt 1 Edge flag. Di set oleh hardware ketika interupsi eksternal mendeteksi adanya edge. Di clear ketika proses interupsi

IT1 Interrupt 1 Type control bit. Di set / clear oleh software untuk menentukan pen-triger-an interrupsi eksternal pada transisi turun / low IE0 Interrupt 0 Edge flag. Di set oleh hardware ketika interupsi eksternal

mendeteksi adanya edge. Di clear ketika proses interupsi

IR0 Interrupt 0 Type control bit. Di set/clear oleh perangkat lunak untuk menentukan pen-triger-an interrupsi eksternal pada transisi turun / low

2.2.3.2. Register TMOD

Pengontrol pemilihan mode operasi timer/counter ada pada register timer

mode (TMOD) . Definisi bit-bitnya adalah sebagai berikut:

(32)

Tabel 2.3. Keterangan register TMOD

Simbol Fungsi GATE Gate control set. Timer/counter ‘x’ akan aktif jika pin “INT” high dan

kondisi pin “TRx” sedang set.

Gate control clear. Timer”x” akan aktif jika “TRx” set

C / T Selector timer/counter. Clear untuk mode timer ( input dari internal lock ) dan set untuk mode counter (input dari pin “Tx” )

c

M1 Bit untuk memilih mode timer/counter

M0 Bit untuk memilih mode timer/counter

x = 0 atau 1.

Tabel 2.4. Keterangan Kombinasi M0 dan M1 register TMOD M1 M0 Mode Operasi

0 0 0 Timer 13 bit

0 1 1 Timer/counter 16 bit

1 0 2 Timer/counter pengisian otomatis (auto reload) 8 bit

1 1 3 (Timer 0)

TL0 adalah T/C 8 bit yang dikontrol oleh kontrol bit standar timer 0. TH0 adalah timer 8 bit dan dikontrol oleh kontrol bit timer 1

(Timer 1)

Timer/counter 1 tidak aktif

2.2.3.3. Mode Timer/Counter

Terdapat empat jenis mode yang dapat ditentukan melalui pengisian

register TMOD yang dibahas pada bagian 2.1.3.3, yaitu:

a. Mode 0

Pada mode ini timer bekerja sebagai timer 13 bit yang terdiri dari counter

8-bit dengan pembagi 32 (pembagi 5 bit). Setelah perhitungan selesai,

(33)

GATE = 1, timer dapat dikontrol oleh input dari luar (INT1), untuk fasilitas

pengukuran lebar pulsa. Register 13 bit yang digunakan terdiri dari 8 bit dari TH1

dan 5 bit bawah dari TL1 ( bit 6,7,8 tidak digunakan ). Mengeset TR1 tidak akan

menghapus isi register. Operasi pada mode 0 untuk Timer 0 dan Timer 1 adalah

sama.

b. Mode 1

Mode 1 sama dengan mode 0 kecuali register timer akan bekerja dalam

mode 16 bit.

c. Mode 2

Mode 2 menyusun register timer sebagai 8 bit counter (TL1) dengan

kemampuan pengisian otomatis. Overflow dari TL1 tidak hanya men-set TF1

tetapi juga mengisi TL1 dengan isi TH1 yang diisi sebelumnya oleh software.

Pengisian ulang ini tidak mengubah nilai TH1.

d. Mode 3

Dalam operasi mode 3 timer 1 akan berhenti, hitungan yang sedang

berjalan dipegang. Efeknya sama seperti mengatur TR1 = 0. Timer 0 dalam mode

3 membuat TL0 dan TH0 sebagai dua counter terpisah. TL0 menggunakan

kontrol bit timer 0 yaitu C/T, GATE, TR0, INT0 dan TF0.. TH0 berfungsi hanya

sebagai timer dan mengambil alih penggunaan TR1 dan TF1 dari timer 1 dan

sekarang TH0 mengontrol interupsi timer 1. Mode 3 diperlukan untuk aplikasi

yang membutuhkan ekstra timer/counter 8 bit. Dengan timer 0 dalam mode 3,

(34)

mode 3, timer 1 dapat dihidupkan atau dimatikan, atau dapat digunakan oleh port

serial sebagai pembangkit baud rate dalam aplikasi komunikasi serial.

2.2.4. Port masukan/keluaran (I/O port)

Sama seperti keluarga MCS-51 lainnya mikrokontroler AT89S51 memiliki

4 port masukan/keluaran (I/O port) yang diberi nama port 0, port 1, port 2 dan port

3. Setiap port selain sebagai jalur masuk atau keluar data, juga memiliki

karakteristik masing-masing.

a. Port 0

Port 0 merupakan port keluaran/masukan (I/O) bertipe open drain

bidirectional. Port 0 juga dapat dikonfigurasikan sebagai bus alamat/ data bagian

rendah selama proses pengaksesan memori data dan program eksternal. Port ini

berada di alamat 80H SFR.

b. Port 1

Port 1 merupakan port I/O dwiarah yang dilengkapi dengan pull-up

internal. Jika ‘1’ dituliskan ke kaki-kaki port 1, masing-masing kaki akan di pull

high dengan pull up internal sehingga dapat digunakan sebagai masukan. Port 1

berada di alamat 90H juga menerima alamat bagian rendah (low bit) selama

pemrograman dan verifikasi flash. Selain sebagai piranti I/O, port 1 mempunyai

(35)

Tabel 2.5. Fungsi alternatif port 1

Pin Port Fungsi Alternatif

P1.5 MOSI (digunakan untuk In-System Programming) P1.6 MISO (digunakan untuk In-System Programming) P1.7 SCK (digunakan untuk In-System Programming)

c. Port 2

Port 2 berada di alamat A0H dan memiliki karakteristik yang mirip dengan

port 1. Port 2 akan memberikan byte alamat bagian tinggi selama pengambilan

instruksi dari memori program eksternal dan selama pengaksesan memori data

eksternal yang menggunakan perintah dengan alamat 16-bit (misalnya: MOVX

@DPTR). Port ini juga menerima alamat bagian tinggi selama pemrograman dan

verifikasi flash.

d. Port 3

Port 3 terletak di alamat B0H. Selain berfungsi untuk menerima

sinyal-sinyal kontrol untuk pemrograman dan verifikasi flash, dapat juga digunakan

untuk fungsi-fungsi yang lain seperti terlihat pada Tabel 2.6.

Tabel 2.6. fungsi alternatif port 3.

Pin Port Fungsi Alternatif

P3.0 RXD (masukan port serial) P3.1 TXD (keluaran port serial) P3.2 INT0 (interupsi 0 eksternal) P3.3 INT1 (interupsi 1 eksternal) P3.4 T0 (input eksternal timer 0) P3.5 T1 (input eksternal timer 1)

(36)

2.2.5. Sistem Interupsi Mikrokontroler AT89S51

Interupsi merupakan suatu sarana dalam mikrokontroler yang sangat

berperan dalam penanganan sistem input output. Dalam proses interupsi,

terjadinya sesuatu pada perangkat keras akan dicatat pada flip-flop yang sering

disebut petanda (flag). Catatan dalam petanda tersebut diatur sedemikian rupa

sehingga merupakan sinyal permintaan interupsi pada prosesor.

Program yang dijalankan dengan cara tersebut dinamakan sebagai program

pelayanan interupsi (ISR - Interrupt Service Routine). Saat prosesor menjalankan

ISR, pekerjaan yang sedang dilakukan dalam program utama ditinggalkan

sementara, selesai menjalankan ISR program utama kembali dijalankan.

AT89S51 memiliki 5 sumber interupsi, yaitu: 2 interupsi pewaktu yaitu

interupsi yang terjadi pada saat timer mengalami overflow dari semua bit 1 ke

semua bit 0, atau bit TF=1. 2 interupsi eksternal yaitu interupsi yang terjadi karena

adanya sinyal interupsi yang berasal dari luar, dan sebuah interupsi port serial

yaitu interupsi yang terjadi pada saat diterimanya/ dikirimnya sinyal serial antara 2

mikrokontroler.

2.2.5.1. Pengaktifan Interupsi

Masing-masing sumber interupsi dapat diaktifkan dan dimatikan secara

individual dengan menset bit EA dalam register IE (lihat gambar 2.7).

Gambar 2.7. Register IE

(37)

Tabel 2.7. Register IE

Simbol Posisi Fungsi

EA IE.7 Untuk mengaktifkan (IE =1) dan menon-aktifkan (IE =0)

__ IE.6 Cadangan

ET2 IE.5 Cadangan

ES IE.4 Bit aktivasi interupsi Port Serial ET1 IE.3 Bit aktivasi interupsi Timer 1 EX1 IE.2 Bit aktivasi interupsi Eksternal 1 ET0 IE.1 Bit aktivasi interupsi Timer 0 EX0 IE.0 Bit aktivasi interupsi Eksternal 0

2.2.5.2. Vektor Interupsi

Saat suatu interupsi diterima, nilai yang disimpan ke PC sebagai alamat

RLI selanjutnya disebut sebagai vektor interupsi, yang sekaligus merupakan awal

alamat RLI yang bersangkutan. Daftar vektor interupsi terdapat pada Tabel 2.8.

Tabel 2.8. Daftar vektor interupsi

Interupsi Tanda (Flag) Alamat Vektor

Reset sistem RST 0000H

Eksternal 0 IE0 0003H

Timer 0 TF0 000BH

Eksternal 1 IE1 0013H

Timer 1 TF1 001BH

(38)

2.3.LCD ( Liquid Crystal Display )

LCD ( Liquid Crystal Display ) merupakan suatu tampilan ( display ) yang

terdiri dari bahan cairan kristal yang dioperasikan dengan menggunakan sistem

dotmatrix.

LCD yang digunakan dalam pembuatan alat ini adalah LCD dengan

menggunakan driver HD44780U. LCD ini dapat menampilkan angka-angka,

abjad, huruf jepang, dan juga simbol - simbol lainnya. Interface LCD HD44780U

dengan mikrokontroler AT89S51 dapat dilakukan dengan sistem 4 bit ataupun 8

bit.

Dimensi LCD dengan driver HD44780U yang digunakan memiliki ukuran

2 x 16. Hal ini menandakan bahwa LCD tersebut memiliki layar tampilan yang

terdiri atas 2 baris dan 16 kolom seperti yang ditunjukkan pada gambar 2.8.

Tiap segment Dimensi layar LCD terdiri dari 8x5 dot

Gambar 2.8. Dimensi Layar LCD

Dengan demikian total jumlah karakter yang dapat ditampilkan sekaligus

dalam satu layar adalah sebanyak 32 karakter, masing-masing karakter tersebut

(39)

HD44780U memiliki beberapa bagian seperti yang disampaikan di bawah

ini :

Register

HD44780U memiliki dua buah register 8 bit, yaitu IR ( Instruction Register ) dan

DR ( Data Register ). IR ( Instruction Register ) merupakan register yang hanya

dapat ditulis dan berguna untuk menyimpan kode-kode instruksi seperti Display

Clear, Cursor Shift, dan juga untuk alamat dari DDRAM ( Display Data RAM )

ataupun CGRAM ( Character Generator RAM ). Sedangkan DR ( Data Register )

merupakan register yang bisa ditulis maupun dibaca dan juga berguna untuk

penyimpanan sementara data yang akan ditulis atau dibaca dari/ ke dalam

DDRAM ataupun CGRAM.

BF ( Busy Flag )

Sewaktu BF ( Busy Flag ) bernilai “1” maka driver HD44780U akan menjalankan

operasi internal sehingga instruksi selanjutnya tidak dapat dijalankan. Maka untuk

dapat menjalankan instruksi selanjutnya perlu diperiksa apakah busy flag tersebut

telah bernilai “0”, atau dapat dilakukan dengan memberikan waktu yang lebih

lama dari waktu yang dibutuhkan oleh eksekusi instruksi itu sendiri diantara

instruksi pertama dengan instruksi selanjutnya.

AC ( Address Counter )

Fungsi dari AC ( Address Counter ) adalah untuk mengalamati DDRAM dan juga

(40)

DDRAM ( Display Data RAM )

DDRAM digunakan untuk menyimpan tampilan data yang direpresentasikan

dalam bentuk 8 bit kode karakter. DDRAM memiliki kapasitas 80 x 8 bit atau 80

karakter.

CGROM ( Character Generator ROM )

CGROM merupakan ROM ( Read Only Memory ) berukuran 80 x 8 bit yang

mampu membangkitkan bentuk dot matriks berukuran 5 x 8 maupun 5x10 dari 8

bit kode karakter.

CGRAM ( Character Generator RAM )

CGRAM merupakan RAM ( Random Access Memory ) berukuran 64 x 8 bit yang

memungkinkan untuk memprogram karakter yang diinginkan.

Pin LCD

LCD ini memiliki 14 kaki pin dengan konfigurasi pin seperti yang ditunjukkan pada tabel 2.8.

Tabel 2.8 Penomoran Pin LCD

Nomor Pin Simbol

1 Vcc ( +5 V )

2 Vee ( 0 V )

3 GND ( 0 V )

4 RS

5 R / W

(41)

Deskripsi LCD :

DB0 sampai dengan DB7 merupakan jalur data yang dipakai untuk

menyalurkan kode ASCII maupun perintah pengatur kerja LCD tersebut.

RS merupakan Register Select yang dipakai untuk membedakan jenis data

yang dikirim ke LCD, jika RS = 0 maka data yang dikirim adalah perintah untuk

mengatur kerja LCD tersebut. Sebaliknya jika RS = 1 maka data yang dikirim

adalah kode ASCII yang ingin ditampilkan.

R / W merupakan Read / Write. Jika R / W = 0 maka menandakan akan

diadakan pengiriman data ke LCD. Dan jika R / W = 1 maka menandakan akan

diadakan pengambilan data dari LCD.

E ( Enable ) merupakan sinyal sinkronisasi. Saat E berubah dari ‘1’

menjadi ‘0’ maka data di DB0 hingga DB7 akan diterima atau diambil dari atau

oleh LCD.

Kemudian untuk menyalakan backlight pada layar LCD maka terdapatlah

A ( Anoda ) dan K ( Katoda ) yang nantinya akan dihubungkan pada +5V dan

ground. Anoda dan katoda ini terpisah dari pin namun kadang pada LCD lain

sudah ada yang termasuk pada pin.

2.4.Buzzer

Buzzer digunakan sebagai keluaran bunyi. Dengan menggunakan buzzer,

kita tidak perlu mengatur frekuensi yang akan digunakan sebagai bunyi karena

(42)

Re

FCS 9012

3

2

1

VCC

BUZZER

input

Rb

Gambar 2.9 Rangkaian Penggerak Buzzer

Untuk mengatur buzzer agar dapat berbunyi ataukah tidak maka digunakan

rangkaian penggerak buzzer. Pada gambar 2.9 terlihat bahwa rangkaian penggerak

buzzer tersebut menggunakan transistor, yang pada dasarnya berfungsi sebagai

saklar untuk menghubungkan antara buzzer dengan tegangan Vcc. Re dan Rb

digunakan sebagai pembatas arus yang akan masuk ke dalam transistor. Karena

adanya transistor tersebut, maka buzzer mendapatkan arus atau tidaknya

tergantung dari kondisi transistor saat itu, jika transistor on ( karena adanya arus

low pada basis, yang dilakukan dengan pemberian logika ‘0’ pada port input

transistor ) maka buzzer mendapatkan tegangan Vcc sehingga menjadi on. Namun

sebaliknya pula jika transistor off maka buzzer juga akan menjadi off. Jika kondisi

on dan off dilakukan secara periodik maka akan diperoleh gelombang kotak

dengan frekuensi atau periode tertentu.

buzzer membutuhkan arus (Ibuzzer) agar bekerja (aktif) yang nilainya dapat

ditentukan dengan spesifikasi daya (P) dan hambatan (R) pada buzzer. Nilai arus

(43)

R P

Ibuzzer = (Ampere) ………. (2.3)

Nilai hambatan basis (RB) dapat ditentukan dengan menghitung nilai

arus basis (IB) dengan arus kolektor (IC) dan penguatan arus transistor (hFE ), yang

besarnya:

FE C B

h I

I = ………... (2.4)

Arus buzzer (Ibuzzer) pada gambar 2.11 sama dengan arus IC transistor,

sehingga nilai arus basis adalah:

FE buzzer B

h I

I = ………... (2.5)

Nilai hambatan basis dengan mensubsitusi persamaan 2.5 adalah:

B EB CC B

I V V

R = − atau

FE buzzer

EB CC B

h I

V V R

/

(44)

BAB III

PERANCANGAN

Perancangan alat penampil waktu tinju terdiri perancangan perangkat keras

dan perancangan perangkat lunak. Perancangan perangkat keras terdiri dari

rangkaian mikrokontroler, saklar, dan LCD. Sedangkan perancangan perangkat

lunak berupa diagram alir atau urutan langkah bagaimana mikrokontroler dapat

bekerja sebagai penghitung waktu tinju. Diagram blok dari keseluruhan alat ini

digambarkan pada gambar 3.1.

START

PAUSE

RESET

BUZZER

LCD

Gambar 3.1 Diagram blok alat penampil waktu tinju

Keterangan gambar :

Sebagai pengendali utama : mikrokontroler AT89S51

Sebagai masukan : tombol ‘START’, ‘PAUSE’. ‘RESET’

Sebagai keluaran : buzzer dan LCD

(45)

3.1. Perancangan Perangkat Keras

Perancangan perangkat keras utama pada alat ini berupa rangkaian

mikrokontroler. Mikrokontroler bekerja mengendalikan karakter yang akan

tertampil di LCD dan membunyikan buzzer saat awal ronde dan akhir ronde.

Proses bekerjanya mikrokontroler akan diatur dengan menggunakan perangkat

lunak.

3.1.1. Saklar push-button

Saklar push-button ini berfungsi sarana pemutus hubungan arus antara

port I/O mikrokontroler dengan ground. Saat saklar ditekan maka arus akan

mengalir dari port mikrokontroler ke ground, sedangkan saat saklar tidak ditekan

arus akan mengambang. Sehingga saat tombol ditekan berarti memberikan logika

0 pada mikrokontroler karena arus pada port mikrokontroler mengalir ke ground.

Pada perancangan ini tombol start dihubungkan ke P2.6 sedangan tombol pause

diumpankan ke P3.2 sebagai penanda sinyal interupsi. Pada gambar 3.2

digambarkan bagaimana saklar dihubungkan pada mikrokontroler.

MIKROKONTROLER

P 3.2

PAUSE

P 2.6

START

Gambar 3.2 Rangkaian Saklar dengan Mikrokontroler

(46)

3.1.2. Rangkaian reset mikrokontroler AT89S51

Reset dilakukan secara otomatis saat power diaktifkan. Menurut lembar

data AT89S51, reset terjadi saat adanya logika 1 selama 2 ( dua ) siklus mesin

pada pin 9 ( RST ). Dalam perancangan ini karena menggunakan osilator kristal

12 MHz dan satu siklus mesin dikerjakan dalam 12 periode osilator, maka satu

siklus mesin dikerjakan selama :

Tcycle =

OSC f

12 =

MHz

12 12

= 1 µd

Dengan demikian, maka untuk keperluan reset dibutuhkan logika 1 pada pin RST

selama 2 × 1µd = 2 µd.

Gambar 3.3 Rangkaian Reset AT89S51

Cara kerja rangkaian power-on reset sebenarnya hanya merupakan

pengisian muatan kapasitor C ( gambar 3.3 ). Pada saat sumber daya diaktifkan,

karena muatan kapasitor masih kosong ( VC = 0 ), maka pin RST akan terhubung

langsung dengan Vcc ( logika 1 ). Sejalan dengan pertambahan waktu, kapasitor

akan diisi muatannya yang mengakibatkan VC ( tegangan antara Vcc dengan pin

(47)

mengecil. Yang perlu diperhatikan disini untuk power-on reset adalah nilai R dan

C agar VR selama minimal 2 µd ( 2 siklus mesin ) masih dianggap berlogika 1.

Dari data sheet AT89S51, didapat tegangan masukan logika 1 pin RST memiliki

batas bawah VH(min) = 0,7 Vcc. Dengan memasukkan rumus VR didapatkan

perhitungan :

Vcc - VC≥ 0,7 Vcc

Vcc - Vcc (1 – e –t / RC ) ≥ 0,7 Vcc

(e – 2µd / RC ) ≥ 0,7

- 2• 10-6 / RC ≥ ln (0,7)

2• 10-6≤ RC (0,357)

RC ≥

357 , 0

10 2• −6

RC ≥ 5,60 . 10-6 ……… (3.1)

Dengan demikian konstanta waktu RC haruslah lebih besar dari 5,6 µd.

Jika toleransi komponen R dan C diperhitungkan, maka pada perancangan

digunakan waktu reset ( konstanta waktu RC ) yang jauh lebih besar dari syarat

pada ( 3.1 ), yaitu 100 ms dengan menggunakan kapasitor C = 1 µF dan resistor R

= 100 KΩ ( dari data sheet AT89S51 ). Setelah power-on kapasitor akan terus

terisi hingga tegangan VC sama dengan Vcc ( dibutuhkan waktu 100 ms ) dengan

polaritas yang berlawanan, yang berarti pin RST akan berlogika 0 ( VR1 = 0 ) dan

(48)

3.1.3. Rangkaian Osilator

Rangkaian osilator menggunakan on-chip oscillator yang membutuhkan

sebuah kristal pembangkit frekuensi dan 2 buah kapasitor eksternal yang

ditunjukan pada gambar 3.4 .Frekuensi osilator untuk mikrokontroler AT89S51

maksimal 33 MHz. Dalam perancangan digunakan kristal (X1) 12 MHz dengan

alasan mempermudah untuk menghitung satu detik karena satu siklus mesin

dibutuhkan 1 µdetik. Kapasitor yang digunakan ( C1 dan C2 ) masing – masing

besarnya 30 pF (gambar 3.4).

X1 12 MHz

C2 30 pF C1 30 pF

18 19

20

XTAL1 GND XTAL2

AT89S51

Gambar 3.4 Rangkaian Osilator AT89S51

3.1.4. LCD

Alat Penampil Waktu Pada Pertandingan Tinju Berbasis Mikrokontroler

AT89S51 ini menggunakan LCD. LCD yang digunakan pada alat ini adalah LCD

yang mempunyai 16 kolom dan 2 baris. dimana LCD tersebut menggunakan

sistem pengiriman data 8 bit sehingga diperlukan 11 buah jalur untuk

berhubungan dengan mikrokontroler AT89S51. Kesebelas jalur tersebut terdiri

(49)

masing untuk RS (Register Select), R/W (Read/Write), dan E (Enable). Adapun

jalur-jalur tersebut dapat dilihat pada gambar 3.5.

+ 5 V

HD 44780U GN D VC C DB 3 DB 7 DB 2 R/ W

DOT MATRIKS LCD

DB 6 E K RS DB 5 A VE E DB 4 VCC DB 0 DB 1 AT89S51 9 18 19 29 30 31 1 2 3 4 5 6 7 8 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 39 38 37 36 35 34 33 32 RST XTAL2 XTAL1 PSEN ALE/PROG EA/VPP P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7

Gambar 3.5 Rangkaian LCD dengan Mikrokontroler

3.1.5. Buzzer

Dalam Alat Penampil Waktu Pada Pertandingan Tinju Berbasis

Mikrokontroler AT89S51 ini menggunakan buzzer untuk menandakan waktu

setiap awal ronde dan akhir ronde dimana saat akhir ronde juga sebagai tanda

waktu istirahat. Rangkaian penggerak buzzer tersebut dihubungkan dengan P2.7

mikrokontroler. Gambar 3.6 digambarkan rangkaian penggerak buzzer.

Re

P 2.7 Rb

FCS 9012 3 2 1 VCC MIKROKONTROLER AT 89S51 BUZZER

(50)

Rangkaian penggerak buzzer ini berupa rangkaian transistor sebagai

saklar. Transistor yang digunakan adalah transistor FCS9012. Keadaan bunyi atau

tidaknya buzzer tergantung dari keadaan hidup atau tidaknya transistor. buzzer

yang digunakan adalah buzzer 5 volt. Arus yang yang melewati buzzer dipilih

sebesar 25 mA. Maka dengan melihat datasheet arus Ic sebesar 25 mA. Dengan

menggunakan rumus 2.6 maka tahanan Rc dapat ditentukan. Nilai dari Vce sangat

kecil maka dianggap 0.

Re =

Ic Vce Vcc

= 3 10 . 25

5 −

= 200 Ω

Dalam perhitungan didapatkan Rc sebesar 200 Ω, maka digunakanlah resistor

dengan hambatan sebesar 200 Ω. Untuk menentukan besarnya Rb ditentukan

terlebih dahulu nilai dari Ib seperti pada perhitungan dibawah ini.

Ib =

hfe Ic

= 64

10 . 25 −3

(51)

Maka nilai Rb ditentukan dari perhitungan berikut ini,

Rb =

Ib Vbe Vcc

=

0,00039 7 , 0 5−

= 11025,64Ω

Vbe merupakan tegangan antara basis dan emitor, dimana besarnya Vbe adalah

0,7 Volt, dikarenakan transistor FCS9012 terbuat dari bahan silikon. Dalam

perhitungan didapatkan Rb sebesar 11025,64 Ω, maka digunakan resistor yang

mendekati harga tersebut, yaitu resistor dengan nilai hambatan sebesar 10 K Ω

dan 1K Ω ( di seri ).

3.2. Perancangan Perangkat Lunak

Perancangan perangkat lunak alat penghitung waktu tinju terdiri dari tiga

program, yaitu program utama dan dua program interupsi. Program utama

menjalankan perintah-perintah inisialisasi awal program. Inisialisasi yang

dilakukan adalah inisialisasi LCD, timer, interupsi, dan tampilan awal.

3.2.1.Diagram Alir

3.2.1.1.Program utama

Program utama diawali dengan melakukan inisialisasi LCD dan inisialisasi

timer. Inisialisasi LCD adalah mengatur bagaimana LCD ini bekerja dan juga

tampilan awal pertandingan tinju, proses inisialisasi awal LCD mengikuti data

sheet M1632. Sedangkan inisialisasi timer adalah mengisi register TMOD untuk

menentukan timer mana yang akan digunakan dan mode apa yang akan dipakai.

(52)

yaitu timer 16 bit. Pengisian register timer akan diisi sesuai penggunaan timer

tersebut sebab dalam perancangan alat ini digunakan sebagai tunda waktu dan

penghitung waktu satu detik. Proses penggunaan timer akan dijelaskan pada

bagian berikutnya.

Proses selanjutnya adalah mengisi alamat data detik dengan 60 desimal

dan alamat data menit dengan 3 desimal. Hal ini berarti waktu satu ronde adalah

tiga menit. Kemudian program akan menunggu tombol start ditekan, setelah

tombol ditekan maka dipanggil sub program tampilan awal satu ronde pada LCD

dengan tampilan waktu tiga menit pada baris satu dan tampilan ronde 1 pada baris

2 dan juga membunyikan buzzer. Setelah itu dilakukan pengaktifkan interupsi

timer 0 dengan sebelumnya mengisi register timer agar terjadi overflow saat 50

ms. Pengaturan overflow register timer sebesar 50 ms dimaksudkan agar dapat

menghitung waktu satu detik. Dengan terjadinya 20 kali overflow menandakan

waktu satu detik telah terlewati. Program akan selalu berputar dengan

menanyakan apakah data di alamat counter ronde sudah terisi 12 yang berarti

pertandingan sudah selesai. Data di alamat counter ronde akan selalu bertambah

ketika satu ronde telah terlewati. Bila belum maka program akan selalu berputar

di sini. Program utama akan terinterupsi ketika timer 0 overflow yang berarti

mikrokontroler akan melayani program interupsi. Ketika 12 ronde telah terlewati

maka akan ditampilkan tampilan selesai pertandingan dan menunggu tombol start

ditekan agar kembali memulai pertandingan tinju lagi. Jalannya program utama

(53)

Gambar 3.7 Diagram alir program utama

3.2.1.2Program interupsi timer0

Mikrokontroler akan melayani program interupsi ketika terjadi overflow di

timer 0, keadaan overflow ini terjadi setiap 50 ms. Dengan pengulangan selama 20

kali maka waktu satu detik telah terlewati. Sehingga jalannya program menuju

(54)

mainnya setiap ronde, waktu istirahat, dan juga menaikkan variabel counter

ronde. Dan selanjutnya mengirim karakter ke LCD. Jalannya program interupsi

timer 0 ditunjukkan pada gambar 3.8

Gambar 3.8 Diagram alir program interupsi timer0

3.2.1.3.Waktu Main dan Istirahat

Sub program ini akan menampilkan waktu main untuk setiap ronde, waktu

istirahat, dan juga menaikkan variabel counter ronde. Dan selanjutnya mengirim

karakter ke LCD. Gambar 3.9 adalah diagram alir untuk sub program waktu main

(55)

Gambar 3.9 Diagram Alir Sub Program Waktu main & istirahat

3.2.1.4.Program Interupsi External0

Program interupsi eksternal 0 ini berfungsi sebagai penghenti keseluruhan

program. Dengan kondisi default, prioritas utama dari interupsi adalah interupsi

eksternal 0 sehingga jalannya program akan melayani layanan program interupsi

(56)

bersamaan. Tombol pause berguna untuk mengaktifkan interupsi eksternal 0 ini.

Diagram alir dari program interupsi ini digambarkan pada gambar 3.10.

Gambar 3.10 Diagram Alir Program Interupsi Eksternal

3.2.2 Implementasi Diagram Alir

3.2.2.1.Inisialisasi LCD

Agar LCD dapat menampilkan karakter LCD dengan baik maka LCD

tersebut harus diberikan inisialisasi terlebih dahulu. Pemberian inisialisasi ini

dapat dimaksudkan agar LCD dapat bekerja sesuai dengan spesifikasi dan

karakteristik yang diinginkan. Adapun program untuk menginisialisasi LCD

(57)

; - - - ; I ni s i al i s as i LCD

; - - - i ni t _l c d:

mov a, #3f h ; f unc t i on s et

l c al l t ul i s _per i nt ah ; 8 bi t 2 bar i s , bent uk k ar ak t er 5 x 8 l c al l t ul i s _per i nt ah

mov a, #0dh ; di s pl ay ON, ny al ak an LCD l c al l t ul i s _per i nt ah

mov a, #06h ; c ur s or ber j al an k ek anan l c al l t ul i s _per i nt ah ; s et i ap ada pengi r i man dat a

mov a, #01h ; di s pl ay c l ear , menghapus s emua t ampi l an l c al l t ul i s _per i nt ah

mov a, #0c h ; di s pl ay ON, ny al ak an LCD l c al l t ul i s _per i nt ah ; t anpa i ndi k at or k ur s or r et

3.2.2.2Menampilkan karakter pada LCD

Untuk menampilkan karakter pada LCD, perintah yang akan diberikan

terdiri dari dua jenis perintah yaitu perintah untuk menuliskan instruksi dan

perintah untuk menuliskan data. Perintah untuk menuliskan instruksi dilakukan

dengan cara membuat pin RS dan pin R / W berlogika ‘0’, sedangkan perintah

penulisan data dilakukan dengan cara membuat pin RS berlogika ‘1’ dan pin R /

W berlogika ‘0’. Adapun programnya adalah sebagai berikut :

; - - - ; Wr i t e Command t o LCD ; - - - CommandLCD:

LCALL CBF

PUSH ACC

CLR LCD_RS

CLR LCD_RW ; E=0, R/ W=0, RS=0

MOV A, R1

ANL A, #0F0h

MOV DATA_LCD, A

SETB LCD_E ; E=1, R/ W=0, RS=0

CLR LCD_E ; E=0, R/ W=0, RS=0

MOV A, R1

SWAP A

ANL A, #0F0h

MOV DATA_LCD, A

SETB LCD_E ; E=1, R/ W=0, RS=0

CLR LCD_E ; E=0, R/ W=0, RS=0

POP ACC

LCALL CBF

(58)

; - - - ; Wr i t e Dat a t o LCD

; - - - Wr i t eLCD:

LCALL CBF

PUSH ACC

SETB LCD_RS

CLR LCD_RW ; E=0, R/ W=0, RS=1

MOV A, R1

ANL A, #0F0h

MOV DATA_LCD, A

SETB LCD_E ; E=1, R/ W=0, RS=1

CLR LCD_E ; E=0, R/ W=0, RS=1

MOV A, R1

SWAP A

ANL A, #0F0h

MOV DATA_LCD, A

SETB LCD_E ; E=1, R/ W=0, RS=1

CLR LCD_E ; E=0, R/ W=0, RS=1

POP ACC

LCALL CBF

RET

Terdapat pula program untuk menampilkan tulisan pada LCD, seperti

berikut ini sebagai contoh dalam menampilkan tulisan pertama pada LCD :

; - - - Di s pl ay at Li ne1- - -

MOV R1, #80H ; s et pos i s i k ar ak t er l c d bar i s per t ama

LCALL CommandLCD

MOV DPTR, #Tex t 1 LCALL Get Tex t

; - - - Di s pl ay at Li ne2- - -

MOV R1, #0C0H ; s et pos i s i k ar ak t er l c d bar i s k edua LCALL CommandLCD

MOV DPTR, #Tex t 2

LCALL Get Tex t RET

; - - - Di s pl ay at Li ne1- - - TAMPI L_MULAI :

MOV R1, #80H ; s et pos i s i k ar ak t er l c d LCALL CommandLCD

MOV DPTR, #Tex t 3 LCALL Get Tex t

; - - - Di s pl ay at Li ne2- - -

MOV R1, #0C0H ; s et pos i s i k ar ak t er l c d bar i s k edua LCALL CommandLCD

MOV DPTR, #Tex t 4 LCALL Get Tex t

MOV R1, #0CBh

LCALL CommandLCD

MOV A, R5

MOV B, #10

DI V AB

ADD A, #30h

MOV R1, A

LCALL Wr i t eLCD

MOV A, B

ADD A, #30h

MOV R1, A

(59)

Tex t 1: DB ' MULAI ' , 0 Tex t 2: DB ' TEKAN START ' , 0 Tex t 3: DB ' 3 : 00 ' , 0 Tex t 4: DB ' RONDE ' , 0

Pada bagian subroutine dari masing – masing pengatur kerja LCD tersebut

terdapat bagian yang berfungsi untuk memberikan tunda sesaat agar antara

instruksi yang satu dengan instruksi yang lainnya tidak saling bertabrakan, yaitu

program delay dengan program sebagai berikut :

; - - - ; Del ay Rout i ne

; - - - Del ay :

MOV R0, #0 ; 2 c y c l e Del ay 1:

MOV R6, #50h ; 2 c y c l e J uml ah c y c l e =

DJ NZ R6, $ ; 2 c y c l e 2+( ( 2+( 2x 280) +2) x 256) +2= DJ NZ R0, Del ay 1 ; 2 c y c l e 41. 988 c y c l e

RET ; 2 c y c l e ;

LDel ay :

MOV R2, #030h ; 2 c y c l e

Ld1: j uml ah c y c l e = ACALL Del ay ; 2 c y c l e 2+( ( 41. 988+2+2) x 48) +2 = DJ NZ R2, Ld1 ; 2 c y c l e 2. 015. 620 c y c l e

RET ; 2 c y c l e

Dalam mikrokontroler AT89S51, 1 cycle membutuhkan 12 periode osilasi,

dan osilator Kristal yang digunakan adalah sebesar 12 MHz, maka :

MHz MHz

fclk 1

12 12

=

= , dan ik

f T

clk

clk 1 det

1 μ

= =

Sehingga dapat disimpulkan bahwa 1 cycle membutuhkan 1 μd. Berdasarkan pada

data sheet LCD, minimal waktu tunda yang harus diberikan antar instruksi adalah

(60)

3.2.2.3Program Utama

Dibawah ini adalah potongan program dari program utama.

mul ai :

s et b ex 0 ; ak t i f as i i nt er ups i ek s t er nal 0 s et b ea ; ak t i f as i l ay anan i nt er ups i s et b s t ar ; s et p2. 6 s ebagai i nput c l r r w ; buat l c d s el al u menul i s l c al l i ni t _l c d ; i ni s i al i s as i l c d

l c al l t ampi l an_awal mul ai _l agi :

j b s t ar , $ ; t unggu t ombol s t ar di t ek an c l r p2. 7 ; buny i k an buz z er mov r 7, #1 ; s et awal c ount er r onde 1 l c al l t ampi l an_r onde ; t ampi l an mul ai

mov t mod, #01h ; t i mer 0 mode1

mov t h0, #hi gh( - 50000) ; t i mer di buat i nt er ups i s et i ap 50mS mov t l 0, #l ow( - 50000)

s et b t r 0 ; ak t i f as i t i mer 0

s et b et 0 ; ak t i f as i i nt er ups i t i mer 0 s et b ea

mov det i k , #60 ; i s i dat a det i k 60 mov meni t , #3 ; i s i dat a meni t 3 meni t

c j ne r 7, #13, $ ; t unggu s ampai r onde k e- 12 c l r t r 0

c l r et 0 c l r ea

l c al l t ampi l an_s el es ai ; t ampi l an s el es ai l j mp mul ai _l agi

3.2.2.4Program Interupsi Timer 0

1dt k :

c l r t r 0 c l r et 0

i nc c ount _det i k mov a, c ount _det i k c j ne a, #20, bel um mov c ount _det i k , #0 LCALL mai n

bel um:

mov TH0, #hi gh( - 50000) ; r es et agar ov er f l ow 50mS mov TL0, #l ow( - 50000)

s et b t r 0 s et b et 0 r et i

Potongan program diatas adalah program interupsi timer 0. Dari potongan

program tersebut terlihat bahwa terdapat 20 kali pengulangan sehingga akan

(61)

memanggil sub program waktu main & istirahat. Potongan program waktu main

dan istirahat terlihat pada sub program dibawah ini.

mai n:

s et b p2. 7 ; mat i k an buz z er

mov a, 46h ; i s i a dengan dat a di 46h c j ne a, #55, r onde ; t anda wak t u i s t i r ahat mov a, det i k ; bi l a t i dak k e r onde c j ne a, #0, ol ah ; det i k bel um 0? k e ol ah mov det i k , #60 ; bi l a 0 i s t i r ahat s el es ai

mov meni t , #3 ; r es et k embal i agar k embal i k e r onde mov 46h, #0 ; nol k an l agi t anda i s t i r ahat

c l r p2. 7 ; buny i k an k embal i buz z er

l c al l t ampi l an_r onde ; t ampi l k an k embal i t ampi l an r onde r et

r onde:

mov a, det i k ; det i k bel um nol k e ol ah c j ne a, #0, c ac i ng

dec meni t ; s udah 0 k ur angi meni t mov det i k , #60

mov a, meni t

c j ne a, #0, c ac i ng ; meni t bel um 0 k e ol ah

c l r p2. 7 ; 1 r onde s el es ai bunny i k an buz z er mov 46h, #55 ; s et t anda i s t i r ahat

i nc r 5 ; r onde t ambah 1

c j ne r 5, #13, i s t i r ahat ; bi l a r onde 12 bl m ber ak hi r k e i s t i r ahat abi s 4:

r et i s t i r ahat :

l c al l t ampi l an_i s t i r ahat ; panggi l t ampi l an i s t i r ahat

mov det i k , #60 ; s et wak t u i s t i r ahat mov meni t , #1

l j mp abi s 4 ol ah:

dec det i k ; dec det i k

mov a, det i k ; ubah det i k menj adi des i mal mov b, #10

di v ab add a, #30h

mov 61h, a ; det i k pul uhan as c i i di 61h mov a, b

add a, #30h

mov 60h, a ; det i k s at uan as c i i di 60h mov buf f er , meni t ; pi ndah meni t k e buf f er dec buf f er ; k ur angi buf f er

mov a, buf f er add a, #30h

mov 65h, a ; dat a meni t as c i i di 65h mov 64h, #30h ; s pas i ( k os ong) as i i mov 63h, #3Ah ; t anda ' : '

mov 62h, #30h ; s pas i ( k os ong) as i i

mov r 1, #87H ; s et bar i s per t ama l c d di al amt 07h l c al l t ul i s _per i nt ah

mov r 0, #65h ; mul ai r 0 dar i al amt 65h mov r 3, #6 ; ada 6 pengur angan

ul ang:

mov a, @r 0 ; pi ndah dat a y ang di t unj uk di al mt R0 mov r 1, a

l c al l t ul i s _dat a ; t ampi l k an k e l c d

(62)

dj nz r 3, ul ang ; ul angi s ampai 6 dat a t er k i r i m k e l c d r et

3.2.2.5Program Eksternal 0

Berikut ini adalah potongan program untuk program eksternal 0, yaitu

untuk pengaktifan tombol PAUSE

paus e:

pus h ac c ; amank an ac c k e s p c l r p2. 7 ; buny i k an buz z er

j b s t ar , $ ; t unggu t ombol s t ar di t ek an s et b p2. 7

(63)

BAB IV

PENGAMATAN DAN PEMBAHASAN

Pada bab ini akan membahas tentang cara kerja alat, pengamatan tentang

waktu, penekanan tombol, dan buzzer. Adapun bentuk dari hasil akhir alat

tersebut dapat dilihat pada gambar 4.1

Tampak Depan :

Buzzer

LCD 2 X 16

Tombol PAUSE Tombol START

Tombol RESET

Tampak Belakang :

dihubungkan 220 Volt

(64)

4.1.Cara Kerja Alat

Berikut ini akan dijelaskan bagaimana cara kerja dari peralatan “Penampil

Waktu Pada Pertandingan Tinju” :

1.Proses kerja dari alat penampil waktu pada pertandingan ini diawali dengan

menghubungkan alat dengan catu daya..

2.Setelah menghubungkan alat dengan catu daya, maka pada penampil LCD

akan tertampil tulisan pada baris 1 “MULAI”, dan pada baris 2 akan muncul

tulisan “TEKAN START”. Dengan adanya pesan ini dimaksudkan bahwa

alat siap untuk digunakan yang dimulai dengan penekanan tombol Start.

MULAI

TEKAN START

Gambar 4.2. Tampilan awal LCD

3.Selain pada LCD tertampil tulisan ‘MULAI’ ‘TEKAN START’, setelah alat

dihubungkan ke catu daya buzzer juga akan berbunyi yang menandakan

bahwa pertandingan tinju akan dimulai. Bunyi buzzer akan berhenti berbunyi

apabila tombol start ditekan.

4.Setelah semua siap, maka tombol start ditekan yang digunakan untuk

memulai pertandingan tinju. Setelah tombol start ditekan, maka pada layar

LCD akan tertampil tulisan 03 : 00 pada baris pertama dan pada baris kedua

akan menampilkan tulisan RONDE01 yang berarti pertandingan sedang

berlangsung pada ronde 1 selama 3 menit.

Untuk tampilan waktu pertandingan ( yaitu pada baris pertama ) akan terus

(65)

03 : 00

RONDE01

Gambar 4.3. Tampilan setelah tombol start ditekan

5.Setelah pada layar LCD untuk baris pertama menunjukkan angka 00 : 00

maka buzzer akan berbunyi yang menandakan bahwa pertandingan tinju

pada ronde 1 telah selesai.

00 : 00

RONDE01

Gambar 4.4. Tampilan ronde 01 selesai

Kemudian tampilan pada LCD akan berubah, yang semula tampilannya

adalah ‘RONDE01’ pada baris kedua di LCD akan berubah menjadi tulisan

‘ISTIRAHAT’ sedangkan untuk baris pertama pada LCD juga akan berubah,

yang semula tampilannya adalah 00 : 00 maka akan berubah menjadi 01 : 00

yang menandakan bahwa waktu istirahat selama 1 menit

01 : 00

ISTIRAHAT

Gambar 4.5. Gambar tampilan waktu istirahat

6.Setelah waktu istirahat menunjukkan angka 00 : 00 , maka buzzer akan

berbunyi yang menandakan bahwa waktu istirahat telah selesai dan

pertandingan tinju dilanjutkan ke ronde berikutnya.

(66)

8.Setelah pertandingan tinju mencapai ronde keduabelas, maka pertandingan

tinju telah selesai dan kemudian akan muncul pada tampilan di LCD tulisan

‘GAMEOVER’ pada baris pertama dan tulisan ‘LAGI?TEKAN START’

pada baris kedua.

GAMEOVER

LAGI?TEKAN START

Gambar 4.6. Gambar tampilan selesai

9.Apabila ada salah satu petinju yang dianggap tidak dapat melanjutkan

pertandingan , maka kita tinggal menekan tombol pause. Karena jika tombol

pause ditekan maka pencacah waktu akan berhenti untuk sementara

sedangkan buzzer akan terus berbunyi sampai tombol start ditekan baru

berhenti.

4.2.Pengamatan Waktu

Untuk melihat apakah hasil dari perancangan perangkat lunak ( software )

itu sesuai dengan yang diinginkan dan juga agar dapat dilihat cara kerja dari alat

penampil waktu pada pertandingan tinju ini, maka dilakukan pengamatan terhadap

waktu.

Pengamatan waktu ini dilakukan dengan membandingkan antara waktu

pada alat penampil waktu terhadap waktu pada stop-watch (HP). Hal ini dilakukan

untuk mengetahui apakah waktu telah berjalan sesuai dengan yang diinginkan,

yaitu waktu akan berubah dalam setiap detiknya. Adapun untuk pengamatan

waktu ini dibedakan menjadi dua bagian, yaitu pengamatan waktu untuk setiap

(67)

4.2.1.Pengamatan Waktu Tiap Ronde

Di bawah akan dapat dilihat hasil dari pengambilan data untuk waktu

setiap rondenya dan dapat dilihat pada Tabel 4.1.

Tabel 4.1 Data pengamatan waktu tiap ronde

Waktu di

Stop-watch ( HP ) Waktu di alat Ronde

Nilai awal

Nilai akhir

Nilai awal

Nilai akhir

T0 T1 Selisih

( T0 – T1 )

Galat Error

1 00:00.00 03:00:03 03:00.00 00:00.00 03:00.03 03:00.00 00:00.03 0,017% 2 00:00.00 03:00:02 03:00.00 00:00.00 03:00.02 03:00.00 00:00.02 0,011%

3 00:00.00 03:00:00 03:00.00 00:00.00 03:00.00 03:00.00 00:00.00 0%

4 00:00.00 02:59:97 03:00.00 00:00.00 02:59.97 03:00.00 00:00.03 0,017% 5 00:00.00 02:59:98 03:00.00 00:00.00 02:59.98 03:00.00 00:00.02 0,011% 6 00:00.00 03:00:02 03:00.00 00:00.00 03:00.02 03:00.00 00:00.02 0,011% 7 00:00.00 02:59:96 03:00.00 00:00.00 02:59.96 03:00.00 00:00.04 0,022% 8 00:00.00 02:59:98 03:00.00 00:00.00 02:59.98 03:00.00 00:00.02 0,011% 9 00:00.00 03:00:01 03:00.0

Gambar

Gambar 2.2.
Gambar 2.6. Register TMOD
Tabel 2.7. Register IE
Tabel 2.8  Penomoran Pin LCD
+7

Referensi

Dokumen terkait

Ketika perang sudah berlangsung, dengan kondisi perang yang tidak dapat di duga siapa yang akan selamat atau hidup, tiga orang anaknya harus meninggalkan dunia lebih dahulu

Hasil dari pengolahan data tersebut berupa daftar perencanaan kebutuhan material hasil perhitungan secara pasti yang dapat digunakan oleh perusahaan dikemudian hari

Puji syukur, Hormat dan Kemuliaan hanya bagi Tuhan Yesus Kristus, yang telah memberikan Kasih Karunia, Hikmat serta AnugrahNya, sehingga penulis dapat menyusun dan

Selain berkomunikasi dengan antar pengguna jalan lain menggunakan isyarat lampu dan isyarat suara para awak bus seperti asisten pengemudi (kernet),dan kondektur pun

Konsep Islam mengenai kehidupan manusia didasarkan pada pendekatan theo-sentris (theocentries) atau yang menempatkan Allah melalui ketentuan syari‟atnya sebagai tolok ukur

Menimbang : a, bahwa berdasarkan ketentuan Pasal 39 Peraturan Menteri Dalam Negeri Nomor 13 Tahun 2006 tentang Pedoman Pengelolaan Keuangan Daerah sebagaimana

Skripsi ini berjudul: Pengaruh Penggunaan Model Pembelajaran Kooperatif Tipe Think Talk Write (TTW) Terhadap Hasil Belajar Pendidikan Agama Islam Siswa Sekolah

Penelitian ini merupakan penelitian deskriptif dengan pendekatan kuantitatif, tujuan dari penelitian ini adalah untuk mengetahui pengobatan penyakit gastritis