BAB II LANDASAN TEORI

dokumen-dokumen yang mirip
BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

Perkembangan Mikroprosesor

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

Gambar 5.1 Modul LCD M1632. LCD ini memiliki 16 kaki, sebagaimana ditunjukkan dalam Tabel 6.1.

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB III MIKROKONTROLER

MICROCONTROLER AVR AT MEGA 8535

BAB II TINJAUAN PUSTAKA

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

II. TINJAUAN PUSTAKA. Mikrokontroler ATmega8535 merupakan salah satu jenis mikrokontroler keluarga AVR

MIKROKONTROLER AT89S52

PENGANTAR MIKROKOMPUTER PAPAN TUNGGAL (SINGLE CHIP) Oleh : Sumarna, Jurdik Fisika, FMIPA UNY

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

MICROCONTROLER AVR AT MEGA 8535

BAB III ANALISIS DAN DESAIN SISTEM

Antarmuka LCD pada DST-AVR

Gambar 2.1 Mikrokontroler ATMega 8535 (sumber :Mikrokontroler Belajar AVR Mulai dari Nol)

Pendahuluan BAB I PENDAHULUAN

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

BAB II DASAR TEORI. mikrokontroler yang berbasis chip ATmega328P. Arduino Uno. memiliki 14 digital pin input / output (atau biasa ditulis I/O, dimana

BAB II TEORI DASAR. Gambar 2.1 Sistem poros sederhana yang mengalami kondisi tak seimbang

BAB II DASAR TEORI. 2.1 Ethanol

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. software arduino memiliki bahasa pemrograman C.

BAB II. PENJELASAN MENGENAI System-on-a-Chip (SoC) C8051F Pengenalan Mikrokontroler

BAB II LANDASAN TEORI

BAB II DASAR TEORI. Gambar 2.1 Sensor MLX 90614[5]

BAB III PERANCANGAN SISTEM

DISAIN DAN IMPLEMENTASI PENGENDALI LAMPU JARAK JAUH DAN DEKAT PADA KENDARAAN BERMOTOR SECARA OTOMATIS

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

BAB II LANDASAN TEORI. pada itu dapat juga dijadikan sebagai bahan acuan didalam merencanakan suatu system.

BAB III PERANCANGAN PERANGKAT KERAS DAN LUNAK

Mikrokontroler AVR. Hendawan Soebhakti 2009

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. memudahkan penggunaan elektronik dalam berbagai

RANCANGAN SISTEM PARKIR TERPADU BERBASIS SENSOR INFRA MERAH DAN MIKROKONTROLER ATMega8535

BAB III PERANCANGAN SISTEM

PERTEMUAN 2 APLIKASI KOMPUTER. Sistem Operasi. Rangga Rinaldi, S.Kom, MM. Modul ke: Fakultas Desain dan Seni Kreatif. Program Studi Desain Produk

BAB III TEORI PENUNJANG. dihapus berulang kali dengan menggunakan software tertentu. IC ini biasanya

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika. Assembler Bahasa pemrograman mikrokontroler MCS-51

M1632 MODULE LCD 16 X 2 BARIS (M1632)

Arsitektur Komputer, Mikroprosesor dan Mikrokontroller. TTH2D3 Mikroprosesor

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. [10]. Dengan pengujian hanya terbatas pada remaja dan didapatkan hasil rata-rata

BAB II LANDASAN TEORI. ATMega 8535 adalah mikrokontroller kelas AVR (Alf and Vegard s Risc

Sistem Mikroprosessor

Nama : Zulham.Saptahadi Nim : Kelas : 08 Tk 04

PERENCANAAN DAN PEMBUATAN PROGRAMMABLE IR REMOTE CONTROL. Arjana Permana Putra GD Moch. Farid Noer R

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB II KONSEP DASAR SISTEM MONITORING TEKANAN BAN

Sistem Tertanam. Pengantar Atmega328 dan Arduino Uno. Dennis Christie - Universitas Gunadarma

BAB III PERANCANGAN DAN PEMBUATAN ALAT

3.2. Tempat Penelitian Penelitian dan pengujian alat dilakukan di lokasi permainan game PT. EMI (Elektronik Megaindo) Plaza Medan Fair.

BAB I PENDAHULUAN A. Latar Belakang Masalah

BAB II TEORI DASAR. beberapa komponen utama yang digunakan pada simulasi Pengendali Lampu. Jarak Jauh dan Dekat pada Kendaraan Secara Otomatis.

II. TINJAUAN PUSTAKA. kondisi cuaca pada suatu daerah. Banyak hal yang sangat bergantung pada kondisi

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 7 Monitoring Suhu dan Cahaya ke PC

BAB I PENDAHULUAN A. Latar Belakang dan Permasalahan

BAB III DESKRIPSI MASALAH

BAB III PERANCANGAN PERANGKAT KERAS DAN LUNAK. Perangkat keras dari alat ini secara umum terdiri dari rangkaian dibagi

BAB II KONSEP DASAR PERANCANGAN

PEMROGRAMAN ROBOT PENJEJAK GARIS BERBASIS MIKROKONTROLER

RANCANG BANGUN ALAT BANTU PERINGATAN BATAS LAJU KENDARAAN UMUM BERBASIS MIKROKONTROLER AVR DAN KOMUNIKASI INFRA MERAH

BAB III PERENCANAAN DAN REALISASI

BAB III ANALISIS MASALAH DAN RANCANGAN ALAT

BAB 3 PERANCANGAN SISTEM. Bab ini akan membahas tentang perancangan sistem yang digunakan dari alat

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer

BAB III PERANCANGAN SISTEM. sebuah alat pemroses data yang sama, ruang kerja yang sama sehingga

Atmel Corporation, 2009, AT89S52 Datasheet,

BAB 2 TINJAUAN TEORITIS. Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

BAB II TINJAUAN PUSTAKA. Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam

BAB II LANDASAN TEORI

BAB III PERANCANGAN SISTEM

RANCANG BANGUN ALAT PENGHITUNG BIJI TANAMAN PANGAN BERBASIS MIKROKONTROLER. Dosen Jurusan Teknik Informatika STMIK Pradnya Paramitha Malang

BAB IV ANALISIS DATA DAN PEMBAHASAN

BAB IV HASIL DAN PEMBAHASAN. Setelah pembuatan modul maka perlu dilakukan pendataan melalui proses

BAB 3 PERANCANGAN ALAT DAN PEMBUATAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB II TINJAUAN PUSTAKA

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB III PERANCANGAN ALAT

Percobaan 2 I. Judul Percobaan Sistem Kendali Digital Berbasis Mikrokontroler

Perancangan Sistem Monitoring Mengajar Berbasis Mikrokontroler Atmega 8535

BAB II TINJAUAN PUSTAKA. 2.1PHOTODIODA Dioda foto adalah jenis dioda yang berfungsi mendeteksi cahaya. Berbeda dengan

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

RANCANG BANGUN SISTEM PENGUKURAN ARUS BERBASIS MIKROKONTROLLER ATMEGA 8535

Transkripsi:

5 BAB II LANDASAN TEORI 2.1 Gambaran Umum Sering kita mendengar istilah mikrokomputer, mikroprosesor, dan mikrokontroler. Mikroprosesor adalah bagian CPU (central processing unit) dari sebuah komputer, tanpa memori, I/O, dan periferal yang dibutuhkan oleh suatu sistem lengkap. Supaya dapat bekerja, mikroprosesor memerlukan perangkat pendukung seperti RAM, ROM dan I/O. Bila sebuah mikroprosesor dikombinasi dengan I/O dan memori (RAM/ROM) akan dihasilkan sebuah mikrokomputer. Sebagai terobosan mikrokomputer ini dapat juga dibuat dalam bentuk single chip yaitu Single Chip Microcomputer (SCM) yang selanjutnya disebut sebagai mikrokontroler. Perbedaan yang menonjol antara mikrokomputer dengan mikrokontroler (SCM) adalah pada penggunaan perangkat I/O dan media penyimpan program. Bila mikrokomputer menggunakan disket atau harddrive lainnya maka mikrokontroler menggunakan EPROM sebagai penyimpan programnya. Sedangkan keuntungan mikrokontroler dibandingkan dengan mikroprosesor adalah pada mikrokontroler sudah terdapat RAM dan peralatan I/O pendukung sehingga tidak perlu menambahkannya. 5

6 2.2 Rotary Encoder Rotary encoder adalah penggabungan antara sistem kerja elektronika dan mekanik (elektromekanik) yang dapat memonitor gerakan dan posisi. Rotary encoder tersusun dari suatu piringan tipis yang memiliki lubang-lubang pada bagian lingkaran piringan dan menggunakan sensor optik untuk menghasilkan pulsa. Gambar 2.1 Sensor Optocoupler. Sensor optocoupler adalah suatu chip yang memanfaatkan cahaya yang berseberangan dari rx (receiver) dan tx (transmitter), dan yang nantinya akan dibaca oleh Mikrokontroler dalam bentuk pulsa. Sensor ini terdiri dari 4 pin yang dapat dilihat pada gambar berikut. Adapun cara kerja dari sensor ini dapat mendeteksi objek dengan cara, infra red digunakan sebagai transmitter dan photodioda digunakan sebagai receiver. Sensor ini bekerja membaca pantulan cahaya dari infra red ke piringan kemudian diterima oleh photodioda. Photodioda akan berubah tahanan reverse apabila diberikan curah cahaya yang berbeda. Cahaya terang maka tahanan reverse photo dioda akan kecil dan apabila cahaya gelap maka tahanannya akan besar. Perubahan nilai tahanan ini yang dimanfaatkan untuk merubah nilai tegangan

7 yang akan dimasukkan ke ADC mikrokontroler. Terdapat dua jenis rotary encoder yaitu : 2.2.1 Absolute rotary encoder Absolute encoder menggunakan piringan dan sinyal optik yang diatur sedemikian sehingga dapat menghasilkan kode digital untuk menyatakan sejumlah posisi tertentu dari poros yang dihubungkan padanya. Jumlah bit ditentukan oleh banyaknya optocoupler yang digunakan. Sistem biner yang untuk menginterpretasi posisi yang diberikan oleh absolute encoder dapat menggunakan kode gray atau kode biner biasa, tergantung dari pola cincin yang digunakan. Untuk lebih jelas, kita lihat contoh absolut encoder yang hanya tersusun dari 4 buah cincin untuk membentuk kode 4 bit. Apabila encoder ini dihubungkan pada poros, maka photo-transistor akan mengeluarkan sinyal persegi sesuai dengan susunan cincin yang digunakan. Gambar 5 dan 6 menunjukkan contoh perbedaan diagram keluaran untuk absolute encoder tipe gray code dan tipe binary code. Gambar 2.2 Contoh diagram keluaran absolut encoder 4-bit tipe gray code

8 Dengan absolute encoder 4-bit ini maka kita akan mendapatkan 16 informasi posisi yang berbeda yang masing-masing dinyatakan dengan kode biner atau kode gray tertentu. Tabel 1 menyatakan posisi dan output biner yang bersesuaian untuk absolut encoder 4-bit. Dengan membaca output biner yang dihasilkan maka posisi dari poros yang kita ukur dapat kita ketahui untuk diteruskan ke rangkaian pengendali. Semakin banyak bit yang kita pakai maka posisi yang dapat kita peroleh akan semakin banyak. Gambar 2.3 Contoh diagram keluaran absolut encoder 4-bit tipe binary code Perbedaan gray code dan binary terlihat pada perubahan pada tiap bitnya. Pada gray code mengalami perubahan hanya dengan satu kondisi pada tiap bitnya, sedangkan binary dapat melakukan perubahan dengan dua kondisi bersamaan pada tiap bitnya.

9 2.2.2 Incremental rotary encoder Incremental encoder terdiri dari dua track atau single track dan dua sensor yang disebut channel A dan B. Ketika poros berputar, deretan pulsa akan muncul di masing-masing channel pada frekuensi yang proporsional dengan kecepatan putar sedangkan hubungan fasa antara channel A dan B menghasilkan arah putaran. Dengan menghitung jumlah pulsa yang terjadi terhadap resolusi piringan maka putaran dapat diukur. Untuk mengetahui arah putaran, dengan mengetahui channel mana yang leading terhadap channel satunya dapat kita tentukan arah putaran yang terjadi karena kedua channel tersebut akan selalu berbeda fasa seperempat putaran (quadrature signal). Pembacaan Absolute rotary encoder mengunakan pembacaan grey code, grey code membaca hanya dengan satu kondisi perubahan saja sehingga dapat membaca kecepatan sedangkan Incremental rotary encoder menggunakan pembacaan biner code yang dapat membaca dengan dua kondisi sekaligus sehingga dapat membaca dua arah yang berbeda. Gambar 2.4 Incremental encoder dan diagram keluarannya

10 2.3 Mekanik Counter Definisi counter adalah counter berasal dari kata count yang berarti suatu alat/instrument yang dapat menghitungjumlah suatu objekdan akan menggerakancontact output bilatelah mencapai hitunganyang telah ditentukan. Mekanik counter adalah jenis counter yang bekerja pada mekanik,yang menerima masukan dari bagian encoder yang bergerak dan akan menghitung jumlah penggerakannya. 2.4 Perlengkapan Dasar Mikrokontroler Mikrokontroler atau mikroprosesor adalah suatu piranti yang digunakan untuk mengolah data-data biner (digital) yang didalamnya merupakan gabungan dari rangkaian-rangkaian elektronik yang dikemas dalam bentuk suatu chip (IC). Pada umumnya mikrokontroler tediri dari bagian-bagian sebagai berikut: Alamat (address), Data, Pengendali, Memori (RAM atau ROM), dan bagian input-output. 2.4.1 CPU Unit pengolah pusat (CPU) terdiri atas dua bagian yaitu unit pengendali (CU) serta unit aritmatika dan logika (ALU). Fungsi utama unit pengendali adalah untuk mengambil, mengkode, dan melaksanakan urutan instruksi sebuah program yang tersimpan dalam memori. Sedangkan unit aritmatika dan perhitungan bertugas untuk menangani operasi perhitungan maupun bolean dalam program.

11 2.4.2 Alamat Pada mikroprosesor/mikrokontroler, apabila suatu alat dihubungkan dengan mikrokontroler maka harus ditetapkan terlebih dahulu alamat (address) dari alat tersebut. Untuk menghindari terjadinya dua alat bekerja secara bersamaan yang mungkin akan meyebabkan kerusakan. 2.4.3 Data Mikrokontroler Atmega8535 mempunyai lebar bus data 8 bit. Merupakan mikrokontroler CMOS 8-bit daya-rendah berbasis arsitektur RISC yang ditingkatkan. 2.4.4 Memori Mikroprosesor/mikrokontroler memerlukan memori untuk menyimpan program/data. Ada beberapa tingkatan memori, diantaranya register internal, memori utama, dan memori massal. Sesuai dengan urutan tersebut waktu aksesnya dari yang lebih cepat ke yang lebih lambat. 2.4.5 RAM RAM (Random Acces Memory) adalah memori yang dapat dibaca atau ditulisi. Data dalam RAM akan terhapus bila catu daya dihilangkan. Oleh karena itu program mikrokontroller tidak disimpan dalam RAM. Ada dua teknologi yang dipakai untuk membuat RAM, yaitu RAM statik dan RAM dinamik.

12 2.4.6 ROM ROM (Read Only Memory) merupakan memori yang hanya dapat dibaca. Data dalam ROM tidak akan terhapus meskipun catu daya dimatikan. Oleh karena itu ROM dapat digunakan untuk menyimpan program. Ada beberapa jenis ROM antara lain ROM murni, PROM, EPROM, EAPROM. ROM adalah memori yang sudah diprogram oleh pabrik, PROM dapat diprogram oleh pemakai sekali saja. Sedangkan EPROM merupakan PROM yang dapat diprogram ulang. 2.4.7 Input / Output I/O dibutuhkan untuk melakukan hubungan dengan piranti di luar sistem. I/O dapat menerima data dari alat lain dan dapat pula mengirim data ke alat lain. Ada dua perantara I/O yang dipakai, yaitu piranti untuk hubungan serial (UART) dan piranti untuk hubungan paralel (PIO). 2.5 Mikrokontroler AVR ATmega 8535 Atmega8535 merupakan mikrokontroller keluarga AVR keluaran atmel dengan 16 Kbyte PEROM (Programable and Erasable Read Only Memory). Pada mikrokontroller tipe ini isi memorinya dapat diisi ulang ataupun dihapus berkali-kali sebabab menggunakan teknologi nonvolatile memory. AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer) yang ditingkatkan.

13 Hampir semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare, interrupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving. Pemilihan Mikrokontroler Atmega 8535 tidak lain karena banyaknya kemudahan fasilitas yang ada. Kemudahan program dengan menggunakan pemograman bahasa C. Proses download program yang cepat, antar PC terhadap Mikrokontroler. Frekuensi clock maksimum 16 MHz. Jalur I/O 23 buah, yang terbagi dalam PortB, PortC dan PortD. Internal SRAM sebesar 1 byte. Konsumsi daya rendah. Progmable serial USART. Komparator Analog. Gambar 2.5 Konfigurasi Pin ATmega 8535

14 Penjelasan masing-masing pin ATmega 8535 adalah sebagai berikut: VCC merupakan pin masukan catu daya. GND merupakan pin ground. Port B (PB..PB0) XTAL1/XTAL2/TOSC1/TOSC2 Port C (PC..PC0) merupakan pin IO dua arah dan berfungsi khusus. Port D (PD..PD0) merupakan pin IO dua arah dan berfungsi khusus. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. AVCC merupakan pin masukan tegangan untuk ADC (Analog to Digital Converter). AREF merupakan pin masukan tegangan referensi ADC (Analog to Digital Converter). Atmega 8535 dapat dioperasikan dengan bahasa C dan dapat juga menggunakan bahasa asembler tetapi dalam Odometer digital ini mengunkan bahasa C karena mudah dalam pengunaanya. Bahasa C merupakan salah satu bahasa pemograman yang populer pada saat ini karena mudah dipahami oleh programer pemula. 2.6 Pemograman Bahasa C Penggunaan sebuah sistem mikrokontroler AVR mengunakan sebuah software yang digunakan untuk menulis program, kompilasi, simulasi dan download program ke IC mikrokontroler AVR. Software yang digunakan adalah CodeVision

15 AVR dalam bahasa C, Codevision memilki IDE (integrated Development Environment) yang lengkap, di mana penulisan program, compile, link dan download program ke chip AVR dapat dilakukan oleh CodeVision, selain itu CodeVision juga memiliki fasilitas terminal, yaitu digunakan untuk melakukan komunikasi serial dengan mikrokontroler yang sudah deprogram. Proses download ke Ic mikrokontroler dapat menggunakan sistem download secara ISP (In-System Programming). 2.7 Header Di dalam fungsi header berisi include file (.hex), yaitu library (pustaka) yang akan digunakan dalam pemograman. File-file ini mempunyai ciri yaitu namanya diakhiri dengan ekstensi.h. Misalnya pada program #include <stdio.h> menyatakan pada kompiler agar membaca file bernama stdio.h saat pelaksanaan kompilasi. Bentuk umum #include: Contoh: #include <delay.h> #include <delay.h> #include <stdio.h> Prepocessor (#): Digunakan untuk memasukkan (include) text dari file lain, mendefinisikan macro yang dapat mengurangi beban kerja pemograman dan meningkatkan legibility source code (mudah dibaca). Bentuk dari (#include <nama file>) memberikan penjelasan pencarian file dilakukan pada direktori khusus

16 (direktori file). Bentuk lain dari header (#include nama file ) mengisyaratkan bahwa pencarian file terlebih dahulu dilakukan pada direktori aktif tempat sumber program dan bila tidak ditemukan pencarian akan dilanjutkan pada direktori lainnya yang sesuai dengan perintah pada sistem operasi. 2.8 Software CodeVisionAVR version 1.25.9 standard. Codevision AVR merupakan suatu perangkat lunak(softwere) yang dapat membantu dalam proses penulisan pada sebuah program. Codevision AVR merupakan softwere yang berbasis pada bahasa C, dan memiliki kelebihan yang dapat dimanfaatkan dalam proses program, dalam Codevision AVR memiliki fasilitas yang dapat memudahkan kita dalam proses pembuatan sebuah contohnya kita dapat melakukan proses debug mengetahui letak kesalahan dalam proses pembuatan suatu program. Adapun proses pengoperasiannya sangat memadai untuk proses penginstalan sebuah program ke sebuah hardware. Gambar 2.6 Tampilan utama CodeVision AVR1.25.9 standard.

17 Dalam pemprograman terdapat fungsi - fungsi dasar yang mempengaruhi kombinasi sebuah program. Berikut pengenalan fungsi pada pemograman : 2.8.1 #include Fungsi #include adalah sebagai library atau dapat sebagai pengumpul berbagai jenis perintah. Jika perintah #include ini tidak ditulis, maka komputer tidak mengerti perintah-perintah yang ditulis. Contoh : #include <conio.h> 2.8.2 void() Fungsi yang void sering disebut juga prosedur. Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut. 2.8.3 while() Gunakan while pada program yang digunakan untuk menghitung banyaknya karakter dari kalimat yang dimasukkan melalui keyboard (termasuk karakter spasi). Untuk mengakhiri pemasukan kalimat, tombol ENTER ( \n ) harus ditekan Input : Ketikkan sembarang kalimat, akhiri dengan enter Output : jumlah karakter = m jumlah spasi = n

18 2.8.4 Fungsimain() Fungsi ini adalah suatu fungsi khusus yang akan dieksekusi pertama. Setiap program harus mempunyai fungsi main(). Fungsi main() diawali dengan tanda { yang menyatakan awal dari program dan diakhiri dengan tanda } yang menyatakan akhir dari program. 2.8.5 getch() getch() adalah suatu fungsi yang berfungsi untuk pembacaan data sebuah karakter, sehingga program akan terdiam sampai pengguna menekan suatu tombol. Fungsi ini berada dalam file header conio.h sehingga perintah #include conio.h harus dituliskan. Kalau perintah getch() tidak ditulis, maka program akan dikerjakan dengan cepat dan eksekusi tidak dapat terlihat. 2.8.6 Fungsi printf() Fungsi Printf() merupakan fungsi paling umum yang digunakan dalam menampilkan data. Berbagai jenis data dapat ditampilkan dalam fungsi ini, contoh: // sprintf(msg2,"%d cm",j); Dalam program ini data yang diterima akan ditampilkan dalam bentuk cm. Data ini diikuti oleh string yang memiliki fungsi untuk mengatur jarak dan baris tengah pada data. 2.7.7 Fungsi puts()

19 Puts() digunakan untuk menampilkan sebuah string ke layar ketika tidak menggunakan placeholders pada sebuah program. Data diterima dan disesuaikan dengan sebuah tujuan yang diiginkan, contoh: // lcd_putsf("mencoba kembali"); Pada Lcd akan menampilkan karakter atau kalimat mencoba kembali. 2.8..8 Fungsi if() If() berfungsi sebagai perintah untuk menampilkan data suatu keadaan untuk dimanfaatkan untuk kondisi tertentu, kondisi tertentu misalnya data yang diterima akan diolah untuk menampilkan sebuah nilai pengukuran, contoh: if(opto==0&&opto1==0)return; 2.9 LCD LCD (Liquid Crystal Display) adalah modul penampil yang banyak digunakan karena tampilannya menarik. LCD yang paling banyak digunakan saat ini ialah LCD M1632 refurbish karena harganya cukup murah. LCD M1632 merupakan modul LCD dengan tampilan 2x16 (2 baris x 16 kolom) dengan konsumsi daya rendah. Modul tersebut dilengkapi dengan mikrokontroler yang didesain khusus untuk mengendalikan LCD. Mikrokontroler HD44780 buatan Hitachi yang berfungsi sebagai pengendali LCD memiliki CGROM (Character Generator Read Only Memory), CGRAM (Character Generator Random Access Memory), dan DDRAM (Display Data Random Access Memory).

20 Gambar 2.7 LCD Tabel 2.1 Tabel Susunan kaki LCD 2x16