• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
26
0
0

Teks penuh

(1)

BAB II

LANDASAN TEORI

2.1. Real-Time Clock (RTC) DS1307

Real Time Clock berhubungan dengan waktu mulai dari detik, menit, jam,

hari, tanggal, bulan dan tahun. Tetapi IC RTC ini juga bisa dipakai untuk menyimpan data di dalam internal RAM RTC ini, di mana data tersebut tidak bisa hilang meskipun supply diputus, hal ini karena di dalam IC RTC tersebut ada battery-nya yang selalu hidup untuk menjalankan clock-nya jadi waktu (clock) tetap berjalan meskipun supply dimatikan. IC RTC ini masih mempunyai kelebihan bisa dipakai sebagai timer atau alarm.

Untuk hitungan detik, menit, jam, hari, tanggal, bulan dan tahun dengan tahun kabisat yang valid sampai 2100 karena compensation valid up to 2100.

Mode yang dipilih juga bisa 12 or 24 hour clock with AM dan PM in 12 hour mode.

RTC 1307 menggunakan teknik I2C yaitu memakai 2 jalur untuk

keperluan transfer data secara seri, sedangkan SPI dan MicroWire memakai 3 jalur. Semua teknik mempunyai 1 jalur untuk Clock, I2C hanya punya satu jalur data 2 arah, sedangkan SPI dan MicroWire mempunyai 2 jalur data satu arah, masing-masing untuk jalur data masuk dan jalur data keluar.

Komunikasi dengan protokol I2C pada RTC 1307 mempunyai cara yang sama seperti mengakses eeprom serial tipe 24C04 misalnya. Pertama kirim

(2)

start-bit, alamat RTC(0xC0) dengan bit R/W low, kemudian nomor register yang ingin diakses.

Real-time clock DS1307 memiliki fitur sebagai berikut:

1. Real-time clock (RTC) meyimpan data-data detik, menit, jam, tanggal dan bulan dalam seminggu, dan tahun valid hingga 2100.

2. 56-byte, battery-backed, RAM nonvolatile (NV) RAM untuk penyimpanan.

3. Antarmuka serial Two-wire (I2C).

4. Sinyal keluaran gelombang-kotak terprogram (Programmable

squarewave).

5. Deteksi otomatis kegagalan-daya (power-fail) dan rangkaian switch. 6. Konsumsi daya kurang dari 500nA menggunakan mode baterai cadangan

dengan operasional osilator.

7. Tersedia fitur industri dengan ketahanan suhu: -40°C hingga +85°C. 8. Tersedia dalam kemasan 8-pin DIP atau SOIC.

Untuk lebih jelas mengenai fungsi dan kegunaan dari IC ini terlebih dahulu akan dijelaskan fungsi dari tiap-tiap pin pada IC keluarga DS1307, di mana diketahui bahwa IC DS1307 memiliki 8 pin atau kaki.

(3)

Gambar 2.1. Diagram pin RTC DS1307 (Data Sheet IC Real-Time Clock DS1307).

Konfigurasi Pin IC RTC DS1307

1. X1 dan X2 adalah pembangkit pulsa yang terhubung dengan quart krtstal 32,768Khz sebagai internal circuit oscillator yang didesain dengan CL 12,5pF. X1 adalah osilator input yang terhubung langsung dengan kristal, sedang X2 adalah keluaran dari osilator kristal internal. 2. Power Control merupakan catu daya yang mensuplay tegangan ke

DS1307, Vcc adalah daya luar sebesar 5V dan VBAT sebagai suplai input dengan 3V lithium Cell. Tegangan baterei harus berada diantara batasan minimum dan maksimum pengoperasian. Baterei lithium 48mAh atau lebih dapat mempertahankan fungsi RTC selama 10 tahun.

3. Serial Bus Interface And Address Register merupakan jalur data serial dan pengalamatan register DS1307 dengan akses pulsa melalui SCL dan SDA. SCL (Serial Clock) berfungsi sebagai clock input I2C dan digunakan untuk sinkronisasi data serial. SDA (Serial Data) berfungsi sebagai data input/output untuk I2C serial, baik SCL dan SDA masih memerlukan pull up eksternal.

(4)

4. Control Logic merupakan pengendali data-data yang dibaca ataupun ditulis melalui SCL dan SDA dengan pewaktu dari osilator kristal. 5. Buffer (7 bytes) adalah penyangga sementara sebelum data diterima

