BAB 2 LANDASAN TEORI 2.1. Sistem Komunikasi Kegunaan dasar dari sistem komunikasi adalah menjalankan pertukaran data antara dua pihak. Pada gambar dibawah ditampilkan suatu model komunikasi yang sederhana yaitu komunikasi satu arah (one way comunication). Berikut adalah blok diagram elemen-elemen model komunikasi pada gambar 2.1 dibawah ini : Gambar 2.1. Model Komunikasi Data Sederhana 2.1.1. Sistem komunikasi serial mikrokontroler dengan PC Komunikasi serial ialah pengiriman data secara serial (data dikirim satu persatu secara berurutan). Port serial adalah salah satu fasilitas pada komputer untuk melakukan komunikasi dengan peralatan atau komputer lain dengan pengiriman data secara serial (berderet secara berurutan) 89C51 mempunyai On Chip Serial Port yang Universitas Sumatera Utara dapat digunakan untuk komunikasi data serial secara Full Duplex sehingga Port Serial ini masih dapat menerima data pada saat proses pengiriman data terjadi. Untuk menampung data yang diterima atau data yang akan dikirimkan, 89C51 mempunyai sebuah register, yaitu SBUF yang terletak pada alamat 99H. Register Ini berfungsi sebagai buffer sehingga pada saat mikrokontroler ini membaca data yang pertama dan data kedua belum diterima secara penuh, data ini tidak akan hilang. Pada proses penerimaan data dari Port Serial, data yang masuk ke dalam Port Serial akan ditampung pada Receive register terlebih dahulu dan diteruskan ke jalur bus internal pada saat pembacaan register SBUF sedangkan pada proses pengiriman data ke Port Serial, data yang dituliskan dari bus internal akan ditampung pada transmit Register terlebih dahulu sebelum dikirim ke Port Serial. TXD (P3.1) RXD (P3.0) D SHIFT REGISTER Cik SBUF Receive Buffer Register (read only) Baud rate clock (transmit) SBUF Transmit Buffer Register (write only) Baud rate clock (receive) Bus Internal 89C51 Gambar 2.2. Blok Diagram Port Serial Universitas Sumatera Utara 2.2. Perangkat Keras 2.2.1. RS 232 Istilah RS232 sudah begitu populer sehingga sering dianggap RS232 mengatur semua hal tentang komunikasi data serial, meskipun sesungguhnya RS232 tidak mengatur sejauh itu. Pemahaman spesifikasi RS232 bisa sangat membantu menghubungkan alat berbasis mikrokontroler dengan Modem standar. RS232 lebih merupakan komunikasi data antara komputer DTE (Data Terminal Equipment) dengan alat-alat pelengkap komputer DCE (Data Circuit-Terminating Equipment) bisa meliputi macam-macam alat pelengkap komputer yang dihubungkan ke komputer dengan standard RS232, misalnya printer, Optical Mark Reader, Cash Register, PABX dan sebagainya. Gambar 2.3. Hubungan antara DTE-DCE-DCE-DTE Ada 3 hal pokok yang diatur standard RS232, antara lain adalah : Universitas Sumatera Utara 1. Bentuk sinyal dan level tegangan yang dipakai 2. Penentuan jenis sinyal dan konektor yang dipakai, serta susunan sinyal pada kaki-kaki di konektor 3. Penentuan tata cara pertukaran informasi antara komputer dan alat-alat pelengkapnya. Standar sinyal serial RS232 memiliki ketentuan level tegangan sebagai berikut: 1) Logika ‘1’ disebut mark terletak antara -3 volt hingga -25 volt. 2) Logika ‘0’ disebut space terletak antara +3 volt hingga +25 volt. 3) Daerah tegangan antara -3 volt hingga + 3 volt adalah invaled level, yaitu daerah tegangan yang tidak memiliki level logika pasti sehingga harus dihindari. Demikian juga, level tegangan lebih negatif dari -25 volt. atau lebih positif dari + 25 volt juga menghindari karena tegangan tersebut dapat merusak line pengendali pada saluran RS232. 2.2.1.1 Konektor dan Jenis Sinyal RS232 Standar RS232 menentukan pula jenis-jenis sinyal yang dipakai mengatur pertukaran informasi antara DTE (Data Terminal Equipment) dan DCE (Data CircuitTerminating Equipment), semuanya terdapat 24 jenis sinyal tapi yang umum dipakai hanyalah 9 jenis sinyal. Konektor yang dipakai pun ditentukan dalam standar RS23, Universitas Sumatera Utara untuk sinyal yang lengkap dipakai konektor DB25, sedangkan konektor DB9 hanya bisa dipakai untuk 9 sinyal yang umum dipakai. Sinyal-sinyal tersebut ada yang menuju ke DCE ada pula yang berasal dari DCE. Bagi sinyal yang menuju ke DCE artinya DTE berfungsi sebagai output dan DCE berfungsi sebagai input, misalnya sinyal TD, pada sisi DTE kaki TD adalah output, dan kaki ini dihubungkan ke kaki TD pada DCE yang berfungsi sebagai input. Kebalikan sinyal TD adalah RD, sinyal ini berasal dari DCE dan dihubungkan ke kaki RD pada DTE yang berfungsi sebagai output. Susunan sinyal RS232 pada konektor DB9 dan konektor DB25 berlainan, susunan kaki ini dan bahasan di atas semuanya diringkas dalam Tabel 2.1. Tabel 2.1. Jenis sinyal RS232 Adapun konfigurasi port-port pada connector DB-9 dapat dilihat pada Gambar 2.4 dibawah ini : Universitas Sumatera Utara (a) (b) Gambar 2.4. (a). Port DB-9 Betina (b). Port DB-9 Jantan Dibawah ini tabel 2.2 merupakan tabel pin-pin yang terdapat pada port DB-9 Tabel 2.2. Pin-Pin Pada Port DB-9 Pin Sinyal 1 Data Carrier Datect 2 Received Data 3 Transmitted Data 4 Data Terminal Ready 5 Sinyal Ground 6 Data Set Ready 7 Request to Send 8 Clear to Send 9 Ring Indikator Konektor port serial terdiri dari dua jenis, yaitu konektor 25 pin (DB25) dan 9 pin (DB9) yang berpasangan (male dan female). Bentuk DB- 25 sama persis dengan port paralel. Universitas Sumatera Utara 2.2.2. Penampil Tujuh Segmen Penampil tujuh segmen adalah indikator penunjuk angka, terdiri dari tujuh buah LED (Light emitting Diode) yang disusun sehingga menjadi satu komponen. Dibawah ini gambar 2.5 mmerupakan gambar output hasil tampilan seven segmen : Gambar 2.5. Tampilan tujuh segmen Setiap LED pada penampil tujuh segmen diberi kode huruf untuk menyatakan LED mana yang nyala. Kode tersebut adalah a, b, c, d, e, f, g. sebagai contoh apabila yang menyala segmen a, b, g, e, dan d maka yang tampil adalah desimal 2. Berikut ini gambar 2.6 adalah gambar posisi kode huruf pada penampil tujuh segmen: Gambar 2.6. Posisi Kode Huruf Penampil Tujuh Segmen Salah satu fungsi dari penampil tujuh segmen adalah untuk menampilkan sistem bilangan, penampil tujuh segmen terdiri dari dua jenis yaitu anoda bersama (common anode) dan katoda bersama (common katode). Pada anoda bersama kaki-kaki anodanya terhubung ke ground, begitu juga sebaliknya pada katoda bersama. 2.2.3. IC 4094 Universitas Sumatera Utara IC 4094 adalah suatu IC shift register 8 tingkat yang memiliki register latch untuk setiap bit untuk keperluan memindahkan data dari saluran serial kesaluran paralel dengan 3 tingkatan pergeseren bit Q0 sampai bit Q7 menuju output. Output paralel dapat dihubungkan langsung dengan jalur data umum. Data digeser pada perubahan sinyal clock dari Low ke High, selanjutnya data digeser dari register geser keregister penyimpanan, kemudian dengan memberikan logika high pada pin OE akan menggeser data dari register penyimpangan menuju register output. Gambar 2.7. Diagram fungsi register (Data Sheet IC 4094) Ada dua serial yang keluar dari IC 4094 yaitu Qs dan Q’s yang disediakan untuk keperluan penyambungan beberapa IC secara serial. Data tersedia pada Qs pada pergeseran sinyal clock dari logika low ke logika high untuk memungkinkan pergeseran dengan kecepatan tinggi dalam keperluan penyambungan beberapa IC secara serial. Output pada Q’s akan bergeser pada saat sinyal clock berubah dari Universitas Sumatera Utara logika high ke logika low. Gambar 2.8 menunjukkan posisi dan penamaan pin untuk IC 4094. Gambar 2.8. Diagram Pin IC 4094 (Data sheet IC 4094). Keterangan: D = data input CP = clock input STR = strobe input EO = ouput enable input QS, Q’S = output serial Q0 S/d Q7 = output parallel 2.2.4. Buzzer Buzzer merupakan salah satu komponen elektronika yang dapat menghasilkan bunyi saat diberikan tegangan pada kedua kakinya. Prinsip dasarnya sama seperti loud speaker. Konstruksinya terdiri dari core logam yang dililit oleh coil. Core ini berada didalam magnet berbentuk lingkaran. Sebagai penghasil bunyi, digunakan plat metal Universitas Sumatera Utara tipis yang berada diatas coil dan magnet. Saat pin supply diberi tegangan, maka core akan bersifat seperti magnet. Antara core dan magnet akan saling berlawanan. Akibat reaksi kedua sifat magnet ini, plat akan bergetar dan timbul bunyi. Konstuksi buzzer dapat dilihat pada gambar 2.9. dibawah ini. Plat Metal Core Coil Magnet Casing Supply Pins Gambar 2.9. Konstruksi Buzzer 2.2.5. Mikrokontroler ATMEGA8535 Mikrokontroller AVR memiliki arsitektur RISC 8 bit, sehingga semua instruksi yang dikemas dalam kode 16-bit (16-bits word) dan sebagian besar instruksi dieksekusi dalam satu siklus instruksi clock. Dan ini sangat membedakan sekali dengan instruksi MCS-51 (berarsitektur CISC) yang membutuhkan siklus 12 clock. RISC adalah Reduced Instruktion Set Computing sedangkan CISC adalah Complex Instruction Set Computing. Universitas Sumatera Utara Dari kesemua kelas yang membedakan satu sama lain adalah ukuran onboard memori, on-board peripheral dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan mereka bisa dikatakan hampir sama. 2.2.5.1. Arsitektur ATMega8535 1. Saluran IO sebanyak 32 buah, Port A, Port B, Port C, dan Port D 2. ADC 10 bit sebanyak 8 channel 3. Tiga buah timer/counter 4. 32 registrasi 5. Watchdog timer dengan oscilator internal 6. SRAM sebanyak 512 byte 7. Memori flash sebesar 8 kb 8. Sumber interrupt internal dan eksternal 9. Port SPI (Serial Peripheral Interface) 10. EEPROM on board sebanyak 512 byte 11. Komparator analog 12. Port USART (Universal Shynchronous Sahynchronous Receiver Trasnmitter) 2.2.5.2. 1. Fitur ATMega8535 Sistem processor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz. Universitas Sumatera Utara 2. Ukuran memori flash 8Kb, SRAM sebesar 512 byte, EEPROM sebesar 512 byte. 3. ADC internal dengan resolusi 10 bit sebanyak 8 channel 4. Port komunikasi serial USART dengan kecepatan maksimal 2.5 Mbps 5. Mode sleep untuk penghematan penggunaan daya listrik. 2.2.5.3 Konfigurasi Pin ATMega8535 1. Vcc merupakan pin yang berfungsi sebagai pin masukan catudaya 2. GND merupakan pin ground 3. Port A (PA0...PA7) merupakan pin I/O dan pin ADC 4. Port B (PB0...PB7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu timer/counter, komparator analog dan SPI 5. Port C (PC0...PC7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu komparator analog dan timer oscilator 6. Port D (PD0...PD1) merupakan port I/O yang memepunyai fungsi khusus, yaitu komparator analog dan interrupt eksternal serta komunikasi serial 7. RESET merupakan pin yang digunakan untuk mereset mikrokontroller 8. XTAL 1 dan XTAL 2 merupakan pin masukkan clock eksternal 9. AVcc merupakan ppin masukkan untuk tegangan AC 10. AREF merupakan pin masukkan tegangan referensi untuk ADC Universitas Sumatera Utara Gambar 2.10. Konfigurasi Pin Mikrokontroler ATMega8535 (Sumber : www.DataSheet ATMega8535.com) Gambar 2.11. Arsitektur Perangkat Keras (Hardware) ATMega 8535 2.2.5.4. Peta Memory ATMega8535 Universitas Sumatera Utara ATMega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi menjadi 3 bagian yaitu: 1. 32 buah register umum 2. 64 buah register I/O 3. 512 byte SRAM internal Registrasi untuk keperluan umum menempati space pada alamat terbawah yaitu $00 sampai $1F. Sementara itu registrasi khusus untuk menangani I/O dan kontrol terhadap mikrokontroler menempati 64 alamat berikutnya, yaitu mulai dari $20 sampai $5F. Registrasi tersebut merupakan regsitrasi yang khusus digunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroler, seperti kontrol register, timer,counter, fungsi-fungsi I/O, dan sebagainya. Register khusus alamat memori secara lengkap dapat dilihat pada tabel dibawah. Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi $60 sampai $25F. Gambar 2.12. Memori Data Mikrokontroler ATMega 8535 Memori program yang terletak pada Flash Perom tersusun dalam 2 byte karena setiap instruksi memiliki lebar 16-bit atau 32-bit. AVR ATMega8535 memiliki 4 Kbyte x Universitas Sumatera Utara 16 bit Flash Perom dengan alamat mulai dari $000 sampai $FFF. AVR tersebut memiliki 12 bit program counter (PC) sehingga mampu mengalamati isi flash. Gambar 2.13. Memori Program AVR ATMega 8535 (Sumber : www.ATMega8535.com) Selain itu AVR ATMega8535 juga memiliki memori data berupa EEPROM sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF. 2.2.5.5. Status Register Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU mikrokontroler. Universitas Sumatera Utara Tabel 2.3 Status Register ATMega 8535 (Sumber: www.DataSheet ATMega8535.com) 1) Bit 7 I (Global Interrupt Enable), bit harus di set untuk mengenablekan semua jenis interupsi. 2) Bit 6 T (Bit copy Storage), instruksi BLD dan BST menggunakan bit T sebagai sumber atau tegangan dalam operasi bit. Suatu bit dalam sebuah register GPR dapat disalin ke bit T menggunakan instruksi BST, dan sebaliknya bit T dapat disalin kembali kesuatu bit dalam register GPR dengan menggunakan instruksi BLD. 3) Bit 5 H (Half Cary Flag) 4) Bit 4 S (sign bit) merupakan hasil operasi EOR antara flag-N (negatif) dan flag V (komplemen dua overflow) 5) Bit 3 V (Two’s Component Overflow Flag) bit ini berfungsi untuk mendukung operasi matematis. 6) Bit 2 N (negative flag) flag N akan menjadi set, jika suatu operasi matematis menghaslkan bilangan negatif. 7) Bit 1 Z (zero flag) bit ini menjadi set apabila hasil operasi matematis menghasilkan bilangan 0. 8) Bit 0 C bit ini akan menjadi set apabila suatu operasi menghasilkan carry. Universitas Sumatera Utara Komponen-komponen Dasar Rancangan menggunakan beberapa komponen elektronika, untuk memudahkan memahami fungsi dan kateristik dari masing-masing komponen maka penulis mencoba membahasnya disini. 2.2.6.1. Resistor Resistor adalah komponen dasar elektronika yang digunakan untuk membatasi jumlah arus yang mengalir dalam satu rangkaian. Sesuai dengan namanya resistor bersifat resistif dan umumnya terbuat dari bahan karbon. Dari hukum Ohms diketahui, resistansi berbanding terbalik dengan jumlah arus yang mengalir melaluinya. Satuan resistansi dari suatu resistor disebut Ohm atau dilambangkan dengan simbol Ω (Omega). Tipe resistor yang umum adalah berbentuk tabung dengan dua kaki tembaga di kiri dan kanan. Pada badannya terdapat lingkaran membentuk gelang kode warna untuk memudahkan pemakai mengenali besar resistansi tanpa mengukur besarnya dengan Ohmmeter. Gambar 2.14. Resistor 2.2.6.2. Kapasitor Universitas Sumatera Utara Kapasitor dilihat dari fungsinya merupakan alat atau komponen elektrolit yang dapat menyimpan muatan listrik. Kapasitor terbentuk dari dua buah pelat sejajar yang dipisahkan oleh insulator yang disebut dielektrik. Bahan dielektrik yang dapat digunakan adalah kertas, kaca, keramik, mika. Kemampuan kapasitor untuk menyimpan muatan listrik atau nilai kapasitansi dinyatakan dalam farad (F). Satu farad adalah nilai dari kapasitansi untuk menyimpan muatan sebesar satu Coulomb apabila diberikan tegangan satu volt. Jadi kemampuan kapasitor menyimpan muatan dapat dituliskan dalam bentuk rumus sebagai berikut : C= Q V Keterangan : C = Kapasitansi, satuannya farad Q = Muatan kapasitor, satuannya coulomb V = Tegangan kapasitor, satuannya volt Kapasitor yang digunakan pada rangkaian ini adalah : kapasitor elektrolit dan kapasitor keramik. Universitas Sumatera Utara Gambar 2.15. (a) Kapasitor elektrolit (b) Kapasitor keramik 2.2.6.3. Dioda Dioda adalah suatu bahan yang dibuat dari bahan yang disebut PN Junction yaitu suatu bahan campuran yang terdiri dari bahan positif (P type) dan bahan negatif (N type). Apabila kedua bahan tersebut dipertemukan maka akan menjadi komponen aktif yang disebut Dioda. Tipe P akan membentuk kaki yang disebut kaki Anoda dan Tipe N akan membentuk Katoda. Pada dioda, arus listrik hanya akan dapat mengalir dari anoda ke kutub katoda. A K Gambar 2.16. Simbol Dioda Sifat umum dioda adalah hanya dapat menghantarkan arus listrik ke satu arah saja. Oleh karena itu bila pemasangan dioda terbalik maka dioda tidak akan dapat menghantarkan arus listrik. Prinsip ini biasanya digunakan sebagai pengaman alat elektronika yaitu untuk menunjukkan benar atau salah penyambungan catu daya. Universitas Sumatera Utara Dioda memiliki dua elektroda (kaki), yaitu anoda dan katoda. Kaki – kaki ini tidak boleh terbalik dalam pemasangannya. Kaki katoda biasanya dekat dengan tanda cincin sedangkan kaki yang jauh dari tanda cincin berarti kaki anoda. Jika P (anoda) diberi tegangan positif dan N (katoda) diberi tegangan negatif maka pemberian tegangan ini disebut bias maju (biased forward), Sebaliknya, bila diberi tegangan yang terbalik yaitu P (anoda) diberi tegangan negatif dan N (katoda) diberi tegangan positif maka pemberian tegangan ini disebut bias mundur (biased reverse). Pada keadaan ini, arus yang mengalir dalam dioda sangat kecil sehingga dapat diabaikan 2.2.6.3.1 Dioda Cahaya (LED : Light Emitting Diode) LED merupakan salah satu jenis dioda yang mengubah energi perpindahan electron – electron yang jatuh dari pita konduksi ke pita valensi menjadi cahaya. Berwana – warninya cahaya yang dipancarkan ini, dikarenakan jenis bahan yang digunakan berbeda – beda. Bahan – bahannya antara lain gallium, arsen dan fosfor. Penggunaan LED biasanya berhubungan dengan segala hal yang dilihat oleh manusia, seperti untuk mesin hitung, jam digital, dan lain – lain. K A Gambar 2.17. Simbol Dioda Cahaya ( LED ) \ Universitas Sumatera Utara 2.2.6.4 Transistor Semua transistor memiliki tiga buah kaki terminal atau sambungan. Transistor dayarendah dibuat dengan kemasan dari bahan plastik atau logam. Kemasan transistor yang terbuat dari plastik memiliki salah satu sisi permukaan yang berbentuk datar, sedangkan yang terbuat dari logam memiliki sebuah tonjolan (tag) pada pinggiran bawahnya (rim). Fitur-fitur ini dimaksudkan untuk membantu pemakai mengidentifikasikan kaki-kaki terminal. Apabila dilihat dari arah bawah, kaki-kaki transistor akan nampak sebagaimana berikut ini, untuk sebagian besar (namun tidak semua). Terminal-terminalnya diberi label denan huruf-huruf c, b dan e yang merupakan singkatan dari kolektor (collector), basis (base), emitor (emitter). Gambar 2.18. Ilustrasi transisitor tampak bawah 2.2.6.5 Transformator Transformator adalah komponen magnet listrik yang digunakan untuk menaikkan atau menurunkan tegangan bolak-balik. Transformator terdiri dari 3 komponen pokok yaitu: kumparan pertama (primer) yang bertindak sebagai input, kumparan kedua (sekunder) yang bertindak sebagai output, dan inti besi yang berfungsi untuk memperkuat medan magnet yang dihasilkan. Universitas Sumatera Utara Gambar 2.19. Transformator dan Lambang Transformator (Sumber: http://www.e-dukasi.net/mapok/mp_fname=trafo.html) Prinsip kerja dari sebuah transformator adalah sebagai berikut. Ketika Kumparan primer dihubungkan dengan sumber tegangan bolak-balik, perubahan arus listrik pada kumparan primer menimbulkan medan magnet yang berubah. Medan magnet yang berubah diperkuat oleh adanya inti besi dan dihantarkan inti besi ke kumparan sekunder, sehingga pada ujung-ujung kumparan sekunder akan timbul ggl induksi. Efek ini dinamakan induktansi timbal-balik (mutual inductance). Ketika arus listrik dari sumber tegangan yang mengalir pada kumparan primer berbalik arah, medan magnet yang dihasilkan akan berubah arah sehingga arus listrik yang dihasilkan pada kumparan sekunder akan berubah polaritasnya. 2.3 Perangkat Lunak 2.3.1. Teori umum Visual Basic 6.0 Visual Basic adalah perangkat lunak untuk menyusun program aplikasi yang bekerja dalam lingkungan sistem operasi windows. Visual Basic merupakan bahasa program yang berbentuk orientasi objek untuk membangun aplikasi dalam lingkungan Universitas Sumatera Utara Windows. Dalam merancang aplikasi Visual Basic digunakan pendekatan visual dari para programer dalam bentuk form, sedangkan untuk codingnya digunakan bahasa basic yang cenderung mudah dipelajari. 2.3.2. IDE (Intregrated Development and Environment) Visual Basic IDE (Intregrated Development and Environment) Visual Basic merupakan lingkungan pengembangan terpadu bagi programer dalam mengembangkan suatu aplikasi. Dengan menggunakan IDE programer kita dapat membuat user interface, melakukan coding, melakukan testing dan debugging serta mengkompilasi program menjadi eksekutabel. Untuk menjalankan IDE Visual Basic dapat dijalankan dari start menu pada windows atau melalui shortcut. Kemudian setelah masuk ke lingkungan Visual Basic dapat memilih project, bisa membuat yang baru dengan memilih New atau memilih file yang sudah ada dengan akhiran *.vbp dengan memilih existing dan memilih recent untuk membuka file yang terakhir dibuka. Gambar 2.20. Icon Visual Basic Pada Start Menu IDE Visual Basic menggunakan multiple document interface (MDI) yang berupa jendela-jendela, tapi pada saat kita membuka Visual Basic hanya beberapa jendela Universitas Sumatera Utara saja yang ditampilkan. Untuk menampilkan jendela yang lainnya kita dapat membukanya menggunakan menu View. Gambar 2.21. IDE New Project 2.3.3. Komponen-komponen Pada Visual Basic 6.0 2.3.3.1. Tool box Tool box adalah kotak alat yang berisi icon-icon untuk memasukkan objek tertentu ke dalam jendela Form. Kontrol-kontrol yang ada pada tool box yaitu : a) Picture box adalah kontrol yang digunakan untuk menampilkan image dengan format file gambar. Contohnya bitmap, GIF, JPEG, dll. Universitas Sumatera Utara b) Label, adalah kontrol yang digunakan untuk menampilkan teks yang tidak dapat diperbaiki oleh pemakai. c) Text box adalah kontrol yang mengandung string yang dapat diperbaiki oleh pemakai. d) Frame adalah kontrol yang digunakan untuk membingkai dan mengelompokkan objek tertentu. e) Command button merupakan kontrol yang digunakan untuk membangkitkan event proses tertentu apabila pemakai melakukan klik padanya. f) Option button digunakan untuk menampilkan pilihan yang akan dipilih dimana hanya salah satu yang dapat aktip dalam satu keadaan. g) DriveListBox dipakai untuk membuat objek yang dapat mengenali dan menampilkan drive-drive yang terpasang dalam sistem komputer. h) DirListBox dipakai untuk membuat objek yang dapat mengenali dan menampilkan direktori atau folder dalam suatu drive. i) FileListBox dipakai untuk membuat objek yang dapat mengenali dan menampilkan nama-nama file pada suatu direktori atau folder dalam suatu drive. j) Timer berguna untuk mengaktifkan prosedure, function dan event pada interval waktu tertentu. k) Multimedia Control Komponen ini dipakai untuk mengontrol file-file audio dan video. Ada dua cara pemakaian multimedia control, pertama komponen berisi antar muka dengan pengguna dan pengguna dapat memanipulasi dengan tombol-tombol yang ada. Cara Universitas Sumatera Utara yang kedua adalah dengan menyembunyikan multimedia control dan memainkannya dengan memanfaatkan metoda dari komponen tersebut. Format-format file yang dapat dimainkan oleh multimedia control adalah file dengan ekstensi WAV (yang berhubungan dengan suara), file dengan ekstensi MID (yang berhubungan dengan MIDI/ Musical Instrument Digital Interface), file dengan ekstensi AVI (yang berhubungan dengan animasi dan video), file dengan ekstensi DAT (Digital Audio Tape), File dengan ekstensi VCR (Video Casette Recorder) dan lain-lain. Gambar 2.22.Tampilan Komponen-komponen Pada Microsoft Visual Basic 6.0 2.3.3.2. Project Project adalah sekumpulan modul yang berisikan program yang sedang dijalankan. Project disimpan dalam file yang berakhiran .VBP. File ini menyimpan seluruh komponen program, termasuk pilihan proyek, pilihan environment, pilihan file EXE dan segala sesuatu yang berhubungan dengan proyek. Pada jendela proyek terdapat tiga icon, yaitu icon View Code, icon View Object, dan icon Toggle Folders. Universitas Sumatera Utara Icon View Code dipakai untuk menampilkan jendela editor kode program. Icon View Object dipakai untuk menampilkan bentuk formulir (Form) dan icon Toggle Folders berguna untuk menampilkan folder ( tempat penyimpan file). 2.3.3.3. Form Pada Visual Basic, Form adalah jendela yang dapat diubah-ubah untuk membuat antarmuka program. Form berbentuk jendela dan dapat dibayangkan sebagai kertas atau meja kerja yang dapat dilukis atau diletakkan ke dalamnya objek-objek lain. Pada saat anda membuat suatu program aplikasi (proyek) baru, akan otomatis tersedia satu form dan disebut form1. Nantinya dalam satu proyek, anda dapat menggunakan lebih dari satu form. Biasanya pada saat mendesain form, terdapat garis titik-titik yang disebut grid yang berfungsi untuk membantu pengaturan tata letak objek yang dimasukkan dalam form. 2.3.3.4. Properties Jendela properti digunakan untuk mengubah karakteristik atau setting properti dari elemen yang terdapat pada form Suatu objek atau elemen biasanya mempunyai beberapa properti yang dapat langsung diatur dari jendela properti atau lewat kode program. Setting ini akan menentukan cara kerja dari objek yang bersangkutan saat program aplikasi dijalankan. Universitas Sumatera Utara 2.3.3.5. Kode Program Kode progam adalah serangkaian tulisan perintah yang akan dilaksanakan jika suatu objek dijalankan. Kode program ini akan mengontrol dan menentukan jalannya suatu objek. Contoh penulisan kode program untuk pengaksesan port serial pada Visual Basic adalah sebagai berikut: Private Sub Form_Load() MSComm1.CommPort = 1 MSComm1.Setting = “9600,n,8,1” MSComm1.PortOpen = True End Sub 2.3.3.6. Event Event adalah peristiwa atau kejadian yang akan diterima oleh suatu objek, misalnya klik, seret, tunjuk dan lain-lain. Event yang diterima objek akan memicu MS-Visual Basic untuk menjalankan kode program yang ada didalamnya. Sebagai contoh dari suatu kode program, kita perhatikan penyataan: Private Sub Command1_Click() Universitas Sumatera Utara Baris tersebut menunjukkan penggunaan event click pada objek Command1, yang berarti jika kita klik pada objek command1, maka baris kode program dibawahnya akan dilaksanakan. 2.3.3.7. Metoda Metoda adalah suatu set perintah seperti halnya fungsi dan prosedur, tetapi sudah tersedia dalam suatu objek. Suatu metoda dapat dipanggil dengan menyebut nama objek diikuti tanda titik dan nama metodanya. Metoda biasanya akan mengerjakan suatu tugas khusus pada suatu objek tertentu sedangkan properti biasanya memberi definisi nilai atau setting pada objek. 2.3.3.8. Modul Modul dapat diartikan sama dengan form, tetapi tidak mengandung objek dan bentuk standar. Modul dapat berisi beberapa kode program atau prosedure yang dapat digunakan dalam program aplikasi. Sebenarnya suatu form juga adalah sebuah modul tetapi mempunyai objek berupa form. Untuk membuat sebuah modul ke dalam sebuah program aplikasi yaitu dengan cara mengklik menu Project lalu klik pada Add Module, selanjutnya kita dapat mengisi kode program dalam modul tersebut. 2.3.4. Bahasa Pemrograman Visual Basic Universitas Sumatera Utara Bahasa dasar visual basic adalah dialek BASIC (Beginner All Purpose Simbolic Interchange Code). Sebaris kode pada visual basic disebut dengan istilah pernyataan program (Program Statement). Pernyataan program adalah serangkaian kombinasi kata kunci, properti, fungsi, operator, dan simbol-simbol pada visual basic yang semuanya membentuk sebuah instruksi yang valid yang dikenali compiler visual basic. Aturan pembuatan program yang harus digunakan disebut dengan istilah sintaks (Syntax). 2.3.4.1. Variabel Dalam melakukan pemrograman kita akan selalu memerlukan tempat penyimpanan data, misalnya untuk menampung data hasil perhitungan, menampung hasil data pembacaan register, atau lainnya. Tempat penyimpanan itu merupakan pointer yang menunjuk pada alamat memori fisik tertentu pada komputer. 2.3.4.2. Tipe Data dan Deklarasi Variabel Seperti pada bahasa pemrograman lainnya, dalam penggunaan variable harus mempunyai nama dan tipe data tertentu. Nama variabel menunjuk pada suatu tempat dalam memori komputer, sedangkan tipe data mengontrol besarnya memori yang disediakan untuk variabel tersebut. Pada tabel 2.4. menunjukkan tipe data pada visual basic beserta ukuran byte dan range tipe data tersebut. Universitas Sumatera Utara Tabel 2.4.Tipe Variabel pada Visual Basic Selain tipe data di atas, programer dapat membuat tipe data baru dengan mengambil salah satu atau beberapa tipe standar yang telah tersedia. Sarana ini sangat bermanfaat apabila programer menangani sekelompok data yang menyatu, tetapi terbagi ke dalam beberapa kategori data yang berbeda. Kita dapat membuat tipe data buatan menggunakan pernyataan ‘Type’. Sintaksnya adalah sebagai berikut: Type NamaTipe NamaVariabel as Tipe Variabel Universitas Sumatera Utara End Type Ada dua cara untuk mendeklarasikan sebuah variabel yaitu Deklarasi Explicit dan Deklarasi Implisit. Deklarasi explicit menggunakan pernyataan “DIM“ diikuti dengan nama dan tipe datanya. Cara ini juga dapat mencegah kesalahan pengetikan nama variabel dan visual basic akan memberikan peringatan jika menemukan nama yang tidak dideklarasikan terlebih dahulu sebagai suatu variabel. Berikut ini adalah contoh pendeklarasian Variabel Explicit ; \ Dim Nama As String Dim Angka As Integer Dim Tanggal As Date Dim Data_input As Variant Tabel 2.5. Deklarasi Implisit Universitas Sumatera Utara Pernyataan Option Explicit hanya bekerja per modul, sehingga harus diletakkan pada bagian deklarasi pada setiap form dan class module. Sedangkan deklarasi implisit menggunakan simbol di belakang nama variabel yang mempresentasikan tipe data. 2.3.4.3. Konstanta Konstanta adalah sebuah variabel namun nilai yang dikandungnya tetap. Dengan konstanta, kode program yang dibuat akan lebih muda dibaca dan dapat mencegah penulisan yang salah pada kode program. Konstanta harus dideklarasikan lebih dalu menggunakan pernyataan “Const”, lalu diikuti nama konstanta dan tipe datanya. Berikut ini adalah contoh pendeklarasian konstanta. Const Konstanta_Pi as Interger = 3.1415926535 Const Salam As String = “Selamat malam” Selain konstanta yang dapat kita buat sendiri, visual basic telah menyediakan konstanta-konstanta siap pakai yang dalam penamaannya diawali dengan karakter “vb”, contoh vbRed yang merupakan konstanta untuk warna merah. Berikut ini adalah aturan-aturan yang harus diperhatikan dalam pemberian nama sebuah variabel atau konstanta: 1. Harus didahului dengan huruf. 2. Tidak boleh sama, dan nama tersebut tidak digunakan oleh VisualBasic. Universitas Sumatera Utara 3. Maksimum 255 karakter 4. Tidak boleh menggunakan karakter-karakter berikut: “+”,”-“, “/”, “<”, “>”, “;”, “*”. 2.3.5. CodeVisionAVR CodeVisionAVR merupakan salah satu software kompiler yang khusus digunakan untuk mikrokontroler keluarga AVR. CodeVisionAVR merupakan yang terbaik bila dibandingkan dengan kompiler-kompiler yang lain karena beberapa kelebihan yang dimiliki oleh CodeVisionAVR antara lain: 1. Menggunakan IDE (Integrated Development Environment). 2. Fasilitas yang disediakan lengkap (mengedit program, mengkompile program, mendownload program) serta tampilannya terlihat menarik dan mudah dimengerti. Kita dapat mengatur settingan editor sedemikian rupa sehingga membantu memudahkan kita dalam penulisan program. 3. Mampu membangkitkan kode program secara otomatis dengan menggunakan fasilitas CodeWizardAVR. 4. Memiliki fasilitas untuk mendownload program langsung dari CodeVisionAVR dengan menggunakan hardware khusus seperti Atmel STK500, Kanda System STK200+/300 dan beberapa hardware lain yang telah didefenisikan oleh CodeVisionAVR. 5. Memiliki fasilitas debugger sehingga dapat menggunakan software compiler lain untuk mengecek kode assemblernya, contohnya AVRStudio. Universitas Sumatera Utara 6. Memiliki terminal komunikasi serial yang terintegrasi dalam CodeVisionAVR sehingga dapat digunakan untuk membantu pengecekan program yang telah dibuat khususnya yang menggunakan fasililtas komunikasi serial UART. Salah satu kelebihan dari CodeVisionAVR adalah tersedianya fasilitas untuk mendownload program ke mikrokontroler yang telah terintegrasi sehingga demikian CodeVisionAVR ini selain dapat berfungsi sebagai software kompiler juga dapat berfungsi sebagai software programmer/ downloader. Jadi kita dapat melakukan proses download program yang telah dikompile dengan menggunakan software CodeVisionAVR juga. Gambar 2.23. Program Setting (http://s600.photobucket.com/albums/tt82/electroboter/?). 2.3.6. Software Downloader Universitas Sumatera Utara Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet. Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroller. Gambar 2.24. ISP- Flash Programmer (http://www.google.com/avrku.blogspot.com/2008/11/berkenalan-dengancodevisionavr. pdf). Universitas Sumatera Utara