4 BAB II LANDASAN TEORI Untuk mengendalikan komponen yang terdapat dalam alat, maka akan dipakai Mikrokontroler AT89S51 sebagai inti pengendali dengan prinsip pengendali logika dan akan dilengkapi dengan beberapa komponen penunjang. Komponen penunjang tersebut diantaranya adalah Analog-Digital-Converter (ADC), TGS2620 sebagai alat pendeteksi alkohol, LCD Matriks dan catu daya. Adapun penjelasan dari masing – masing komponen penunjang tersebut akan dipaparkan secara singkat sebagai berikut. 2.1. Alkohol Alkohol adalah zat penekan susunan saraf pusat meskipun dalam jumlah kecil mungkin mempunyai efek stimulasi ringan. Bahan psikoaktif yang terdapat dalam alkohol adalah etil alkohol yang di peroleh dari proses fermentasi madu, gula, sari buah atau umbi – umbian. Nama yang populer untuk alkohol adalah minuman keras (miras), kamput, tomi (topi miring), cap tikus, balo, dll. Minuman beralkohol memiliki kadar yang berbeda-beda, misalnya bir dan soda alkohol (1-7% alkohol), anggur (10-15% alkohol), dan minuman keras atau biasa disebut dengan spirit (35-55% alkohol). Konsentrasi alkohol dalam darah dicapai dalam 30-90 menit setelah diminum. Di Indonesia penjualan minuman beralkohol dibatasi dan yang boleh membeli adalah mereka yang telah berumur 21 tahun. Beberapa etnik di Indoneisa menggunakan minuman beralkohol pada acara tertentu dalam jumlah sedikit. Mereka juga memproduksi minuman beralkohol dengan nama yang bermacam ragam misalnya cap tikus, ciu, dll. Saat ini alkohol dikonsumsi sangat luas di hampir semua kalangan, kecuali di negara-negara Muslim tentunya. Di Indonesia sendiri, alkohol sudah banyak dikonsumsi walaupun sudah diatur mengenai larangan minuman beralkohol dan larangan penjualan minuman beralkohol. 5 2.2. Keselamatan Berkendara Dalam hal fitur keselamatan kendaraan, istilah "aktif" dan "pasif" memiliki arti yang bertentangan dari yang sebenarnya. Istilah "aktif" biasa merujuk pada bagaimana cara mencegah timbulnya kecelakaan, dan istilah "pasif" merujuk pada kemampuan struktur kendaraan dalam melindungi penumpang di dalamnya ketika terjadi kecelakaan. Namun, kedua istilah tersebut juga menggambarkan keterlibatan fungsi perangkat atau sistem keselamatan pada kendaraan berpenumpang. Dengan pengertian tersebut, perangkat dan sistem keselamatan aktif adalah fitur-fitur yang harus diaktifkan terlebih dahulu oleh penumpang agar dapat berfungsi dan bekerja, seperti memasang sabuk pengaman. Sedangkan perangkat dan sistem keselamatan pasif, seperti air bag yang merupakan fitur keselamatan yang bekerja tanpa memerlukan adanya masukan atau tindakan dari penumpang. Keselamatan berkendara juga terkandung dari faktor manusia itu sendiri. Faktor yang mempengaruhi adalah bila pengemudi tersebut mengemudikan kendaraan dalam keadaan mabuk. Lebih dari 20% pengemudi, pengendara dan pejalan kaki yang tewas mengandung 0,5% alkohol atau lebih dalam darah mereka. Alkohol mengurangi kemampuan anda mengemudi dengan cara menurunnya kemampuan anda dalam mengamati apa yang sedang terjadi, lambat dalam bereaksi pada situasi yang tak diduga, dan berkurangnya kemapuan dalam melakukan hal yang mudah sekalipun. Alkohol juga mempengaruhi penilaian anda dalam mengambil keputusan dan kemampuan anda untuk melakukan beberapa tugas dalam waktu yang bersamaan. Alkohol juga menimbulkan kepercayaan diri yang semu, itulah sebabnya anda akan kurang menyadari bahwa penilaian anda akan suatu hal menjadi lemah dan membuat anda mengambil keputusan dan tindakan yang tidak tepat dan membahayakan anda. Alkohol juga dapat membuat anda tenang, jadi jika anda mengemudi anda akan seperti mengantuk, hal yang cukup umum sebagai penyebab kecelakaan. Kerisauan tentang mabuk karena alkohol sewaktu mengendarai mobil ini sangat menonjol di negara barat. Amerika Serikat misalnya, sampai mengeluarkan undang-undang yang berkaitan dengan alkohol dan mengendarai kendaraan yang 6 dikenal dengan Drinking and Driving Laws. Dalam Undang-Undang No. 14, 1992 tentang Lalu Lintas dan Angkutan Jalan, secara tersurat tidak ada peraturan yang berkaitan dengan alkohol, namun dengan pasal 60 akan bisa menjerat pengemudi yang mabuk, karena pasal tersebut menyatakan: “Barang siapa mengemudikan kendaraan bermotor di jalan dalam keadaan tidak mampu mengemudikan kendaraan dengan wajar sebagai mana dimaksud dalam psaal 23 ayat 1 huruf a, dipidana dengan pidana kurungan paling lama 3(tiga) bulan atau denda setinggitingginya Rp 3.000.000,- (tiga juta rupiah)”. 2.3. Mikrokontroler AT89S51 Mikrokontroler AT89S51 adalah salah satu jenis mikrokontroler CMOS 8 bit keluaran ATMEL yang memiliki kemampuan yang tinggi dengan disipasi daya yang rendah. Dengan 4 Kbyte Flash PEROM (Programmable and Erasable Read Only Memory), yang merupakan memori berteknologi non volatile memory dengan daya tahan 1000 kali write/erase. Memori ini digunakan untuk menyimpan instruksi (perintah) berstandar MCS-51 code, sehingga memungkinkan mikrokontroler ini bekerja dalam modemode keping tunggal (Single Chip Operations) yang tidak memerlukan external memory untuk menyimpan source code tersebut. 2.3.1 Deskripsi Hardware AT89S51 memiliki spesifikasi umum sebagai berikut: ¾ Sebuah CPU (Central Processing Unit) 8 bit, dengan register A (akumulator) dan register B. ¾ ¾ RAM internal 128 byte (on chip) • Empat register bank, masing-masing terdiri dari delapan register. • Pengalamatan satu bit (Bit Addressable) sebanyak 16 byte. • General purpose data register sebanyak 80 byte. Empat buah programmable port I/O atau terminal input-output, masing-masing terminal 8 bit : P0-P3. 7 ¾ Sebuah port serial dengan full duplex UART: TxD dan RxD. ¾ Dua buah timer/counter 16 bit: T0 dan T1. ¾ Program Counter (PC) dan Data Pointer (DPTR) 16 bit. ¾ Program Status Word (PSW) 8 bit. ¾ Osilator internal dan rangkaian pewaktu. ¾ Lima buah jalur interupsi (2 buah interupsi eksternal dan 3 buah interupsi internal) dan dua tingkat prioritas. ¾ Kecepatan maksimum pelaksanaan instruksi per siklus adalah 0,5 µs pada frekwensi clock 24 MHz. ¾ Internal Flash PEROM yang besarnya 4 Kbyte untuk memori program. ¾ Kemampuan melaksanakan operasi Aritmatika. Adapun diagram blok rangkaian integral mikrokontroler AT89S51 diperlihatkan pada Gambar 2.1 berikut ini. RAM ADRR REGISTER P0.0 - P0.7 P0.2 - P0.7 PORT 0 DRIVERS PORT 2 DRIVERS RAM B REGISTER PORT O LATCH PORT 2 LATCH FLASH STACK POINTER ACC PROGRAM ADDRESS REGISTER BUFFER TMP 2 TM 1 PC INCREMEN TER ALU INTERRUPT SERIAL PORT AND TIMER BLOCKS PROGRAM COUNTER RST DPTR REGISTER EA/VPP TIMING AND CONTROL INSTRUCTION PSW P SEN ALE/PROGRAM PORT 1 LATCH OSC PORT 1 DRIVERS P1.0 - P1.7 PORT 3 LATCH PORT 3 DRIVERS P3.0 - P3.7 Gambar 2.1 Diagram Blok Rangkaian Mikrokontroler AT89S51 8 2.3.2 Konfigurasi Pin P1.0 1 40 VCC P1.1 2 39 PO.0 (AD.0) P1.2 3 38 PO.1 (AD.1) P1.3 4 37 PO.2 (AD.2) P1.4 5 36 PO.3 (AD.3) P1.5 6 35 PO.4 (AD.4) P1.6 7 34 PO.5 (AD.5) P1.7 8 33 PO.6 (AD.6) RST 9 32 PO.7 (AD.7) (RxD) P3.0 10 31 EA/VPP (TxD) P3.1 11 30 ALE/PROG (INT0) P3.2 12 29 PSEN (INT1) P3.3 13 28 P2.7 (A15) (T0) P3.4 14 27 P2.6 (A14) (T1) P3.5 15 26 P2.5 (A13) (WR) P3.6 16 25 P2.4 (A12) (RD) P3.7 17 24 P2.3 (A11) XTAL2 18 23 P2.2 (A10) XTAL1 19 22 P2.1 (A9) GND 20 21 P2.0 (A8) Gambar 2.2 Konfigurasi Pin Fungsi masing-masing pin adalah sebagai berikut : ¾ Pin 1 – 8 Pin ini adalah Port 1 yang merupakan I/O 8 bit dua arah yang mempunyai rangkaian resistor pull-up internal. Port ini juga digunakan sebagai saluran alamat pada saat pemrograman dan verifikasi. ¾ Pin 9 Merupakan reset (aktif high), pulsa transisi dari rendah ke tinggi untuk mereset mikrokontroler ini. ¾ Pin 10 – 17 Pin ini adalah Port 3 yang merupakan I/O 8 bit dua arah dengan resistor pull-up internal yang memiliki fungsi pengganti seperti yang diperlihatkan pada Tabel 2.1. 9 Tabel 2.1 Fungsi Pengganti Port 3 Bit Nama Alamat Fungsi Pengganti P3.0 RxD B0H Untuk menerima data port serial P3.1 TxD B1H untuk mengirim data port serial P3.2 INT0 B2H interupsi eksternal 0 P3.3 INT1 B3H interupsi eksternal 1 P3.4 T0 B4H timer eksternal 0 P3.5 T1 B5H timer eksternal 1 P3.6 WR B6H sinyal write memori data eksternal P3.7 RD B7H sinyal read memori data eksternal ¾ Pin 18 Pin XTAL2, merupakan keluaran inverting penguat osilator. Sebuah osilator kristal atau sumber osilator luar dapat digunakan. ¾ Pin 19 Pin XTAL1, merupakan masukan inverting penguat osilator. Pin ini dipakai bila menggunakan osilator kristal. ¾ Pin 20 Merupakan ground, sumber tegangan yang diberi simbol GND. ¾ Pin 21 – 28 Pin ini adalah Port 2 yang merupakan I/O 8 bit dua arah yang mempunyai rangkaian resistor pull-up internal. Pada saat eksekusi program/data eksternal, port 2 membentuk alamat tinggi (high order address). ¾ Pin 29 Program Store Enable (PSEN) merupakan sinyal pembacaan program memori eksternal dan bersifat low. Pada saat pembacaan program memori eksternal, PSEN diaktifkan dua kali setiap satu kali siklus mesin. Bila dilakukan pembacaan program memori internal, PSEN dapat di-ground-kan. ¾ Pin 30 10 Address Latch Enable (ALE)/PROG merupakan penahan alamat memori eksternal (pada port 1) selama mengakses ke memori eksternal. Pin ini juga sebagai pulsa/sinyal input pemrograman (PROG) selama proses pemograman. ¾ Pin 31 External Access Enable (EA)/Vpp. Pin ini dihubungkan dengan VSS untuk mengakses kode program memori eksternal yang dilokasikan pada alamat 0000h-FFFFh. Pin ini juga berfungsi sebagai tegangan pemrograman (Vpp = +12V) selama proses pemograman. Bila akan mengakses program memori internal, EA/Vpp harus dihubungkan dengan Vcc. ¾ Pin 32 – 39 Adalah Port 0 yang merupakan I/O 8 bit dua arah. Port ini juga digunakan untuk membangkitkan alamat rendah/data yang dimultiplex pada saat melaksanakan eksekusi program/data memory eksternal. Pada keadaan ini, port 0 tidak mempunyai rangkaian pull-up internal. Port 0 juga digunakan untuk masukan data pada saat proses pengisian Flash PEROM, dan sebagai keluaran kode data pada saat proses pencocokan. Diperlukan resistor pull-up eksternal yang nilainya 10 K untuk verifikasi. ¾ Pin 40 Merupakan positif sumber tegangan yang diberi simbol Vcc. 2.3.3 Register Mikrokontroler AT89S51 mempunyai beberapa register untuk kegunaan umum dan kegunaan khusus. a. Accumulator Acc adalah register dengan kemampuan 8 bit yang berfungsi untuk menampung operan sumber (source operand) dan menerima hasil dari instruksi aritmatika. Accumulator bisa menjadi sumber dan 11 tujuan dari operasi logika, juga untuk sejumlah khusus pemindahan data. Alamat accumulator pada internal RAM adalah 0E0h. b. Base Register (B) Register B (Base register) digunakan dalam operasi perkalian dan pembagian. Untuk instruksi-instruksi lainnya dapat juga diperlakukan sebagai register biasa. Alamat register B pada internal RAM adalah 0F0h. c. Program Status Word (PSW) Register PSW berisi informasi mengenai status program dan memuat beberapa status flag mengenai keadaan CPU sesudah instruksi dijalankan. Alamat register PSW pada internal RAM adalah 0D0h. Format dari register PSW adalah sebagai berikut: Bit 7 CY 6 AC 5 FO 4 RS1 3 RS0 2 OV 1 - 0 P Format Register PSW Keterangan: Simbol CY Fungsi (Carry Flag) di set atau di reset oleh perangkat keras atau perangkat lunak dan digunakan dalam operasi aritmatik atau logika tertentu, seperti operasi jump, rotate, dan instruksi boolean. AC (Auxiliary Carry Flag) di set atau di reset oleh perangkat keras bila dilakukan instruksi addition atau subtraction untuk menandai carry atau peminjaman lebih dari tiga bit. (Flag 0) di set, di reset, atau oleh perangkat lunak sebagai status flag yang F0 diatur oleh pemakai. Untuk memilih satu dari empat register bank. 12 RS1/RS (Over Flow Flag) di set atau di reset oleh perangkat keras selama instruksi aritmatika untuk menandai kondisi overflow. OV (Parity Flag) berfungsi sebagai penunjuk ganjil atau genap dari register A. P d. Stack Pointer Merupakan sebuah register dengan lebar 8 bit dan berfungsi untuk menyimpan alamat byte berikutnya dari program yang sedang di eksekusi bila terjadi suatu instruksi atau subrutin. Bila instruksi atau subrutin telah selesai dilaksanakan, maka program yang tertunda dapat dilakukan kembali sesuai dengan alamat yang tersimpan pada register stack pointer. Operasi stack dilakukan dengan instruksi PUSH dan POP, dan mekanisme penyimpan pada operasi stack menggunakan metode Last In First Out (LIFO). Sebelum operasi stack dilaksanakan, nilai dari SP bertambah satu. Pada saat reset atau power on SP di set pada 07h, sehingga byte pertama yang akan di simpan ke dalam stack setelah reset atau power on akan berada pada alamat 08h. Alamat SP pada internal RAM adalah 81h. Gambar 2.3 memperlihatkan secara umum mengenai operasi stack. SP=0A SP=09 SP=08 Store Data Store Data Store Data SP=07 storing Data on the Stack (Increment then store) Address 0A Address 09 Address 08 Address 07 Internal RAM (get then decrement) Get Data Get Data Get Data SP=0A SP=09 SP=08 SP=07 Getting Data From the stack Gambar 2.3 Mekanisme Operand Stack 13 e. Data Pointer (DPTR) Merupakan register dengan kegunaan khusus yang terdiri dari sepanjang register 8 bit yaitu byte bawah (DPL) dengan alamat 82h pada internal RAM, serta byte atas (DPH) dengan alamat 83h pada internal RAM. DPTR berfungsi untuk memegang alamat 16 bit kode program internal dan eksternal serta menyimpan alamat 16 bit eksternal data program. f. Program Counter (PC) Adalah sebuah register dengan kemampuan 16 bit, dan berfungsi untuk memegang alamat berikut dari instruksi program yang akan di eksekusi. PC akan bertambah satu secara otomatis setiap kali satu instruksi selesai dilaksanakan. PC merupakan register yang tidak mempunyai alamat pada internal RAM. Bila terjadi interupsi program disimpan ke stack, kemudian isi PC di ganti dengan alamat interupsi atau subrutin. Setelah interupsi atau subrutin selesai dilaksanakan, PC di isi kembali dengan nilai sebenarnya yang tersimpan dalam stack, sehingga instruksi program akan berlanjut persis pada bagian yang tertunda sebelumnya. g. Register Umum Mikrokontroler AT89S51 mempunyai empat buah bank register umum, masing-masing bank terdiri dari delapan register (R0-R7) dengan panjang 8 bit. Pemilihan bank dilakukan dengan memanipulasi bit RS1 dan RS0 pada register PSW. Register umum terletak pada alamat 00h sampai 1Fh pada internal RAM. h. Power Control Register (PCON) Register PCON berfungsi sebagai pengontrol mode kerja dari CPU. Register PCON ini tidak dapat dialamati per bit. 14 i. Register Timer Mode (TMOD) Register yang berfungsi sebagai pengontrol pemilih mode operasi untuk timer/counter. Sedangkan untuk mengontrol kerja timer/counter adalah register timer control (TCON) j. Serial Control Register (SCON) Register yang berfungsi untuk mengontrol kerja port serial. Port serial pada mikrokontroler AT89S51 bersifat full duplex, yang berarti dapat mengirim dan menerima data secara bersamaan. Register penerima dan pengirim pada port serial diakses pada SBUF (serial buffer). 2.3.4 Unit Aritmatik Logika ALU (Arithmetic Logic Unit) berfungsi melaksankan operasi-operasi aritmatik maupun logika, seperti penjumlahan, pengurangan, operasi OR, operasi NAND dan sebagianya. Hasil operasi tersebut selanjutnya disimpan kembali ke dalam accumulator. Operasi yang terjadi pada ALU berhubungan erat dengan accumulator dan bit status pada register F/PSW. 2.3.5 Sumber Pencacah Pewaktuan Mikrokontroler AT89S51 Mikrokontroller AT89S51 dilengkapi dengan sumber detak / osilator internal (on chip oscilator) yang dapat digunakan sebagai sumber clock bagi AT89S51. Untuk menggunakan osilator internal diperlukan tambahan kristal atau resonator keramik antara pena XTAL1 dan XTAL2 dan sebuah kapasitor ke ground. Untuk kristalnya dapat digunakan frekuensi dari 3 sampai 24 MHz. Sedangkan untuk kapasitornya dapat bernilai 30 pF+10 pF. Bila menggunakan sumber clock eksternal maka XTAL 2 NC (No Connection) dan sumber dihubungkan dengan XTAL1. 2.3.6 Interupsi Program yang sedang dijalankan oleh mikrokontroller AT89S51 dapat dihentikan untuk sementara dengan meminta interupsi. Apabila AT89S51 15 mendapat permintaan interupsi maka program counter (PC) akan diisi alamat dari vector interupsi, kemudian AT89S51 melaksanakan rutin pelayanan interupsi mulai dari alamat tersebut setelah selesai maka AT89S51 akan kembali ke pelaksanaan program utama yang ditinggalkan. Mikrokontroller AT89S51 menyediakan 6 sumber interupsi yaitu 2 buah interupsi eksternal (INT 0 dan INT 1), 3 buah interupsi timer (Timer 0, Timer 1, dan Timer 2), dan sebuah interupsi port serial. Selain itu ada juga sebuah non maskable interrupt yaitu reset yang tidak dapat dihalangi oleh perangkat lunak. Setiap sumber interupsi dapat diprogram secara individual (sendiri-sendiri) baik pengaktifannya maupun prioritasnya. Untuk mengaktifkan atau menonaktifkan interupsi dikontrol oleh register IE (interrupt enable), sedangkan untuk tingkat prioritasnya diatur oleh register IP (interrupt priority). 2.3.7 Kode Instruksi Mikrokontroler AT89S51 Mikrokontroller AT89S51 mempunyai 256 kode instruksi. Seluruh instruksi dapat dikelompokkan dalam 4 bagian yang meliputi instruksi 1 byte sampai 4 byte. Semua instruksi tersebut dapat dibagi menjadi lima kelompok menurut fungsinya, yaitu: • Instruksi Pemindahan Data • Instruksi Aritmatika • Instruksi Logika dan Manipulasi Bit • Instruksi Percabangan • Instruksi Stack, I/O, dan Kontrol 2.3.7.1 Instruksi Pemindahan Data Bagian instruksi ini hanya menyalin data suatu lokasi memori (sumber) ke lokasi tertentu (tujuan), tanpa terjadi perubahan isi data dari sumber. Selain lokasi memori, data juga dapat didahkan dari suatu register ke register lain, pemindahan (penyalinan) antar muka-register dan antar muka-memori. 16 2.3.7.2 Instruksi Aritmatika Instruksi ini melaksanakan operasi aritmatika yang meliputi penjumlahan, pengurangan, penambahan satu (increment), pengurangan satu (decrement), perkalian dan pembagian. 2.3.7.3 Instruksi Logika dan Manipulasi Bit Instruksi ini berhubungan dengan operasi-operasi logika pada accumulator dan manipulasi bit. Macam dari instruksi ini adalah AND, OR, XOR, perbandingan, pergeseran, dan komplemen data. 2.3.7.4 Instruksi Percabangan Instruksi ini mengubah urutan normal pelaksanaan suatu program. Dengan instruksi ini program yang sedang dilaksanakan akan mencabang ke suatu alamat terrtentu. Instruksi ini dibedakan atas percabangan bersyarat (misalnya CJNE) dan percabangan tanpa syarat (misalnya ACALL). 2.3.7.5 Instruksi Stack, I/O dan Kontrol Instruksi ini mengatur penggunaan stack, membaca/menulis port I/O, serta pengontrolan-pengontrolan. 2.4 ADC (Analog-Digital-Converter) 0804 ADC atau Analog to Digital Converter adalah pengubah data analog dari berbagai instrumen untuk diubah ke digital agar memudahkan pengolahan elektronis selanjutnya, aplikasi berikutnya memperlihatkan beberapa hal menarik dengan menggunakan A/D. artinya bahwa satu ADC yang utama dapat digunakan tanpa batasan. Tiap-tiap aplikasi sirkut ini memiliki bagian-bagian yang digunakan untuk sebuah pemerosesan yang diinginkan. ADC 0804 adalah CMOS 8 bit yang berturut-turut mendekati perubahan A/D yang menggunakan sebuah tangga hitung yang berbeda, perubahanperubahan ini dimasudkan untuk membantu pengoperasianya. Ketelitian bus 17 dengan TRI-STATE yang secara langsung menggerakan bus data. Tampilan A/D ini seperti memori or I/O bagian untuk mikrokontroler. Masuknya Analog listrik yang berbeda menambah cara pembuangan yang biasa dan dapat memperbaiki keseimbangan dengan nilai Analog titik terendah listrik. Sebagai tambahan masuknya perintah input tegangan dapat diatur untuk beberapa analog tegangan yang lebih kecil sehingga membentuk ukuran 8 bit yang terpisah. Vin x 256 = Bit / Volt Vref Gambar 2.4 ADC 0804 2.5 Sensor Alkohol TGS2620 Gambar 2.5 Sensor Alkohol TGS2820 Sensor alkohol adalah salah satu jenis sensor yang digunakan dalam rangkaian ini. Sensor alkohol yang digunakan adalah TGS 2620. Sensor alkohol 18 dengan tipe TGS 2620 berfungsi sebagai pendeteksi alkohol output yang dikeluarkan dari sensor berupa tegangan analog. Rangkaian sensor hanya berupa TGS 2620 pengubah besaran kadar alkohol ke besaran listrik 2.6 LCD (Liquid Crystal Displays) Matriks LCD (Liquid Crystal Display) matriks adalah salah satu jenis tampilan yang dapat digunakan untuk menampilkan karakter - karakter (angka, huruf dan simbol). Pada alat yang ditampilkan hanya angka dan huruf. Keistimewaan dari LCD matriks ini dibanding LCD lain dan seven segment adalah dapat digunakan untuk menampilkan karakter - karakter simbol seperti α, β, Σ, ± , { , } dan lain sebagainya. Hal ini karena pada LCD matriks digunakan dot matriks (titik - titik yang membentuk matriks) untuk menampilkan suatu karakter sehingga LCD matriks dapat ditampilkan lebih banyak bentuk karakter dibanding modul tampilan lainnya. Untuk menghubungkan dengan Mikrokontroler telah dipersiapkan kaki - kaki pada modul LCD matriks yang secara kompatibel dapat langsung dihubungkan dengan port - port mikrokontroler. Konfigurasi kaki - kaki pada LCD matriks ini diperlihatkan pada Tabel 2.2. Tabel 2.2 Konfigurasi Kaki LCD Matriks Input/Output Fungsi VSS - Ground dari modul kerangkaian VDD Input Catu daya luar +5 volt ke modul tampilan VO Input Tegangan kemudi LCD – Tegangan pengatur kontras dan sudut penglihatan modul LCD RS Input R/W Input E Input Sinyal pemilih mode : 0 = Operasi kirim instruksi ke LCD 1 = Operasi kirim data ke LCD Kontrol arah data : 0 = Tulis kemodul LCD 1 = Baca dari modul LCD Operasi enable = Mengaktifkan fungsi baca atau tulis 19 DB0 – DB3 Input / Output DB4 – DB7 Input / Output 4 Bit MSB dari bus data dua arah. Jalur-jalur ini hanya digunakan pada mode transfer data 8 bit. 4 Bit MSB dari bus data dua arah. Jalur-jalur ini digunakan baik pada mode 4 bit maupun pada mode transfer data 8 bit. Tabel 2.3 Character Generator ROM Map (OA) Lower 4 bit Upper 4 bit LLLL LLLH LLHL LLHH LHLL LHLH LHHL LHHH HLLL HLLH HLHL HLHH HHLL HHLH HHHL HHHH LLLL CG RAM (1) LLLH (2) LLHL (3) LLHH (4) LHLL (5) LHLH (6) LHHL (7) LHHH (8) HLLL (1) HLLH (2) HLHL (3) HLHH (4) HHLL (5) HHLH (6) HHHL (7) HHHH (8) 20 Tabel 2.4 Character Generator ROM Map (OB) Lower 4 bit Upper 4 bit LLLL LLHL LLHH LHLL LHLH LHHL LHHH HLLL HLLH HLHL HLHH HHLL HHLH HHHL HHHH LLLL CG RAM (1) LLLH (2) LLHL (3) LLHH (4) LHLL (5) LHLH (6) LHHL (7) LHHH (8) HLLL (1) HLLH (2) HLHL (3) HLHH (4) HHLL (5) HHLH (6) HHHL (7) HHHH (8) 2.7 Catu Daya Catu daya atau lebih dikenal sebagai power supply, adalah suatu rangkaian yang berfungsi sebagai sumber daya listrik yang digunakan oleh rangkaian-rangkaian selanjutnya. Rangkaian catu daya mengubah tegangan bolak-balik yang diterima dari jala-jala PLN, menjadi tegangan searah. 21 Suatu rangkaian catu daya yang baik terdiri dari tranformator (trafo), penyearah, filter, dan IC regulator. Secara diagram blok dapat dilihat pada Gambar 2.6 di bawah ini : Jalajala PLN 220 V Trafo Penyearah Filter IC Regulator VDC Gambar 2.6 Diagram Blok Catu Daya Transformator atau trafo di sini adalah berguna sebagai penurun tegangan bolak-balik dari jala-jala. Rangkaian penyearah dari dioda bertujuan untuk membuat tegangan bolak-balik menjadi tegangan positif dan negatif bergantian seperti fungsi sinusoida yang hanya memiliki tegangan positif atau negatif saja. Rangkaian penyearah dapat dibuat dengan cara setengah gelombang atau gelombang penuh. Penyearah setengah gelombang adalah penyearah dengan menggunakan sebuah dioda, cara kerjanya adalah dioda tersebut hanya melewatkan arus listrik pada salah satu fasanya saja, misalnya fasa positifnya saja, sedangkan pada fasa negatif tidak dilewatkan. Penyearah gelombang penuh di sini menggunakan empat buah dioda yang dikenal sebagai jembatan dioda. Hasil keluaran dari rangkaian penyearah adalah gelombang sinusoida yang sudah disearahkan, tetapi masih belum memenuhi syarat sebagai sumber tegangan yang diperlukan. Agar menjadi rata maka hasil keluaran tadi perlu dilewatkan pada filter yang terdiri dari rangkaian RC atau RL. Rangkaian ini biasa disebut peredam riak. IC Regulator adalah IC yang berfungsi sebagai pengatur tegangan yang membuat suatu tegangan masukan padanya menjadi tegangan keluaran yang besarnya tertentu sesuai dengan tipe IC tersebut. Dengan menggunakan IC regulator ini maka tegangan keluaran menjadi lebih stabil dan untuk lebih meratakannya lagi dari gelombang-gelombang riak yang tidak diinginkan akibat 22 tidak stabilnya penarikan arus dari rangkaian, biasanya ditambahkan kapasitor yang diparalelkan dengan keluaran IC regulator ini. V out t Gambar 2.7 Bentuk Gelombang pada Rangkaian Filter Kapasitor 78XX adalah IC regulator yang dirancang sebagai regulator tegangan. Nilai tegangan outputnya ditentukan oleh angka pada XX-nya. Disini IC yang digunakan untuk regulator adalah 7805 yaitu IC untuk tegangan + 5Volt, 7812 IC untuk tegangan +12 Volt dan 7824 untuk tegangan +24 Volt. 2.8 Flowchart Perangkat lunak (software) yang dirancang pada dasarnya harus memperhatikan flowchart (diagram alir), karena hal ini merupakan dasar dalam pembuatan listing program. Untuk membuat flow chart dipergunakan simbol simbol yang mempunyai arti tertentu. Di bawah ini dapat dilihat simbol-simbol flow chart yang digunakan beserta fungsi penggunaannya : 23 Terminator Menerangkan suatu awal atau akhir dari diagram alir Data Menerangkan masukan atau keluaran data. Decision Menerangkan adanya dua pilihan yang berbeda Process Menerangkan sebuah operasi atau eksekusi yang dilakukan.. Data Flow Menerangkan arah alur dari tiap-tiap proses. Connector Menerangkan sambungan alur proses.