atau dikirim, berkisar 7 bytes (7 x 8 bit) sebagai transit pengalamatan register 8 bit detik-menit-jam-hari-tanggal-bulan-tahun.

6. Clock, Calender and Control Register atau CR berisi informasi clock dan kalender serta register pengendali untuk mengontrol pengoperasian SQW/OUT.

Gambar 2.2. Blok Diagram Internal (Data Sheet IC Real-Time Clock DS1307).

(5)

2.1.1. Prinsip Komunikasi I2C

I2C singkatan dari Inter Integrated Circuit, adalah sebuah protokol untuk komunikasi serial antar IC, dan sering disebut juga Two Wire Interface (TWI). Komunikasi dilakukan melalui dua jalur: SDA (serial data) dan SCL (serial clock). Setiap divice I2C memiliki 7-bit alamat yang unik. MSB adalah fix dan ditujukan untuk kategori divice. Sebagai contoh, 1010 biner ditujukan untuk serial EEPROM. Tiga bit berikutnya memungkinkan 8 kombinasi alamat I2C, yang berarti, dimungkinkan 8 divice dengan tipe yang sama, beroperasi pada bus I2C yang sama. Pengiriman data hanya dapat dimulai ketika saluran tidak sibuk, ditdai dengan kondisi HIGH yang cukup lama pada pin SCL maupun SDA.

Selama pengiriman data, saluran data (SDA) harus dalam keadaan stabil ketika saluran clock (SCL) dalam keadaan high. Perubahan kondisi SDA pada saat SCL high akan dianggap sebagai sinyal-sinyal kendali, seperti: sinyal START (HIGH ke LOW) atau sinyal STOP (LOW ke HIGH).

(6)

2.1.1.1. Pengalamatan 7-bit I2C/ TWI

Byte pertama setelah sinyal START yang dikirim oleh master adalah alamat slave. Pengalamatan 7-bit memungkinkan 128 divice pada bus yang sama. Alamat I2C dikirim dalam byte pertama. LSB dari byte ini digunakan untuk menunjukkan bila master akan melakukan penulisan (0) atau pembacaan (0) terhadap slave.

Divice yang mengirim data sepanjang bus disebut master, divice yang menerima data disebut slave. Master memulai transmisi dengan sebuah sinyal

start, dan menghentikan transmisi dengan sebuah sinyal stop pada jalur SDA.

Selama sinyal start dan stop, jalur SCL harus dalam keadaan HIGH. Setelah

master memulai pengiriman data dengan sebuah sinyal start, master menulis satu byte alamat divice kepada slave. Setiap byte data harus memiliki panjang 8-bit. Slave harus memberikan konfirmasi dari byte data yang diterimanya dengan

sebuah bit acknowledge (ACK). (Data Sheet IC Real-Time Clock DS1307).

2.1.1.2. Defenisi-defenisi Kondisi Bus

Berikut ini adalah defenisi kondisi bus pada sistem komunikasi serial I2C/ TWI:

1. Bus tidak sibuk (bus not busy): menyatakan pada saat ini bus tidak sibuk yaitu pada saat jalur clock (SCL) dan jalur data (SDA) dua-duanya dalam keadaan HIGH.

2. Mulai transfer data (start data transfer): ditandai dengan perubahan kondisi SDA dari HIGH ke LOW ketika SCL dalam kondisi HIGH.

(7)

3. Stop transfer data (stop data transfer): ditandai dengan perubahan kondisi SDA dari LOW ke HIGH ketika SCL dalam kondisi HIGH. 4. Data valid: data yang dikirim bit demi bit dianggap valid jika setelah

START, kondisi SDA tidak berubah selama SCL HIGH, baik SDA HIGH maupun SDA LOW tergantung dari bit yang ingin ditransfer. Setiap siklus HIGH SCL baru menandakan pengiriman bit baru. Duty

cycle untuk SCL tidak mesti 50%, tetapi frekuensi kemunculannya

hanya ada dua macam, yaitu mode standar 100 kHz dan fast mode atau mode cepat 400 kHz. Setelah SCL mengirimkan sinyal HIGH yang kedelapan, arah transfer SDA berubah, sinyal kesembilan pada SDA ini dianggap sebagai acknowledge dari receiver ke transmitter. DS1307 hanya bisa melakukan transfer pada mode standar 100 kHz. 5. Pemberitahuan (Acknowledge): setiap receiver wajib mengirimkan

