BAB II LANDASAN TEORI
Pada bab ini akan dibahas secara singkat mengenai teori dasar yang digunakan untuk merealisasikan pemanfaatan ear tag RFID pada peternakan rakyat. Pada perancangan ini teori dasar yang berkaitan adalah teori dasar tentang organisasi peternakan rakyat, Radio Frequency Identification (RFID), mikrokontroler ARM CORTEX-M0 LPC1114, Liquid Crystal Display (LCD), Real-Time Clock (RTC) DS1307, dan Multi Media Card (MMC).
2.1. Organisasi Peternakan Rakyat Menurut Kamus Besar Bahasa Indonesia pengertian dari peternakan adalah usaha pemeliharaan dan pembiakan ternak. di Indonesia usaha peternakan yang dilakukan kebanyakan dalam skala kecil atau lebih sering disebut dengan peternakan rakyat. Pemeliharaan ternak dalam peternakan rakyat dilakukan di kandang-kandang yang dibangun di halaman belakang rumah, bahkan ada juga kandang ternak yang menyatu dengan rumah utama. Jumlah hewan yang diternakkan juga tidak banyak, untuk peternak rakyat yang beternak sapi biasanya tidak lebih dari 10 ekor sapi [10, h.1]. Dalam melakukan kegiatan beternak pada umumnya beberapa peternak rakyat yang terletak pada satu wilayah yang sama membentuk sebuah kelompok ternak. dengan adanya kelompok ternak, peternak dapat mengembangkan usaha peternakan bersama-sama dan saling membantu demi kemajuan bersama. Hewan yang biasa diternakkan di Indonesia antara lain ayam, kelinci, sapi, kambing, babi, dan lebah madu. Untuk ternak sapi, ada beberapa jenis sapi unggul yang baik untuk yang diternakkan. seperti sapi Shorhorn dari Inggris, Freisian Holstein dari 8
9
Belanda, Yersey dari selat Channel, Brown Swiss dari Switzerland, Red Danish dari Denmark. Semua jenis sapi yang disebutkan di atas merupakan jenis dari sapi perah dan jenis sapi yang paling cocok dan paling menguntungkan untuk dibudidayakan di Indonesia adalah Freisian Holstein atau yang sering disebut sapi FH [2, h.1-2].
2.1.1. Pembibitan Ternak [22, h.1-6] Dalam kegiatan beternak sapi ada 3 hal yang dominan yang menentukan keberhasilan usaha ternak sapi yaitu pembibitan (breeding), pakan (feeding), dan pengelolaan (managing). Proses pembibitan mempunyai peran penting dan perlu diperhatikan dengan serius karena untuk mendapatkan hasil peternakan yang maksimal dan sesuai harapan dimulai dari proses ini. Proses pembibitan meliputi pemilihan calon induk induk jantan dan betina, perawatan bibit dan calon induk, dan sistem pemuliabiakan. Secara umum syarat-syarat yang perlu diperhatikan dalam pemilihan bibit ternak yang baik adalah: •
Mempunyai tanda telinga yang berarti sudah terdaftar dan mempunyai silsilah yang jelas.
•
Berasal dari induk dan pejantan yang mempunyai keturunan produksi susu tinggi.
•
Untuk calon induk betina, sudah pernah beranak dan tiap tahun beranak.
•
Tubuh sehat dan bukan pembawa penyakit menular.
Proses pembibitan ternak tidak akan terlepas dengan kawin suntik atau inseminasi buatan (IB). Dengan IB, peternak dapat memperbaiki mutu genetik ternak dan menghasilkan bibit yang berkualitas baik. Inseminasi buatan adalah suatu cara atau
10
teknik memasukan mani (sperma atau semen) yang telah dicairkan dan telah diproses terlebih dahulu yang berasal dari ternak jantan unggul dan pilihan ke dalam saluran alat kelamin betina dengan metode dan alat khusus yang sering disebut insemination gun. Ada beberapa tujuan dari IB antara lain : 1. Memperbaiki mutu genetik. 2. Tidak mengharuskan pejantan unggul untuk dibawa ke tempat yang dibutuhkan sehingga mengurangi biaya. 3. Mengoptimalkan penggunaan bibit pejantan unggul secara luas dalam jangka waktu yang lebih lama. 4. Meningkatkan angka kelahiran dengan cepat dan teratur. 5. Mencegah penularan/penyebaran penyakit kelamin.
IB sangat dianjurkan dalam usaha beternak sapi karena memiliki beberapa keuntungan antara lain : 1. Menghemat biaya pemeliharaan ternak jantan. 2. Dapat mengatur jarak kelahiran ternak dengan baik. 3. Mencegah terjadinya kawin sedarah pada sapi betina (inbreeding). 4. Dengan peralatan dan teknologi yang baik, sperma dapat disimpan dalam jangka waktu yang lama. 5. Menghindari ternak dari penularan penyakit terutama dari penyakit yang ditularkan lewat kelamin.
2.1.2. Direktorat Jenderal Peternakan dan Kesehatan Hewan Pemerintah juga mempunyai peran dalam proses pembibitan ternak. untuk skala peternakan rakyat, pemerintah banyak membantu dalam hal penyediaan semen beku
11
atau sperma dari pejantan unggul. Melalui Unit Pelaksana Teknis (UPT) yang berada dibawah Direktorat Jenderal Peternakan dan Kesehatan Hewan, pemerintah dapat berinteraksi langsung dengan peternak. struktur organisasi Direktorat Jenderal Peternakan dan Kesehatan Hewan ditunjukan oleh Gambar 2.1.
Gambar 2.1. Bagan Struktur Organisasi Direktorat Jenderal Peternakan dan Kesehatan Hewan [7].
Ada banyak UPT yang dibentuk oleh Direktorat Jenderal Peternakan dan Kesehatan Hewan. UPT yang berhubungan dengan inseminasi buatan adalah Balai Besar Inseminasi Buatan (BBIB). BBIB berada dan bertanggung-jawab langsung kepada Direktorat Jenderal Peternakan dan Kesehatan Hewan. BBIB memiliki tugas melaksanakan pemuliaan, pemeliharaan, produksi, dan pemasaran bibit unggul sapi. Ada beberapa fungsi dari BBIB antara lain : 1. Penyusunan program kegiatan produksi, pemasaran, dan pemantauan mutu semen unggul ternak, serta pengembangan inseminasi buatan. 2. Pelasanaan dan pemeliharaan ternak pejantan unggul. 3. Pelaksanaan pengujian keturunan dan fertilitas pejantan unggul. 4. Pelaksanaan produksi dan penyimpanan semen unggul ternak.
12
5. Pelaksanaan pemantauan dan pengawasan mutu semen unggul ternak yang beredar. 6. Pelaksanaan pengembangan teknik dan metode inseminasi buatan. 7. Pemberian saran teknik produksi semen unggul ternak. 8. Pemberian pelayanan teknik kegiatan produksi dan pemantuan semen unggul ternak, dan pengembangan inseminasi buatan 9. Pelaksanaan pemasaran dan distribusi semen unggul ternak. 10. Pemberian informasi dan pelaksanaan dokumentasi hasil kegiatan inseminasi buatan. 11. Pengelolaan urusan tata usaha dan rumah tangga BBIB.
Struktur organisasi pada UPT BBIB ditunjukan pada Gambar 2.2.
Gambar 2.2. Bagan Struktur Organisasi BBIB [7].
2.2. Radio Frequency Identification (RFID) [13, h.2-7] Teori dasar yang mendasari terciptanya teknologi RFID sudah dikenal sejak tahun 1930-an. Tidak lama setelah itu, ditemukan bahwa mendekatkan bahan-bahan konduktif ke sebuah medan elektrik atau medan magnetik dapat mengubah karakteristik medan-
13
medan tersebut. Hal ini terjadi karena bahan-bahan konduktif menyerap dan memantulkan energi ke medan tersebut. Jika medan tersebut adalah sebuah radio frequency (RF), maka bahan-bahan konduktif tersebut dapat memberikan pantulan radiasi kembali ke medan sumber. Teknologi RFID mengambil keuntungan dari karakteristik-karakteristik tersebut dengan cara memanipulasi urutan dan kecepatan pada saat pemantulan terjadi, yang disebut juga dengan modulasi. RFID Tag dibuat untuk memantulkan urutan sinyal RF sumber yang berisi informasi ke dalam bentuk data digital. 2.2.1. Gelombang Radio Cahaya, sinar-X, dan gelombang radio merupakan gelombang elektromagnetik. Perbedaan antara ketiganya terletak pada panjang gelombang masing-masing bahan yang menyebabkan frekuensinya pun berbeda-beda sesuai dengan persamaan gelombang elektromagnetik (Persamaan 2.1). (2.1) dimana : c
= cepat rambat GEM di ruang bebas = 3 x 108 m/s.
f
= frekuensi gelombang (Hz).
λ
= panjang gelombang (m).
Jumlah gelombang yang terjadi dalam satu detik disebut sebagai frekuensi, dan diukur dalam satuan Hertz, sehingga satu Hertz sama dengan satu osilasi gelombang tiap satuan waktu (Gambar 2.3).
14
Gambar 2.3. Osilasi Gelombang. [13, h.3]
Sistem RFID beroperasi pada pita frekuensi tertentu. Pita frekuensi merupakan jangkauan frekuensi yang mendekati nilai dari frekuensi tengah. Sebagai contoh, frekuensi pembawa 915MHz termasuk ke dalam jangkauan frekuensi 902MHz – 928MHz yang terbagi menjadi 50 kanal komunikasi. Beberapa jenis RFID mempunyai jenis frekuensi yang berbeda, antara lain 125kHz, 13,56kHz, 868MHz (di Eropa), 915MHz, dan 2,45GHz. Sebagai contoh pada jenis RFID dengan frekuensi pembawa 13,56MHz (Gambar 2.4), tetapi pada dasarnya sama dengan frekuensi lainnya. Frekuensi pembawa 13,56 MHz : 13.560.000 osilasi tiap detik
Gambar 2.4. Gelombang Radio RFID dengan frekuensi pembawa 13,56MHz [13, h.3].
Kanal frekuensi (sebagai contoh 13,56MHz) yang tertanam pada sistem komunikasi data RFID disebut sebagai frekuensi pembawa (Gambar 2.6(a)), karena digunakan untuk membawa data pada antena RFID Tag yang dibuat hanya dapat beresonansi pada pita-pita tertentu dari frekuensi pembawa yang tertanam pada sistem RFID. Jika berada dalam jangkauan frekuensi tersebut, RFID Tag dapat memantulkan
15
energi kembali ke sumber RFID Reader (Gambar 2.5). Untuk mengirimkan data dari RFID Tag, frekuensi pembawa ini harus dimodulasikan terlebih dahulu.
Gambar 2.5. Proses Penyerapan dan Pemantulan data dari RFID Reader ke RFID Tag [13, h.3].
2.2.2. Modulasi Data yang akan dikirim pada gelombang pembawa RF melalui suatu proses yang disebut modulasi. Dalam proses ini, urutan data-data digital (‘1’ dan ‘0’) digabung menjadi satu dengan frekuensi pembawanya. Urut-urutan data ini mempunyai frekuensi clock yang lebih lambat dari frekuensi gelombang pembawanya. Pada dasarnya ada dua buah jenis modulasi yang digunakan, yaitu Amplitude Modulation (AM) dan Frequency Modulation (FM). AM bekerja dengan menggunakan urutan data untuk mengubah-ubah amplitudo gelombang frekuensi pembawa (Gambar 2.6(c)). FM bekerja dengan mengubah-ubah rapat renggangnya gelombang sesuai dengan urutan data yang diberikan tanpa mengubah amplitudo dari gelombang pembawa (Gambar 2.6(d)).
16
(a)
(b)
(c)
(d) Gambar 2.6. (a) Frekuensi Pembawa 13,56MHz; (b) Data Stream; (c) Frekuensi Pembawa + Data Stream pada AM; (d) Frekuensi Pembawa + Data Stream pada FM [13, h.4-5].
2.2.3. RFID Tag Pada umumnya, sebuah RFID Tag terdiri dari integrated circuit (IC) berbahan dasar silikon yang terhubung dengan sebuah antena (Gambar 2.7).
Gambar 2.7. Bentuk dasar RFID Tag [13, h.5]. RFID Tag terbagi menjadi dua jenis yaitu tag pasif dan tag aktif. Dari kedua jenis tag tersebut, yang paling umum digunakan adalah tag pasif, disebut pasif karena tag
17
tersebut tidak mempunyai catu daya internal. Tag pasif mendapat catu daya oleh aliran energi dari gelombang pembawa RF yang dikirimkan oleh RFID Reader/Interrogator. Gelombang pembawa termodulasi yang dikirim oleh Reader ditangkap oleh antena, kemudian gelombang pembawa ini menginduksi arus bolak-balik (AC) yang relatif kecil pada antena. Di dalam IC chip, Power Rectifier dan Regulator mengubah arus AC menjadi arus DC yang digunakan untuk mengaktifkan IC chip, yang seketika itu juga aktif. Sebuah Clock Extractor digunakan untuk memisahkan pulsa clock dari gelombang pembawa dan menggunakan pulsa tersebut untuk sinkronisasi bagian logika, memori, dan modulator dari IC chip dengan Reader (Gambar 2.8).
Gambar 2.8. Alur kerja RFID Tag ketika menerima sinyal dari RFID Reader [13, h.6].
Pada Gambar 2.8, bagian Logika (Logic) berfungsi untuk memisahkan data digital “1” dan “0” dari gelombang pembawa, kemudian membandingkan urut-urutan data yang diterima dengan program internal pada IC chip. Jika bagian logika memutuskan bahwa data yang diterima valid, maka proses selanjutnya adalah mengakses memori pada IC chip yang berisi data ID atau data-data lain yang sudah disimpan pada memori tersebut. Data-data tersebut kemudian disandikan oleh bagian logika menggunakan bantuan Clock Extractor. Data-data yang sudah tersandikan tersebut kemudian dikirim ke bagian modulator. Modulator berfungsi untuk menggabungkan urut-urutan data yang
18
sudah tersandikan dengan gelombang pembawa yang disesuaikan dengan karakteristik antena secara elektrik. Proses penyesuaian karakteristik antena secara elektrik untuk memantulkan gelombang RF disebut sebagai backscatter. Metode pengiriman data RFID Tag pasif ke RFID Reader dapat dibagi menjadi dua, yaitu : 1.
Inductive Coupling Metode inductive coupling digunakan pada RFID Tag frekuensi rendah (124kHz, 125kHz, 135kHz) dan tinggi (13,56MHz). Pada metode inductive coupling, gulungan tembaga pada tag terinduksi oleh medan elektromagnetik yang dihasilkan oleh gulungan tembaga pada reader. Hasil induksi inilah yang menjadi sumber tenaga pada tag untuk mengirimkan sinyal yang berisi data ke reader. Karena menggunakan prinsip induksi, maka jarak antara tag dengan reader harus pendek agar induksi dapat ditangkap.
2.
Propagation Coupling Pada metode propagation coupling, energi yang digunakan berasal dari gelombang elektromagnetik (gelombang radio), kemudian RFID tag akan mengumpulkan energi elektromagnetik ini untuk digunakan sebagai sumber daya untuk mengirimkan data ke reader.
19
2.2.4. RFID Reader CR-028 [2, h.1-8]
Gambar 2.9. Modul CR-028 [2, h.2]
CR-028 merupakan RFID reader yang mengutamakan biaya dan daya rendah. CR-028 sudah mendukung standard mifare yaitu mifare S50, mifare s70, mifare ultralight, dan ISO 14443A yang lain. CR-028 memiliki spesifikasi teknis sebagai berikut : •
Menggunakan catu daya 2,5-3,6 V dan 30-50 mA.
•
Menggunakan antarmuka RS-232.
•
Kecepatan transmisi 19200 bps.
•
Jarak baca dan tulis sampai 5 cm.
CR-028 berupa modul (Gambar 2.9) dengan dengan dimensi 38,2 x 38,2 mm dengan tebal sekitar 3 mm. CR-028 menyediakan 12 pin keluaran untuk sambungan keluar. Pin keluaran beserta deskripsinya dapat dilihat pada Tabel 2.1.
20
Tabel 2.1. Nomor, Nama, dan Deskripsi Pin Keluaran CR-028 [3, h.2] No. Pin 1 2 3 4 5 6 7 8 9 10 11 12
Nama NC VCC GND RXD TXD INT0 NC NC SCL MISO MOSI SS
Diskripsi Masukan catu daya 2,5-3,6 V ground TTL RX TTL TX
Serial clock untuk SPI MISO untuk SPI MOSI untuk SPI Slave Select untuk SPI
Dalam berkomunikasi, CR-028 menggunakan format binary hexadecimal dengan format paket data seperti ditunjukkan pada Tabel 2.2.
Tabel 2.2. Format Paket Data Dalam Komunikasi CR-028 [3, h.3] HEAD 2 byte
LENGTH 2 byte
NODE ID 2 byte
FUNCTION CODE 2 byte
DATA Sesuai kebutuhan
XOR 1 byte
Penjelasan dari format paket data sebagai berikut : •
HEAD. Header memiliki panjang data sebesar 2 byte dan isi dari data ini selalu tetap sesuai perusahaan pengembangnya.
•
LENGTH. Byte ini merupakan byte yang berisi data yang menunjukan panjang paket data. Panjang paket yang dihitung dari NODE ID sampai XOR atau checksum.
•
NODE ID. berisi data alamat tujuan.
•
FUNCTION CODE. Byte ini berisi data yang menunjukan fungsi tertentu atau perintah tertentu.
•
DATA. Byte data berisi data yang akan ditransmisikan.
21
•
XOR. Berupa byte hasil checksum semua data mulai dari byte NODE ID.
Sebelum melakukan proses baca dan tulis kartu ada beberapa langkah yang harus dilakukan yaitu : 1. Memeriksa tipe kartu 2. Meminta nomor seri kartu 3. Memilih kartu 4. Autentikasi mifare 2 5. Proses baca tulis dilakukan
Proses baca dan tulis bisa dilakukan terus menerus selama kartu masih berada pada area baca dan tulis. Apabila kartu sudah berada diluar area baca dan tulis maka langkah 1-4 harus diulang terlebih dahulu.
2.2.5. Chip Mifare 1k S50 [18, h.4-16] Chip Mifare 1k S50 merupakan chip RFID tag yang dikembangkan oleh perusahaan Philips Semiconductor. Chip Mifare 1k S50 bertipe tag pasif. Chip ini sudah memenuhi standard ISO/IEC 14443A yang merupakan standard RFID tag untuk frekuensi 13,56MHz. Beberapa fitur yang ditawarkan oleh Chip Mifare 1k S50 adalah : 1. Mifare RF interface •
Contactless dan tidak membutuhkan catu daya
•
Dapat bekerja sampai rentang jarak 10 cm dari reader (tergantung antena)
•
Bekerja pada frekeunsi 13,56MHz
•
Kecepatan pengiriman data 106Kbit/s
22
2. EEPROM •
Memori sebesar 1kbyte yang tersusun dalam 16 sektor dengan 4 blok tiap sektor. Tiap blok sebesar 16 byte.
•
Mampu menyimpan data selama 10 tahun
•
Kemampuan dapat ditulis hingga 100.000 kali.
3. Keamanan •
Memiliki nomor serial yang unik untuk setiap tag
Gambar 2.10. Organisasi Memori Chip Mifare 1k S50 [18, h.9]
23
Organisasi memori dari chip Mifare 1k S50 ditunjukkan Gambar 2.10. Sektor 0, blok 0 tidak dapat diisikan data karena blok ini berisi data produksi chip yang diisikan oleh perusahaan pengembang. Blok terakhir, blok 3 di setiap sektor merupakan blok trailer. Blok ini digunakan sebagai jalur keluar masuk data di setiap sektor.
2.3. Mikrokontroler ARM Cortex-M0 LPC1114 [15, h.3-4] LPC1114 merupakan salah satu tipe mikrokontroler 32-bit yang termasuk dalam keluarga
ARM
Cortex-M0.
LPC1114
dikembangkan
oleh
perusahaan
NXP
semiconductor. LPC1114 merupakan salah satu mikrokontroler yang dirancang untuk aplikasi mikrokontroler 8/16-bit. Mikrokontroler ini memiliki harga yang murah (low cost), menawarkan kinerja yang baik, berdaya rendah dan set instruksi yang lebih sederhana dibanding dengan mikrokontroler yang memiliki arsitektur 8/16-bit. LPC1114 memiliki beberapa fitur sebagai berikut : 1. Sistem •
ARM Cortex-M0 prosesor, berjalan pada frekuensi hingga 50 MHz.
2. Memori •
Di dalam chip terdapat flash programming memory sebesar 32 kB (LPC1114/LPC11C14).
•
SRAM sebesar 8kB.
3. Digital peripherals • 42 GPIO (General Purpose Input/Output) yang dilengkapi dengan internal pull-up dan pull-down resistor yang bisa dikonfigurasikan pada setiap pinnya. • Arus keluaran maksimum sebesar 20mA.
24
• 4 timer atau counter. • Watch Dog timer yang bisa di program. 4. Analog peripherals • 10-bit ADC (Analog Digital Converter) dengan masukan sebanyak 8 pin dilengkapi multiplexing. 5. Serial interfaces • UART (Universal Asynchronous Reciever-Transmitter) dan mendukung komunikasi RS-485. • SPI (Serial Peripherals Interface) sebanyak 2 buah. SPI kedua tersedia pada paket 48-pin LQFP dan paket 44-pin PLCC. • Antarmuka I2C yang mendukung penuh spesifikasi I2C. 6. Clock generation • Internal RC oscillator sebesar 12 MHz yang digunakan untuk menjalankan mikrokontroler dan sebagai clock utama sistem. • Tersedia pin untuk clock eksternal dengan batas frekuensi antara 1 MHz - 25 MHz. 7. Power control •
Terintegrasi PMU (Power Management Unit) unutk meminimalkan konsumsi daya saat mode sleep, deep sleep, dan deep power down.
•
Power profile yang berada di ROM boot yang memungkinkan untuk mengoptimalkan kinerja dan meminimalkan konsumsi daya untuk setiap aplikasi yang diberikan melalui satu panggilan fungsi sederhana (Pada LPC111x/102/202/302 saja).
•
Memiliki 3 mode yaitu deep sleep, dan deep power down untuk menghemat daya.
25
8. Setiap mikrokontroler memiliki serial number yang unik untuk identifikasi. 9. Catu daya tunggal sebesar 3,3 volt. 10. Tersedia dalam paket 48-pin LQFP, 33-pin HVQFN, dan 44-pin PLCC.
Gambar 2.11 menunjukkan bentuk fisik dan konfigurasi pin keluaran dari Mikrokontroler ARM CORTEX-M0 LPC1114 dalam paket 48-pin LQFP.
Gambar 2.11. Mikrokontroler ARM CORTEX-M0 LPC1114 [15, h.89]
Fungsi dari pin keluaran mikrokontroler ARM CORTEX-M0 LPC1114 pada Gambar 2.11 dapat dikelompokkan sesuai fungsinya dan dapat dilihat pada Tabel 2.3.
26
Tabel 2.3. Nomor, Simbol, dan Keterangan Pin dari Mikrokontroler ARM CORTEX-M0 LPC1114 Nomor Pin
Simbol Pin
3, 4, 10, 14, 15, 16, 22, 23, 27, 28, 29, 32
PIO 0.0 – PIO 0.11
9,17, 30, 33, 34, 35, 39, 40, 42, 45, 46, 47
PIO 1.0 – PIO 1.11
1, 2, 11, 12, 13, 19, 20, 24, 25, 26, 31, 38
PIO 2.0 – PIO 2.11
18, 21, 36, 37, 43, 48,
PIO 3.0 – PIO 3.5
5, 41
VSS
8, 44
VDD
6, 7
XTALIN, XTALOUT
15 16
PIO 0.4/SCL PIO 0.5/SDA SWCLK/PIO 0.10/SCK0/CT16B0_MAT0
29 27
PIO 0.8/MISO0/CT16B0_MAT0
28
PIO 0.9/MOSI0/CT16B0_MAT1
10 3
PIO 0.2/SSEL0/CT16B0_CAP0 RESET/PIO0.0 PIO 0.1/CLKOUT/CT32B0_MAT2 PIO 1.7/TXD/CT32B0_MAT1 PIO 1.6/RXD/CT32B0_MAT0
4 47 46
Keterangan 12 Pin masukan/keluaran yang dapat diatur arah dan fungsinya. 12 Pin masukan/keluaran yang dapat diatur arah dan fungsinya. 12 Pin masukan/keluaran yang dapat diatur arah dan fungsinya. 6 Pin masukan/keluaran yang dapat diatur arah dan fungsinya. Ground. Masukan catu daya 3,3 Volt untuk internal regulator dan sebagai tegangan referensi untuk ADC. Masukan dan keluaran untuk eksternal crystal oscillator I2C-bus I2C-bus Serial clock untuk SPI0 Master In Slave out untuk SPI0 Master Out Slave In untuk SPI0 Slave Select untuk SPI0 Masukan eksternal reset Clock out transmitter UART receiver UART
2.4. Liquid Crystal Display (LCD) [20, h.16-20] LCD merupakan salah satu antarmuka visual dengan pengguna yang sudah umum digunakan. Untuk dapat digunakan, ada beberapa register yang perlu diketahui sebelum memanfaatkan LCD ini lebih lanjut, antar lain:
27
a. Instruction Register (IR), berfungsi mendefinisikan fungsi yang harus dikerjakan oleh LCD sekaligus sebagai register tempat alamat dari DDRAM atau CGRAM dimasukan. b. Data Register (DR), digunakan untuk memasukkan atau membaca data dari dan atau ke dalam DDRAM atau CGRAM. Pada waktu menulis, hanya dibutuhkan pengaturan posisi awal dari DDRAM atau CGRAM, dimana kemudian data yang akan ditampilkan dapat dimasukkan ke dalam DDRAM atau CGRAM. Pada waktu membaca DR memasukkan data ke dalam DDRAM atau CGRAM yang akan dibaca. Setelah proses dilakukan, data pada alamat berikutnya akan dimasukkan kedalam register secara otomatis. c. Busy Flag (BF), LCD akan mengatur BF pada saat modul LCD mengeksekusi operasi internal, sehingga pada saat LCD mengerjakan operasi internal, LCD tidak dapat menerima perintah operasi eksternal. d. Address Counter (AC), alamat counter akan menunjukkan ke alamat berikutnya setelah proses pembacaan DDRAM atau CGRAM selesai. e. Display Data RAM (DDRAM), DDRAM merupakan tempat menampung data yang akan ditampilkan. Tabel 2.4 menunjukkan posisi display dan alamat data. Tabel 2.4 Alamat Data DDRAM [9, h.6]
f. Character Generator ROM (CGROM), isi register ini sudah disediakan oleh modul LCD, sehingga hanya diperlukan pemberian kode ASCII.
28
g. Character Generator RAM (CGRAM), register ini disediakan untuk penambahan karakter khusus selain karakter yang disediakan oleh CGROM.
Sebagai contoh bentuk fisik, digunakan LCD karakter 20 kolom x 4 baris (Gambar 2.12) dan untuk pin-pin keluaran serta deskripsi pin-pin keluaran dari modul LCD ini ditunjukkan oleh Tabel 2.5.
Gambar 2.12. Modul LCD Tabel 2.5. Deskripsi Pin Keluaran LCD 20x4 [9, h.5] Nomor Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Symbol Vss Vdd VO RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 A K
Level 0V 5V Variable H/L H/L H/H-L H/L H/L H/L H/L H/L H/L H/L H/L 4,2-4,6V 0V
Keterangan GND Catu daya untuk logika Tegangan kerja untuk LCD H=data, L=instruction code H=read, L=write Chip enable signal Data bit 0 Data bit 1 Data bit 2 Data bit 3 Data bit 4 Data bit 5 Data bit 6 Data bit 7 LED+ LED -
29
2.5. Real-Time Clock (RTC) DS1307 [3, h.1-7] DS1307 adalah RTC berdaya rendah. Alamat dan data ditransfer melalui 2 wire serial bus 2 arah (Gambar 2.13). Jam / kalender menyediakan detik, menit, jam, hari, tanggal, bulan, dan informasi tahun. Akhir tanggal bulan secara otomatis disesuaikan selama berbulan-bulan dengan kurang dari 31 hari, termasuk koreksi untuk tahun kabisat. Jam beroperasi baik dalam format 24-jam atau 12-jam dengan indicator AM / PM. DS1307 dilengkapi fitur untuk mendeteksi gangguan listrik dan secara otomatis beralih ke pasokan baterai.
2.5.1. 2 wire Serial Data Bus
Gambar 2. 13. Tipe Konfigurasi 2 Wire Bus [3, h.6]
The DS1307 mendukung protokol transmisi dua arah menggunakan 2 wire bus untuk data. Sebuah perangkat yang mengirimkan data ke bus didefinisikan sebagai pemancar dan perangkat penerima data sebagai penerima. Perangkat yang mengontrol pesan disebut master. Perangkat yang dikendalikan oleh master disebut sebagai slave. Bus harus dikontrol oleh perangkat master, yang menghasilkan serial clock (SCL),
30
mengontrol akses bus, dan menghasilkan kondisi START dan STOP. DS1307 beroperasi sebagai slave pada 2 wire bus. Transfer data dapat dimulai hanya ketika bus tidak sibuk. Selama transfer data, jalur data harus tetap stabil. Perubahan jalur data saat jalur clock HIGH akan diinterpretasikan sebagai sinyal kontrol. kondisi bus data dapat didefinisikan sebagai berikut: •
BUS not busy: jalur data dan Clock tetap HIGH.
•
Start data transfer: Perubahan jalur data dari HIGH ke LOW, saat clock HIGH, mendefinisikan kondisi START.
•
Stop data transfer: perubahan jalur data dari LOW ke HIGH, saat clock HIGH, mendefinisikan kondisi STOP.
•
Data valid: Kondisi jalur data yang menunjukan data valid merupakan data adalah ketika setelah kondisi START, jalur data stabil selama periode HIGH dari sinyal clock. Data harus diubah selama periode LOW dari sinyal clock. Ada satu clock pulsa setiap bit data (Gambar 2.14).
Gambar 2.14. Pengiriman Data pada 2 wire bus [3, h.7]
31
•
Acknowledge: Setiap perangkat penerima, wajib menghasilkan acknowledge setelah menerima setiap byte yang dikirim master. Perangkat master harus menghasilkan pulsa clock tambahan untuk bit acknowledge ini.
Setiap transfer data dimulai dengan kondisi START dan diakhiri dengan kondisi STOP. Jumlah byte data yang ditransfer antara START dan BERHENTI kondisi tidak terbatas, dan ditentukan oleh perangkat master. Ada dua jenis transfer data yang mungkin: •
Transfer data dari master ke slave. Byte pertama yang dikirimkan oleh master adalah alamat slave. Kemudian diikuti sejumlah byte data. slave mengembalikan sebuah acknowledge setelah setiap byte yang diterima. Data ditransfer dengan bit yang paling signifikan (MSB) terlebih dahulu.
•
Transfer data dari slave ke master. Pertama, master mengirimkan alamat slave ke slave. Kemudian slave mengembalikan acknowledge bit dan diikuti dengan mentransmisikan sejumlah byte data. Master mengembalikan acknowledge setelah semua byte yang diterima selain byte terakhir. Pada akhir byte yang diterima, master mengembalikan not acknowledge ke slave.
2.6. Multi Media Card (MMC) [7; 8] MMC merupakan sebuah media penyimpanan data yang populer pada saat ini. Bentuknya yang kecil serta memiliki kapasitas yang besar menyebabkan media penyimpanan ini digemari. Saat ini banyak ukuran yang tersedia seperti RS-MMC, miniSD dan microSD dengan ukuran yang lebih kecil dengan fungsi yang sama. MMC memiliki mikrokontroler di dalamnya yang mengontrol memori flash seperti write,
32
read, erasing, error controls dan wearleveling). Data ditransfer antara kartu memori dan host controller sebagai blok data dalam satuan 512 byte. Suatu MMC dapat berkomunikasi dengan host-nya dalam hal ini mikrokontroler dengan menggunakan protokol SPI (Serial Peripheral Interface). MMC ini membutuhkan tegangan kerja antara 2,7 Volt - 3,6 Volt. Ada beberapa SPI Command Set dalam menggunakan MMC. SPI Command Set dari MMC dapat dilihat pada Tabel 2.6. Tabel 2.6. SPI Command Set [7] Command Set CMD 0 CMD 1 CMD 9 CMD 10 CMD 12 CMD 17 CMD 18 CMD 23 CMD 24 CMD 25
Deskripsi Reset perangkat lunak Inisialisasi Proses inisial Baca register CSD Baca register CID Berhenti baca data Baca blok Baca multi blok Mendefinisikan jumlah blok Tulis blok Tulis multi blok
Untuk dapat melakukan proses baca dan tulis pada MMC perlu dilakukan initisialisasi terlebih dahulu. Inisialisasi berfungsi untuk mempersiapkan MMC agar dapat di akses. Untuk melakukan initialisasi host harus mengirim command set CMD1. Setelah CMD1 diterima oleh MMC dan berhasil, maka MMC siap digunakan. Proses baca dimulai dengan host mengirimkan CMD17 untuk pembacaan blok tunggal atau CMD18 untuk multi blok, kemudian MMC akan mengirimkan data respon (Tabel 2.7). Apabila berhasil, maka MMC akan mengirimkan data yang diminta. Gambar 2.15 menunjukkan transfer data pada proses baca.
33
Tabel 2.7 Data Respon Data Respon 010 101 110
Keterangan Data diterima Data ditolak Data ditolak
(a)
(b) Gambar 2.15. (a) Transfer Data Proses Baca Blok Tunggal; (b) Transfer Data Proses Baca Multi Blok.
Proses tulis MMC sendiri dimulai dengan pengiriman CMD24 (command set penulisan blok tunggal) oleh host. Setelah MMC memberi respon data diterima, maka diberi selang waktu 1 byte dan kemudian dilakukan penulisan data ke MMC. Penulisan dilakukan setiap 512 byte di setiap bloknya. Untuk penulisan multi blok, host harus mengawali dengan mengirimkan CMD25 ke MMC. Gambar 2.16 menunjukkan transfer data pada proses tulis.
34
(a)
(b) Gambar 2.16. (a) Transfer Data proses Tulis Blok Tunggal; (b) Transfer Data proses Tulis Multi Blok.