sinyal acknowledge atau sinyal balasan setiap selesai pengiriman 1-byte (8-bit data). Master harus memberikan eksta clock atau clock tambahan pada SCL, yaitu clock kesembilan untuk memberikan kesempatan receiver mengirimkan sinyal acknowledge ke transmitter berupa keadaan LOW pada SDA selama SCL HIGH. Meskipun master berperan sebagai receiver, ia tetap sebagai penentu sinyal STOP. Pada bit akhir penerimaan byte terakhir, master tidak mengirimkan sinyal

acknowledge, SDA dibiarkan HIGH oleh receiver dalam hal ini master, kemudian master mengubah SDA dari LOW menjadi HIGH

(8)

2.1.1.3. Mode Pengoperasian Transfer Data

Mode pengoperasian transfer data berdasarkan kondisi bit R/W, ada dua jenis transfer data yaitu: transfer data dari transmitter master ke receiver slave dan transfer data dari transmitter slave ke receiver master.

A. Transfer Data dari Transmitter Master ke Receiver Slave

Byte pertama yang dikirimkan oleh master adalah alamat slave, setelah itu

master mengirimkan sejumlah byte data. Slave atau receiver mengirimkan sinyal

acknowledge setiap kali menerima 1-byte data. Pada tiap byte, bit pertama yang

dikirim adalah MSB dan bit yang terakhir adalah LSB.

B. Transfer Data dari Transmitter Slave ke Receiver Master

Meskipun master berperan sebagai receiver, byte pertama dikirimkan oleh master berupa alamat slave. Setelah itu slave meengirimkan bit acknowledge, dilanjutkan dengan pengiriman sejumlah byte dari slave ke master. Master mengirimkan bit acknowledge untuk setiap byte yang diterimanya kecuali byte terakhir. Pada akhir byte, master mengirimkan sinyal ‘not avknowledge’, setelah itu master mengirimkan sinyal STOP.

(9)

2.1.1.4. Peta Alamat RTC DS1307

Pemetaan alamat (address map) pada RTC dimana register-register RTC di tempatkan pada lokasi pengalamatan 00h sampai 07h. sedangkan register-register RAM (Random Access Memory) ditempatkan pada lokasi pengalamatan 08h sampai 3Fh. Khusus alamat 02H, bit-6 LOW untuk siklus jam 00 – 24 dan HIGH untuk siklus jam 00 – 12. Bit-5 HIGH pada saat PM dan LOW pada saat AM atau angka puluhan jika bit-6 LOW

Tabel 2.1. Peta alamat RTC DS1307 (Data sheet RTC DS1307).

2.2 Mikrokontroler ATMega8535

Atmel AVR adalah jenis mikrokontroller yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Mikrokontroler AVR ini memiliki arsitektur RISC (Reduce Instruction Set Computing) delapan bit, di mana semua instruksi dikemas dalam kode 16-bit (16 bits word) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. Arsitektur mikrokontroler jenis AVR pertama kali dikembangkan pada tahun 1996 oleh dua orang mahasiswa Norwegian Institute of Technology yaitu Alf-Egil Bogen dan Vegard Wollan.

(10)

Mikrokontroler AVR kemudian dikembangkan lebih lanjut oleh Atmel. Seri pertama AVR yang dikeluarkan adalah mikrokontroler 8 bit AT90S8515, dengan konfigurasi pin yang sama dengan mikrokontroler 8051, termasuk address dan data bus yang termultipleksi. Mikrokontroler AVR menggunakan teknologi RISC dimana set instruksinya dikurangi dari segi ukurannya dan kompleksitas mode pengalamatannya.

Pada awal era industri komputer, bahasa pemrograman masih menggunakan kode mesin dan bahasa assembly. Untuk mempermudah dalam pemrograman para desainer komputer kemudian mengembangkan bahasa pemrograman tingkat tinggi yang mudah dipahami manusia. Namun akibatnya, instruksi yang ada menjadi semakin komplek dan membutuhkan lebih banyak memori. Dan tentu saja siklus eksekusi instruksinya menjadi semakin lama.

Mikrokontroler AVR ATmega8535 memiliki fitur yang cukup lengkap. Mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal,

EEPROM internal, Timer/Counter, PWM, analog comparator, dll (M.Ary

Heryanto, 2008). Sehingga dengan fasilitas yang lengkap ini memungkinkan kita belajar mikrokontroler keluarga AVR dengan lebih mudah dan efisien, serta dapat mengembangkan kreativitas penggunaan mikrokontroler ATmega8535.

Fitur-fitur yang dimiliki oleh mikrokontroler ATmega8535 adalah sebagai berikut:

1. Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D. 2. ADC internal sebanyak 8 saluran.

3. Tiga buah Timer/Counter dengan kemampuan pembandingan. 4. CPU yang terdiri atas 32 buah register.

(11)

5. SRAM sebesar 512 byte.

6. Memori Flash sebesar 8 kb dengan kemampuan Read While Write. 7. Port antarmuka SPI

8. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. 9. Antarmuka komparator analog.

10. Port USART untuk komunikasi serial.

11. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.

12. Dan lain-lainnya.

2.2.1 Arsitektur ATMega 8535

Dalam AVR dengan arsitektur RISC 8 bit, semua instruksi berukuran 16 bit dan sebagian besar dieksekusi dalam 1 siklus clock. Berbeda dengan mikrokontroler MCS-51 yang instruksinya bervariasi antara 8 bit sampai 32 bit dan dieksekusi selama 1 sampai 4 siklus mesin, dimana 1 siklus mesin membutuhkan 12 periode clock. Dalam perkembangannya, AVR dibagi menjadi beberapa varian yaitu AT90Sxx, ATMega, AT86RFxx dan ATTiny. Pada dasarnya yang membedakan masing-masing varian adalah kapasitas memori dan beberapa fitur tambahan saja. Memori merupakan bagian yang sangat penting pada mikrokontroler.

Mikrokontroler ATmega8535 memiliki 3 jenis memori, yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.

(12)

1. Memori program

ATmega8535 memiliki kapasitas memori progam sebesar 8 Kbyte yang terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat memiliki lebar data 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian program aplikasi.

2. Memori data

ATmega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM. ATmega8535 memiliki 32 byte register serba guna, 64 byte register I/O yang dapat diakses sebagai bagian dari memori RAM (menggunakan instuksi LD atau ST) atau dapat juga diakses sebagai I/O (menggunakan instruksi IN atau OUT), dan 512 byte digunakan untuk memori data SRAM.

3. Memori EEPROM

ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan menggunakan register-register I/O yaitu register-register EEPROM Address, register-register EEPROM

Data, dan register EEPROM Control. Untuk mengakses memori

EEPROM ini diperlakukan seperti mengakses data eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.

(13)

Untuk mikrokontroler dengan progam yang sudah baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC mikrokontroler dicetak di pabrik IC. Untuk keperluan tertentu mikrokontroler mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra Violet Eraseable

Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah ada flash PEROM yang harganya jauh lebih murah.

ATMega8535 memiliki On-Chip In-System Reprogrammable Flash

Memory untuk menyimpan program. Untuk alasan keamanan, memori program

dibagi menjadi dua bagian yaitu boot flash section dan application flash section.

Boot flash section digunakan untuk menyimpan program boot loader, yaitu

program yang harus dijalankan pada saat AVR reset atau pertamakali diaktifkan.

Application flash section digunakan untuk menyimpan program aplikasi yang

dibuat user. AVR tidak dapat menjalankan program aplikasi ini sebelum menjalankan program boot loader. Besarnya memori boot flash section dapat diprogram dari 128 word sampai 1024 word tergantung setting pada konfigurasi

bit di register BOOTSZ. Jika boot loader diproteksi, maka program pada application flash section juga sudah aman. (Lingga Wrdhana, 2006).

(14)

Gambar 2.5. IC Mikrokontroler ATMega8535 (Data Sheet IC AT90S8535, AT90L8535).

Konfigurasi Pin Mikrokontroler AVR ATmega8535:

1. VCC - Merupakan pin yang berfungsi sebagai pin masukan catu daya. 2. GND – Merupakan pin ground.

3. Port A (PA0...PA7) - Merupakan pin I/O dan pin masukan ADC.

4. Port B (PB0 – PB7) – Merupakan akan pin I/O dua arah dan pin fungsi khusus, yaitu sebagai Timer/Counter, komperator analog dan SPI.

5. Port C (PC0 – PC7) – Merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komperator analog, input ADC dan Timer Osilator.

6. Port D (PD0 – PD7) – Merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komperator analog, interupsi eksternal dan komunikasi serial.

7. RESET – Merupakan pin yang digunakan untuk mereset mikrokontoler. 8. XTAL1 dan XTAL2 – Merupakan pin masukan clock eksternal.

9. AVCC – Merupakan pin masukan tegangan untuk ADC. 10. AREF – Merupakan pin tegangan referensi ADC.

(15)

2.2.2 Menentukan Lamanya Satu Detik

Baik jam digital maupun alalog pada prinsipnya sama, yaitu frekuensi getaran. Perbedaanya hanya terletak pada sumber getaran / frekuensinya. Kalau jam analog menggunakan ayunan mekanik dan gear dengan kombinasi tertentu sehingga dia mampu untuk menentukan lamanya 1 detik dan menghitung 1 menit = 60 detik. Skema jam digital sumber frekuensinya dengan detak/ clock ditunjukkan pada gambar 2.6.Sebuah pembangkit getaran /sumber detak 1 Hz akan dicacah dengan menggunakan MOD 60, artinya 1 Hz = 1 detik,setelah melewati MOD 60,maka 60 detik = 1 menit. Begitu pula dengan jam, 60 menit = 1 jam dan 24 jam = 1 hari

Gambar 2.6. Skema penentuan detik, menit dan jam (http://elektroarea.blogspot.com/2009_01_13_archive.html).

2.2.3 Menentukan Satu Detik Menggunakan Osilator Kristal

Pembagian suatu sinyal osilator dengan menggunakan frekuensi kristal untuk menghasilkan akurasi (0,01%) waktu 1 detik. Dua buah kounter 12 stage

(16)

(CD4040) membentuk sebuah kounter biner 24 stage dan bit-bit yang sesuai digerbangkan bersama untuk memperoleh hasil yang diinginkan.

Menggunakan sebuah kristal 50 kHz, perhitungan 50000 diperoleh ketika bit-bit yang sesuai dijumlahkan untuk menghasilkan nilai 50000 adalah berlogika high (1). Bit-bit sesuai yang dijumlahkan adalah: bit 15 (= 32768) + bit 14 (= 16384) + bit 9 (= 512) + bit 8 (= 256) + bit 6 (= 64) + bit 4 (= 16). Bit 14 dan 15 adalah stage ke-3 dan ke-4 pada kounter kedua (Q3 – pin 6 dan Q4 – pin 5), bit 0 adalah stage pertama pada kounter pertama (Q1 – pin 9). Untuk menggunakan kristal 100 kHz, masing-masing bit digeser ke kanan sebanyak satu kali menjadi: 65536(bit 16) + 32768(bit 15) + 1024(bit 10) + 512(bit 9) + 128(bit 7) + 32(bit 5) = 100.000. Dan jika menggunakan kristal 1MHz, bit-bit berikut ini akan diperlukan:

Bit 19-Right counter Q8-pin 1 Decimal value = 524288

18 Q7-pin 4 262144

17 Q6-pin 2 131072

16 Q5-pin 3 65536

14 Q3-pin 6 16384

Bit 9- Left counter Q10- pin 14 512

6 Q7- pin 4 64

Pada 1 MHz, resistor 330K pada rangkaian osilator dibutuhkan untuk peredaman yang setara dengan kira-kira 15K. Ketika hitungan terminal tercapai, sebuah pulsa reset 7 uS dibangkitkan oleh inverter Schmitt Trigger yang

(17)

mengikuti gerbang NAND. Resistor 47K dan kapasitor 470 pF menopang output agar kounter-kounternya menghasilkan reset ke nol. Ini kurang dari satu siklus klok pada 50kHz dan tidak menghasilkan error akan menjadi sama dengan 7 siklus pada 1 MHz yang akan menyebabkan kounter kehilangan 7 mikro sekon waktu dalam setiap detiknya. Ini bukan error yang besar (7 bagian dari 1 juta). Lebar pulsa reset minimum untuk kounter CMOS kira-kira 1.5 mikro sekon, jadi pulsa reset tidak dapat dibuat terlalu singkat.

2.2.4 Menentukan Satu Detik Pada Mikrokontroler

Sebuah mikrokontroler mempunyai beberapa port keluaran. Dari port tersebut dapat dikeluarkan isyarat clock dengan frekuensi tertentu. Aras rendah clock dapat dikeluarkan dengan memberikan logika rendah pada keluaran port tersebut; dan aras tinggi clock dapat dikeluarkan dengan memberikan logika tinggi pada keluaran port tersebut. Frekuensi tertinggi clock yang dapat dikeluarkan sebuah port tergantung pada frekuensi clock yang diberikan kepada mikrokontoler tersebut dan pemilihan instruksi yang tepat.

Pembangkit isyarat clock Pembangkitan isyarat clock dapat dilakukan minimal dengan tiga cara. Pertama, dengan mengeluarkan data logika tinggi diikuti dengan data logika rendah secara periodis. Hal ini dapat dilakukan dengan instruksi pemindahan data seperti MOV. Agar dapat diperoleh frekuensi clock cukup tinggi, maka dipilih instruksi yang mempunyai waktu eksekusi paling kecil yaitu satu siklus. Contoh instruksi tersebut adalah MOV P1, A (Atmel Corp., 1997). Jika suatu mikrokontroler dioperasikan dengan clock 24 MHz, maka

(18)

dengan instruksi tersebut perubahan logika keluaran port 1 dapat dilakukan setiap 0,5 mikrodetik sekali. Cara kedua dengan mengeset dan mereset sebuah pin port keluaran.

Hal ini dapat dilakukan dengan instruksi SETB <pin_port> dan CLR <pin_port>. Cara kedua ini mempunyai kelebihan tidak terlibatnya data di memori lain. Sedangkan cara ketiga adalah dengan menegasikan logika port keluaran. Dengan menggunakan instruksi CPL <pin_port>, maka logika keluaran di suatu pin pada port keluaran dapat dinegasikan setiap satu siklus sekali atau 0,5 mikrodetik sekali. Pembangkit clock 1 MHz Dengan mengoperasikan mikrokontroler pada frekuensi 24 MHz, maka satu siklus bahasa mesin yang terdiri dari enam fase dapat dieksekusi dalam waktu 0,5 mikrodetik (Atmel Corp., 2007). Dengan menggunakan instruksi CPL P1.0 berturut-turut, maka di pin 0 port 1 akan diperoleh keluaran isyarat clock dengan periode 1 mikrodetik atau berfrekuensi 1 MHz.

Keluaran pin 0 port 1 diharapkan berbentuk gelombang kotak dengan frekuensi 1 MHz. Namun dengan adanya efek kapasitif pada keluaran port tersebut, bentuk gelombang berbentuk keluaran mungkin tidak kotak, tapi mendekati keluaran gelombang kotak yang telah melalui untai integrator. Untuk mengembalikan bentuk tersebut ke gelombang kotak dapat digunakan gerbang dengan pemicu Schmitt, misalnya gerbang NOT dengan pemicu Schmitt 74LS14 (Tocci dan Widmer, 1998).

(19)

Gambar 2.7. Pembangkitan clock 1 MHz di port 1 pin 0

(Teknoin, Volume 13, Nomor 2, Desember 2008, 6-10. ISSN: 0853-8697).

Pembangkit clock kurang dari 1 MHz Clock dengan frekuensi kurang dari 1 MHz dapat dibentuk dengan menunda pelaksanaan instruksi CPL P1.0 berikutnya. Penundaan dapat dilakukan dengan menyisipkan instruksi untuk tidak mengerjakan apa-apa, yaitu NOP (No operation). Instruksi tersebut membutuhkan waktu eksekusi satu siklus. Penyisipan satu instruksi NOP di antara dua instruksi CPL P1.0 akan menunda eksekusi instruksi CPL P1.0 berikutnya selama satu siklus. Dengan mengoperasikan mikrokontroler ini pada clock 24 MHz, maka instruksi CPL berikutnya akan tertunda satu siklus atau 0,5 mikrodetik, sehingga selang eksekusi dua instruksi CPL adalah 1 μs.

Gambar 2.8, Pembangkitan clock 500 kHz

(20)

Penyisipan satu instruksi NOP akan membentuk clock dengan periode 2 mikrodetik atau berfrekuensi 500 kHz. Penyisipan dua instruksi NOP akan membentuk clock dengan frekuensi 333.333 Hz. Jumlah instruksi NOP yang dapat disisipkan dan frekuensi clock keluaran pada tabel 2.2.

Tabel 2.2. Jumlah instruksi NOP yang disisipkan dan frekuensi clock Output (Teknoin, Volume 13, Nomor 2, Desember 2008, 6-10. ISSN: 0853-8697).

2.3. Liquid Crystal Display (LCD)

LCD (Liquid Crystal Display) adalah suatu jenis media tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang misalnya alal–alat elektronik seperti televisi, kalkulator, ataupun layar komputer. Pada bab ini aplikasi LCD yang dugunakan ialah LCD karakter dengan jumlah karakter 2 x 16. LCD sangat berfungsi sebagai penampil yang nantinya akan digunakan untuk menampilkan status kerja alat. Adapun fitur yang disajikan dalam LCD ini adalah :

1. Terdiri dari 16 karakter dan 2 baris. 2. Mempunyai 192 karakter tersimpan. 3. Terdapat karakter generator terprogram.

(21)

4. Dapat dialamati dengan mode 4-bit dan 8-bit. 5. Dilengkapi dengan back light.

LCD Karakter dalam pengendaliannya cenderung lebih mudah dibandingkan dengan LCD Grafik. Namun ada kesamaan diantara keduanya, yaitu inisialisasi. Inisialisasi adalah prosedur awal yang perlu dilakukan dan dikondisikan kepada LCD agar LCD dapat bekerja dengan baik. Hal yang sangat penting yang ditentukan dalam proses inisialisasi adalah jenis interface (antarmuka) antara LCD dengan controller (pengendali). Pada umumnya terdapat dua jenis antarmuka yang dapat digunakan dalam pengendalian LCD karakter:

1. 4 Bit 2. 8 Bit

Untuk dapat mengendalikan LCD karakter dengan baik, tentu perlu koneksi yang benar. Dan koneksi yang benar dapat diwujudkan dengan cara mengetahui pin-pin antarmuka yang dimiliki oleh LCD karakter tersebut. LCD karakter yang beredar di pasaran memiliki 16 pin antarmuka:

(22)

Pin Konfigurasi

1. Vss 0V Supply Voltage for logic Ground

2. Vdd 5.0V Supply Voltage for logic and LED backlight

3. Vo (Variable) Operating voltage for LCD (Contrast Adjusment) 4. RS H/L H:DATA, L: Register select signal

5. R/W H/L H: Read Write Signal 6. E H,HÆL Chip enable signal 7. DB0 H/L Data bit 0 8. DB1 H/L Data bit 1 9. DB2 H/L Data bit 2 10. DB3 H/L Data bit 3 11. DB4 H/L Data bit 4 12. DB5 H/L Data bit 5 13.DB6 H/L Data bit 6 13. DB7 H/L Data bit 7

14. A/Vee Power supply for backlight V+/Negative Voltage Output +4.2 V 15. K Power supply for backlight V

Pada aplikasi umumnya RW diberi logika rendah “0”. Bus data terdiri dari 4-bit atau 8-bit. Jika jalur data 4-bit maka yang digunakan ialah DB4 sampai dengan DB7. Sebagaimana terlihat pada table diskripsi, interface LCD merupakan sebuah parallel bus, dimana hal ini sangat memudahkan dan sangat cepat dalam pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang 8-bit dikirim ke LCD secara 4-bit atau 8 bit pada satu waktu. Jika mode 4-bit yang digunakan, maka 2 nibble data dikirim untuk

(23)

membuat sepenuhnya 8-bit (pertama dikirim 4-bit MSB lalu 4-bit LSB dengan pulsa clock EN setiap nibblenya). Jalur kontrol EN digunakan untuk memberitahu LCD bahwa mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD program harus menset EN ke kondisi high “1” dan kemudian menset dua jalur kontrol lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus.

Saat jalur lainnya sudah siap, EN harus diset ke “0” dan tunggu beberapa saat (tergantung pada datasheet LCD), dan set EN kembali ke high “1”. Ketika jalur RS berada dalam kondisi low “0”, data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high atau “1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal, untuk menampilkan huruf “A” pada layar maka RS harus diset ke “1”. Jalur kontrol R/W harus berada dalam kondisi low (0) saat informasi pada data bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high “1”, maka program akan melakukan query (pembacaan) data dari LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status (membaca status LCD), lainnya merupakan instruksi penulisan. Jadi hampir setiap aplikasi yang menggunakan LCD, R/W selalu diset ke “0”. Jalur data dapat terdiri 4 atau 8 jalur (tergantung mode yang dipilih pengguna), DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7. Mengirim data secara parallel baik 4-bit atau 8-bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi interface LCD, menentukan mode operasi merupakan hal yang paling penting.

Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk

(24)

kontrol, 8 pin untuk data).Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit (3 pin untuk kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.

2.4. Keypad 4X4

Dalam perancangan alat ini dibutuhkan sebuah keypad sebagai inputan ke mikrokontroler yang berfungsi untuk menjalankan suatu aplikasi yang sudah jadi, dengan adanya keypad dapat menginputkan suatu besaran nilai yang dinginkan dan selain itu dapat memerintahkan suatu aplikasi agar dapat di proses.keypad adalah sarana inputan yang banyak digunakan dalam aplikasi MMI (Man Machine

Interface). Misalnya:

1. Pada sistem pengaturan suhu, keypad bisa digunakan operator untuk memasukkan set point suhu yang diinginkan

2. Pada sistem pengaturan motor, keypad bisa digunakan operator untuk memasukkan set point kecepatan motor yang diinginkan

3. Proses inputan waktu untuk set waktu 4. Dan sebagainya

(25)

Gambar 2.10. Keypad 4X4

Ada 16 buah tombol pushbutton yang dirangkai sedemikian hingga menjadi 4 jalur kolom (K1,K2,K3,K4) dan 4 jalur baris (B1,B2,B3,B4). Dari konstruksi ini, kita bisa mendapatkan data-data karakteristiknya sebagai berikut:

1. Jika tidak ada penekanan tombol sama sekali, maka semua jalur akan saling lepas (tidak ada yang tersambung)

2. Tidak ada satu kondisipun yang memungkinkan terjadinya persambungan antar

3. Sesama jalur kolom atau antar sesama jalur baris, kecuali ada penekanan lebih dari satu tombol. Misalnya tombol 1 dan tombol 2 ditekan

bersamaan, maka K1-K2-B1 akan tersambung.

4. Untuk penekanan hanya satu tombol, maka hanya terjadi persambungan antara jalur kolom dan jalur baris yang terhubung pada tombol yang ditekan tersebut. Misalnya, jika tombol 1 ditekan, maka K1-B1 akan tersambung.

(26)

Tabel 2.3. Konfigurasi Keypad 4X4 Tombol yang Ditekan Jalur Yang Terhubung Tombol yang Ditekan Jalur Yang Terhubung 1 B1-K1 7 B3-K1 2 B1-K2 8 B3-K2 3 B1-K3 9 B3-K3 A B1-K4 C B3-K4 4 B2-K1 * B4-K1 5 B2-K2 0 B4-K2 6 B2-K3 # B4-K3 B B2-K4 D B4-K4

Gambar

Gambar 2.1. Diagram pin RTC DS1307  (Data Sheet IC Real-Time Clock DS1307).
Gambar 2.2. Blok Diagram Internal  (Data Sheet IC Real-Time Clock DS1307).
Gambar 2.3. Prinsip komunikasi serial bus I2C (Data Sheet RTC DS1307).
Gambar 2.4. Proses transfer data pada I2C (data sheet RTC DS1307).
+7

Referensi

Dokumen terkait

• Berbagai komponen seleksi (radiasi sinar gamma, toksin murni atau filtrat, Al dan pH rendah, PEG, zat pengatur tumbuh, dan lain-lain) dapat digunakan untuk meningkatkan

Pemasukan dan pembukaan dokumen penawaran harus dihadiri oleh masing-masing Direktur Penyedia Barang/Jasa, dalam hal tidak hadir dapat diwakilkan kepada pejabat yang

 b. Depresan metabolik yang potent, isofluran memiliki sedikit efek pada aliran darah otak dan tekanan intrakranial daripada halotan. Karena isofluran menekan

  5sesmen awal medis yang dilakukan sebelum pasien di rawat inap@ atau sebelum tindakan pada rawat jalan di rumah sakit@ tidak b&#34;leh lebih dari )&amp; hari@ atau riwayat

Kedua, Standardisasi Mahar Dalam Perspektif Maqashid Syariah, Standardisasi mahar setidaknya tidak memberatkan kedua belah pihak, sesuai dengan tujuan dari

Setelah data terkumpul, metode analisis yang penulis gunakan adalah content analisis atau yang lebih dikenal dengan istilah &#34;analisis isi&#34; yang dalam hal ini

Sistem informasi adalah koleksi dari hardware, software, data, orang, dan prosedur yang bekerja bersama untuk menghasilkan informasi yang berkualtas.... Perubahan dalam

Ho : β1, β2, β3, β4, β5 = 0, artinya gender, strategi bisnis, motivasi kewirausahaan dan kompetensi SDM tidak mempunyai pengaruh yang signifikan terhadap kebijakan