BAB 2
LANDASAN TEORI
2.1 Sensor Infra Merah
Infra merah (infra red) adalah sinar elektromagnetik yang panjang gelombangnya lebih panjang dari pada cahaya tampak, tetapi lebih pendek dari radiasi gelombang radio. Radiasi infra merah memiliki panjang gelombang antara 700 nm sampai 1 mm dan berada pada spektrum berwarna merah. Sinar infra merah merupakan cahaya yang tidak tampak. Jika dilihat dengan spektroskop cahaya maka radiasi cahaya infra merah akan nampak pada spektrum elektromagnet dengan panjang gelombang diatas panjang gelombang cahaya merah. Dengan panjang gelombang ini maka cahaya infra merah tidak akan tampak oleh mata namun radisi panas yang ditimbulkannya masih terasa/ dideteksi.
Pada dasarnya komponen yang menghasilkan panas juga menghasilkan radiasi infra merah termasuk tubuh manusia maupun tubuh binatang. Cahaya infra merah, walaupun mempunyai panjang gelombang yang sangat panjang tetap tidak dapat menembus bahan-bahan yang tidak dapat melewatkan cahaya yang nampak sehingga cahaya infra merah tetap mempunyai karakteristik seperti halnya cahaya yang nampak oleh mata.
Universitas Sumatera Utara
Gambar 2.1 Infra Merah
Penggunaan infra merah sebagai media transmisi data mulai diaplikasikan pada berbagai peralatan elektronik seperti pada televisi, handphone sampai pada transfer data pada PC. Media infra merah ini dapat digunakan baik untuk kontrol aplikasi lain maupun transmisi data (temperatur). Sifat-sifat cahaya infra merah :
1. Tidak tampak manusia 2. Tidak dapat menembus materi yang tidak tembus pandang 3. Dapat ditimbulkan oleh komponen yang menghasilkan panas.
Komunikasi Infra merah dilakukan dengan menggunakan dioda infra merah sebagai pemancar dan modul penerima infra merah sebagai penerimanya. Untuk jarak yang cukup jauh, kurang lebih tiga sampai lima meter, pancaran data infra merah harus dimodulasikan terlebih dahulu untuk menghindari kerusakan data akibat noise.
Universitas Sumatera Utara
Gambar 2.2 Objek Deteksi Menggunakan Cahaya Infra Merah
Sinar infra merah yang dipancarkan oleh pemancar infra merah tentunya mempunyai aturan tertentu agar data yang dipancarkan dapat diterima dengan baik pada penerima. Oleh karena itu baik di pengirim infra merah maupun penerima infra merah harus mempunyai aturan yang sama dalam mentransmisikan (bagian pengirim) dan menerima sinyal tersebut kemudian mendekodekannya kembali menjadi data biner (bagian penerima). Komponen yang dapat menerima infra merah ini merupakan komponen yang peka cahaya yang dapat berupa dioda (photodioda) atau transistor (phototransistor). Komponen ini akan merubah energi cahaya, dalam hal ini energi cahaya infra merah, menjadi pulsa-pulsa sinyal listrik. Komponen ini harus mampu mengumpulkan sinyal infra merah sebanyak mungkin sehingga pulsa-pulsa sinyal listrik yang dihasilkan kualitasnya cukup baik.
Prinsip utama dari rangkaian sensor infra merah seperti layaknya sebuah saklar yang memberikan perubahan tegangan apabila terdapat penghalang diantara tranceiver dan
receiver.
Sensor
ini
memiliki
dua
buah
piranti
yaitu
rangkaian
pembangkit/pengirim (Led Infra Merah) dan rangkaian penerima (Fotodioda).
Universitas Sumatera Utara
Rangkaian pembangkit/pengirim memancarkan sinar infra merah, kemudian pancarannya diterima oleh penerima (fotodioda) sehingga bersifat menghantar akibatnya tegangan akan jatuh sampai sama dengan tegangan ground (0). Dan sebaliknya apabila tidak mendapat pancaran sinar infra merah maka akan menghasilkan tegangan.
2.2 Fotodioda
Fotodioda berbeda dengan dioda biasa. Fotodioda adalah suatu jenis dioda yang resistansinya berubah-ubah kalau cahaya yang jatuh pada dioda berubah-ubah intensitasnya. Dalam keadaan gelap nilai tahananya sangat besar hingga praktis tidak ada arus yang mengalir. Semakin kuat cahaya yang jatuh pada dioda maka makin kecil nilai tahanannya, sehingga arus yang mengalir semakin besar. Fotodioda ini digunakan terutama sebagai saklar elektronik yang bereaksi akibat perubahan intensitas cahaya.
Gambar 2.3 Fotodioda
Universitas Sumatera Utara
Fotodioda adalah jenis dioda yang berfungsi mendeteksi cahaya. Fotodioda merupakan sensor cahaya semikonduktor yang dapat mengubah besaran cahaya menjadi besaran listrik. Fotodioda termasuk dioda dengan sambungan p-n yang dipengaruhi cahaya dalam kerjanya. Cahaya yang dapat dideteksi oleh fotodioda ini mulai dari cahaya infra merah, cahaya tampak, ultra ungu sampai dengan sinar-X. Aplikasi fotodioda mulai dari penghitung kendaraan di jalan umum secara otomatis, pengukur cahaya pada kamera serta beberapa peralatan di bidang medis.
Gambar 2.4 Simbol Fotodioda
Prinsip kerja dari fotodioda jika sebuah sambungan p-n dibias maju dan diberikan cahaya padanya maka pertambahan arus sangat kecil sedangkan jika sambungan p-n dibias mundur arus akan bertambah cukup besar. Cahaya yang dikenakan pada fotodioda akan mengakibatkan terjadinya pergeseran foton yang akan menghasilkan pasangan elektron-hole dikedua sisi dari sambungan. Ketika elektronelektron yang dihasilkan itu masuk ke pita konduksi maka elektron-elektron itu akan mengalir ke arah positif sumber tegangan sedangkan hole yang dihasilkan mengalir ke arah negatif sumber tegangan sehingga arus akan mengalir di dalam rangkaian. Besarnya pasangan elektron ataupun hole yang dihasilkan tergantung dari besarnya intensitas cahaya yang dikenakan pada fotodioda.
Universitas Sumatera Utara
Alat yang mirip dengan fotodioda adalah fototransistor (Phototransistor). Fototransistor ini pada dasarnya adalah jenis transistor bipolar yang menggunakan kontak (junction) base-collector untuk menerima cahaya. Komponen ini mempunyai sensitivitas yang lebih baik jika dibandingkan dengan Fotodioda. Hal ini disebabkan karena elektron yang ditimbulkan oleh foton cahaya pada junction ini diinjeksikan di bagian Base dan diperkuat di bagian Kolektornya. Namun demikian, waktu respon dari fototransistor secara umum akan lebih lambat dari pada fotodioda.
2.3. Mikrokontroler ATMega8535
Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semi konduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan mikroprosessor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih canggih serta dalam bidang pendidikan.
Tidak seperti sistem komputer yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka, dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna
Universitas Sumatera Utara
disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antar muka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program kontrol disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sederhana sementara termasuk registerregister yang digunakan pada mikrokontroler yang bersangkutan.
Mikrokontroler saat ini sudah dikenal dan digunakan secara luas pada dunia industri. Banyak sekali penelitian atau proyek mahasiswa yang menggunakan berbagai versi mikrokontroler yang dapat dibeli dengan harga yang relatif murah. Hal ini dikarenakan produksi massal yang dilakukan oleh para produsen chip seperti Atmel, Maxim, dan Microchip. Mikrokontroler saat ini merupakan chip utama pada hampir setiap peralatan elektronika canggih. Alat-alat canggih sekarang ini sangat bergantung pada kemampuan mikrokontroler tersebut. Mikrokontroler AVR memiliki arsitektur RISC 8 bit, dimana semua instruksi dikemas dalam kode 16-bit (16-bit word) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock, berbeda dengan instruksi MCS51 yang membutuhkan 12 siklus clock. Tentu saja itu terjadi karena kedua jenis mikrokontroler tersebut memiliki arsitektur yang berbeda. AVR berteknologi RISC (Reduced Instruction Set Computing), sedangkan seri MCS51 berteknologi CISC (Complex Instruction Set Computing). Secara umum AVR dapat dikelompokkan menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama.
Universitas Sumatera Utara
Kapabilitas detail dari ATMega8535 adalah sebagai berikut : 1. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz 2. Kapabilitas memori flash 8 KB, SRAM sebesar 512 byte, dan EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 512 byte 3. ADC internal dengan fidelitas 10 bit sebanyak 8 channel 4. Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps 5.
Enam pilihan mode sleep menghemat penggunaan daya listrik
AVR ATMega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi menjadi 3 bagian, yaitu 32 buah register umum, 64 buah register I/O, dan 512 byte SRAM Internal.
Register keperluan umum menempati space data pada alamat terbawah, yaitu $00 sampai $1F. Sementara itu, register khusus untuk menangani I/O dan control terhadap mikrokontroller menempati 64 alamat berikutnya, yaitu mulai dari $20 hingga $5F. Register tersebut merupakan register yang khusus digunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroller, seperti control register, timer/conter, fungsi-fungsi I/O, dan sebagainya. Register khusus alamat memori secara lengkap Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi $60 sampai dengan $25F.
Universitas Sumatera Utara
2.3.1 Konfigurasi Pin ATMega8535
Konfigurasi pin ATMega8535 bisa dilihat pada gambar 2.5 dibawah ini.
Gambar 2.5 Pin ATMega8535
Keterangan: a. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya b. GND merupakan pin Ground c. Port A (PA0 – PA7) merupakan pin I/O dan pin masukan ADC d. Port B (PB0 – PB7) merupakan pin I/O yang mempunyai fungsi khusus yaitu Timer/Counter, komparator analog dan SPI e. Port C (PC0 – PC7) merupakan port I/O dan pin yang mempunyai fungsi khusus, yaitu komparator analog dan timer oscillator
Universitas Sumatera Utara
f. Port D (PD0 – PD1) merupakan port I/O dan pin fungsi khusus yaitu komparator analog dan interrupt eksternal serta komunikasi serial g. RESET merupakan pin yang digunakan untuk mereset mikrokontroler h. XTAL1 dan XTAL merupakan pin masukan clock eksternal i.
AVCC merupakan pin masukan untuk tegangan ADC
j.
AREF merupakan pin masukan tegangan referensi untuk ADC
Data yang dipakai dalam mikrokontroler ATMega8535 dipresentasikan dalam sistem bilangan biner, desimal dan bilangan heksadesimal. Data yang terdapat di mikrokontroler dapat diolah dengan berbagai operasi aritmatik (penjumlahan, pengurangan, dan perkalian) maupun operasi nalar (AND, OR, dan EOR /eksklusif OR). AVR ATmega8535 memiliki tiga buah timer, yaitu: 1. Timer/counter 0 (8 bit) 2. Timer/ counter 1 (16 bit) 3.
Timer/counter 2 (8 bit)
Karena ATMega8535 memiliki 8 saluran ADC maka untuk keperluan konversi sinyal analog menjadi data digital yang berasal dari sensor dapat langsung dilakukan prosesor utama. Beberapa karakteristik ADC internal ATMega8535 adalah: 1. Mudah dalam pengoperasian 2. Resolusi 10 bit 3. Memiliki 8 masukan analog 4.
Konversi pada saat CPU sleep
5. Interrupt waktu konversi selesai
Universitas Sumatera Utara
2.4. Perangkat Lunak 2.4.1. Bahasa BASIC Menggunakan BASCOM-AVR
BASCOM-AVR adalah program BASIC compiler berbasis Windows untuk mikrokontroler keluarga AVR seperti ATMega8535. BASCOM-AVR merupakan pemrograman dengan bahasa tingkat tinggi BASIC yang dikembangkan dan dikeluarkan oleh MCS Elektronik.
2.4.1.1. Karakter dalam BASCOM
Dalam program BASCOM, karakter dasarnya terdiri atas karakter alphabet (A-Z dan a-z), karakter numeric (0-9), dan karakter spesial (lihat tabel 2.1).
Tabel 2.1 Karakter Spesial karakter
Nama Blank
‘
Apostrophe
*
Asterisk (symbol perkalian)
+
Plus sign
,
Comma
-
Minus sign
.
Period (decimal point)
/
Slash (division symbol) will be handled as\
Universitas Sumatera Utara
:
Colon
“
Double quotation mark
;
Semicolon
<
Less than
=
Equal sign (assignment symbol or relational operator)
>
Greater than
\
Backspace (integer or word division symbol)
2.4.1.2. Tipe Data
Setiap variabel dalam BASCOM memiliki tipe data yang menunjukkan daya tampungnya. Hal ini berhubungan dengan penggunaan memori mikrokontroler.
Tabel 2.2 Tipe data BASCOM Tipe Data
Ukuran (byte)
Range
Bit
1/8
-
Byte
1
0 – 255
Integer
2
-32,768 - +32,767
Word
2
0 – 65535
Long
4
-214783648 - +2147483647
Single
4
-
String
hingga 254 byte
-
Universitas Sumatera Utara
2.4.1.3 Variabel
Variabel dalam sebuah pemrograman berfungsi sebagai tempat penyimpanan data atau penampungan data sementara, misalnya menampung hasil perhitungan, menampung data hasil pembacaan register dan lainnya. Variabel merupakan pointer yang menunjukkan pada alamat memori fisik dan mikrokontroler.
Dalam BASCOM, ada beberapa aturan dalam penamaan sebuah variabel: a. Nama variabel maksimum terdiri atas 32 karakter b. Karakter biasa berupa angka atau huruf c. Nama variabel harus dimulai dengan huruf d. Variabel tidak boleh menggunakan kata-kata yang digunakan oleh BASCOM sebagai perintah, pernyataan, internal register, dan nama operator (AND, OR, DIM, dan lain-lain)
Sebelum digunakan, maka variabel harus dideklarasikan terlebih dahulu. Dalam BASCOM, ada beberapa cara untuk mendeklarasikan sebuah variabel. Cara pertama adalah menggunakan pernyataan ‘DIM’ diikuti nama tipe datanya. Contoh pendeklarasian menggunakan DIM sebagai berikut:
Dim nama as byte Dim tombol1 as integer Dim tombol2 as word Dim tombol3 as word Dim tombol4 as word Dim Kas as string*10
Universitas Sumatera Utara
2.4.1.4 Alias
Dengan menggunakan alias, variabel yang sama dapat diberikan nama yang lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias digunakan untuk mengganti nama variabel yang telah baku, seperti port mikrokontroler.
LEDBAR alias P1 Tombol1 alias P0.1 Tombol2 alias P0.2
Dengan deklarasi seperti diatas, perubahan pada tombol akan mengubah kondisi P0.1. Selain mengganti nama port, kita dapat pula menggunakan alias untuk mengakses bit tertentu dari sebuah variabel yang telah dideklarasikan.
Dim LedBar as byte Led1 as LedBar.0 Led2 as LedBar.1 Led3 as LedBar.2
2.4.1.5 Konstanta
Dalam BASCOM, selain variabel kita mengenal pula konstanta. Konstanta merupakan variabel pula. Perbedaannya dengan variabel biasa adalah nilai yang dikandung tetap. Dengan konstanta, kode program yang kita buat akan lebih mudah dibaca dan dapat mencegah kesalahan penulisan pada program. Misalnya, kita akan lebih mudah
Universitas Sumatera Utara
menulis phi daripada menulis 3,14159867. Sama seperti variabel, agar konstanta bisa dikenali oleh program, maka harus dideklarasikan terlebih dahulu. Berikut adalah cara pendeklarasian sebuah konstanta.
Dim A As Const 5 Dim B1 As Const &B1001
Cara lain yang paling mudah: Const Cbyte = &HF Const Cint = -1000 Const Csingle = 1.1 Const Cstring = “test”
2.4.1.6 Array
Dengan array, kita bisa menggunakan sekumpulan variabel dengan nama dan tipe yang sama. Untuk mengakses variabel tertentu dalam array, kita harus menggunakan indeks. Indeks harus berupa angka dengan tipe data byte, integer, atau word. Artinya, nilai maksimum sebuah indeks sebesar 65535.
Proses pendeklarasian sebuah array hampir sama dengan variabel, namun perbedaannya kita pun mengikutkan jumlah elemennya. Berikut adalah contoh pemakaian array.
Universitas Sumatera Utara
Dim kelas(10) as byte Dim c as Integer For C = 1 To 10 a(c) = c p1 = a(c) Next
Program diatas membuat sebuah array dengan nama ‘kelas’ yang berisi 10 elemen (1-10) dan kemudian seluruh elemennya diisikan dengan nilai c yang berurutan. Untuk membacanya, kita menggunakan indeks dimana elemen disimpan. Pada program diatas, elemen-elemen arraynya dikeluarkan ke Port 1 dari mikrokontroler.
2.5. Operasi-Operasi dalam BASCOM
Pada bagian ini akan dibahas tentang cara menggabungkan, memodifikasi, membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan menggunakan operator-operator yang tersedia di BASCOM dan bagaimana sebuah pernyataan terbentuk dan dihasilkan dari operator-operator berikut:
a. Operator Aritmatika Operator digunakan dalam perhitungan. Operator aritmatika meliputi + (tambah), - (kurang), / (bagi), dan * (kali).
Universitas Sumatera Utara
b. Operator Relasi Operator berfungsi membandingkan nilai sebuah angka. Hasilnya dapat digunakan untuk membuat keputusan sesuai dengan program yang kita buat. Operator relasi meliput i:
Tabel 2.3 Tabel Operator Relasi Operator
Relasi
Pernyataan
=
Sama dengan
X=Y
<>
Tidak sama dengan
<
Lebih kecil dari
X
>
Lebih besar dari
X>Y
<=
Lebih kecil atau sama dengan
X <= Y
>=
Lebih besar atau sama dengan
X >= Y
X <> Y
c. Operator Logika Operator logika digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan operasi bolean. Dalam BASCOM, ada empat buah operator logika, yaitu AND, OR, NOT, dan XOR. Operator logika bias pula digunakan untuk menguji sebuah byte dengan pola bit tertentu, sebagai contoh:
Dim A As Byte A = 63 And 19 PPRINT A
Universitas Sumatera Utara
A = 10 or 9 PRTINT A Output 16 11
d. Operator Fungsi Operasi fungsi digunakan untuk melengkapi operator yang sederhana.
2.6. Bahasa Pemograman Visual Basic
Visual Basic merupakan bahasa pemograman yang cukup populer dan mudah untuk dipelajari. Visual Basic juga menyediakan fasilitas yang memungkinkan pemakai menyusun sebuah program dengan memasang objek-objek grafis dalam sebuah form.
Visual Basic berawal dari bahasa pemograman BASIC (Beginners All Purpose Symbolic Instruction Code). Karena bahasa basic mudah dipelajari dan populer maka hampir setiap programmer menguasai bahasa ini.
2.6.1. Memulai Visual Basic
Pada bagian ini akan dijelaskan bagaimana cara menjalankan Visual Basic pada sistem operasi windows. Cara pertama yang dapat dilakukan untuk memulai Microsoft Visual Basic adalah:
Universitas Sumatera Utara
1. Klik tombol start pada Taskbar, kemudian pilih program dari tampilan menu utama. 2. Dari tampilan menu yang ada, pilih Visual Basic.
2.6.2 Tampilan Awal Visual Basic
Secara otomatis, pada saat pertama kali menjalankan Visual Basic, akan tampil kotak dialog New Project seperti yang terlihat pada ilustrasi gambar 2.6
Gambar 2.6 Tampilan awal Visual Basic
Universitas Sumatera Utara
Pada kotak dialog tersebut terdapat tiga pilihan tabulasi yaitu New, Exiting dan Recent yang ditunjukkan pada tabel .
Tabel 2.4. Keterangan Tabulasi Tabulasi
Keterangan
New
Pilihan ini digunakan untuk membuat project baru dengan berbagai macam pilihan
Existing
Pilihan ini digunakan untuk membuka project yang pernah dibuat sebelumnya dengan menetukan folder sekaligus nama file
Recent
Pilihan ini digunakan untuk membuka project yang telah dibuat dan terakhir kali dibuka
2.7. Komponen Visual Basic 2.7.1. Title Bar
Title bar merupakan batang judul dari program Visual Basic yang terletak pada bagian paling atas dari jendela program yang berfungsi untuk menampilkan judul atau nama jendela. Selain itu title bar juga berfungsi:
1.
Memindahkan posisi jendela dengan menggunakan proses drag and drop pada posisi title bar tersebut.
2.
Mengatur ukuran jendela dari ukuran maximize keukuran restore ataupun sebaliknya dengan melakukan klik ganda pada posisi title bar tersebut.
Universitas Sumatera Utara
2.7.2. Menu Bar
Menu bar merupakan batang menu yang terletak dibawah titel bar yang berfungsi untuk menampilkan pilihan menu atau perintah dan untuk mengoperasikan program Visual Basic. Saat pertama kali program Visual Basic terbuka, kita dapat melihat tiga belas menu utama, yaitu: File, Edit, View, Project, Format, Debug, Run, Query, Diagram, Tools, Add-Ins, Windows dan Help. Menu bar memiliki sederatan pilihan menu yang masing-masing mempunyai arti dan fungsi berbeda.
2.7.3. Tool Bar
Toolbar batang yang berisi kumpulan tombol yang terletak di bagian bawah menu bar yang dapat digunakan untuk menjalankan suatu perintah. Pada kondisi default program Visual Basic hanya menampilkan toolbar standard.
Dengan menggunakan prosedur : 1. Klik tombol toolbox dibagian toolbar standard 2. Pilih perintah view-toolbox
2.7.4. Properties Windows
Properties windows merupakan sebuah jendela yang digunakan untuk menampung nama properti dari kontrol terpilih. Pengaturan properti pada program Visual Basic
Universitas Sumatera Utara
merupakan hal yang sangat penting untuk membedakan objek yang satu dengan yang lainnya.
Pada jendela properti ditampilkan jenis dan nama objek yang dipilih urut berdasarkan abjad pada tab alphabetic atau berdasarkan kategori pada tab categorized. Untuk menampilkan jendela properties dapat menggunakan prosedur sebagai berikut : 1. Klik tombol properties window pada toolbar standard 2. Pilih perintah view-properties window 3. Shortcut key F4
Gambar 2.7 Properties form
Universitas Sumatera Utara
2.7.5. Form Window
Form window merupakan jendela desain dari sebuah program aplikasi. Dari form window dapat mendesain sebuah program aplikasi dengan menempatkan kontrolkontrol yang ada di bagian toolbox pada area form. Pada jendela form juga terdapat beberapa elemen yang dapat digunakan untuk mengatur tampilan.
2.7.6. Code Window
Code window merupakan sebuah jendela yang digunakan untuk menuliskan kode program dari kontrol yang dipasang pada jendela form dengan cara memilih terlebih dahulu kontrol tersebut pada kotak objek.
2.9.7. Project
Project merupakan suatu kumpulan module atau program aplikasi itu sendiri. Dalam Visual Basic, file project disimpan dengan nama file berakhiran VBP, dimana file ini berfungsi untuk menyimpan seluruh komponen program.
Apabila membuat program aplikasi baru, maka secara otomatis project tersebut akan diisi dengan object form 1, dalam jendela project explorer ditampilkan suatu struktur hirarki dari sebuah project itu sendiri yang berisi semua item yang terkandung didalamnya, seperti yang tampak pada gambar 2.8 dibawah ini.
Universitas Sumatera Utara
Ganbar 2.8 Jendela Project
Dengan project explorer kita dapat memilih objek yang kita buat dengan mudah. Untuk menampilkan jendela project explorer digunakan prosedur berikut:
1. Klik tombol project explorer pada bagian toolbar standard 2. Pilih perintah view-project explorer 3. Shortcut key Ctrl + key
2.8. Aplikasi BASCOM dengan LCD
Salah satu kelebihan yang dimiliki oleh compiler BASCOM adalah program yang menyediakan rutin-rutin khusus untuk menampilkan karakter menggunakan LCD. Bahkan, kita pun dapat membuat karakter spesial dengan fasilitas LCD designer.
Universitas Sumatera Utara
Antar muka antara LCD dengan ATMega8535 menggunakan mode antarmuka 4 bit. Selain lebih menghemat I/O, mode demikian mempermudah proses pembuatan PCB-nya. Program berikut akan menjalankan beberapa perintah yang berkenaan dengan LCD.
$regfile = “m8535.dat” $crystal = 4000000
dim x as byte config LCD = 16*2
Cursor off do X = 100 Cls Lcd “namaku Awallina” Lowerline Lcd “Nilaiku”; x Wait 1
Cls Lcd “<<<< Hebat >>>>” For x=1 to 16 Shiftlcd left next For x=1 to 32 Shiftlcd right Waitms 200 next
Universitas Sumatera Utara
x = 100 cls lcd hex x
loop
Penjelasan programnya sebagai berikut: a. Dim x As Byte Pernyataan di atas merupakan pendeklarasian variable x dengan ukuran byte. b. Config LCD = 16 x 2 Oleh karena itu, konfigurasi yang dapat kita lakukan adalah mendeklarasikannya dilisting program yang kita buat seperti dikontrolkan di atas. c. CLS Perintah CLS berfungsi membersihkan atau mengosongkan tampilan LCD. d. Lowerline Perintah berfungsi memindahkan kursor ke baris bawah. Karena LCD yang digunakan adalah LCD 2 x 16, maka LCD memiliki 2 baris dan kolom. e. X = 100 Lcd “namaku Awallina” Lowerline Lcd “Nilaiku”; x Ketika kita menjalankan perintah di atas, maka keluarannya adalah: namaku Awallina Nilaiku 100
Universitas Sumatera Utara
Contoh di atas menunjukkan bahwa kita dapat menampilkan isi sebuah variabel menggunakan LCD hanya dengan menulis. f. ShiftLCD left/right Perintah ini digunakan untuk menggeser tampilan LCD ke kiri atau ke kanan sebanyak 1 langkah. Perintah ini berguna untuk menampilkan kalimat yang panjang dan mebuat animasi di LCD. g. Lcdhex x Perintah ini berfungsi mengirim isi sebuah variabel ke LCD dalam format hexadesimal.
2.9. LCD (Liquid Crystal Display)
Kegunaan
LCD
banyak
sekali
dalam
perancangan
suatu
sistem
dengan
menggunakan mikrokontroler. LCD (Liquid Crystal Display) dapat berfungsi untuk menampilkan suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroler. Pada praktek proyek ini, LCD yang digunakan adalah LCD 16 x 2 yang artinya lebar display 2 baris 16 kolom dengan 16 Pin konektor.
Adapun konfigurasi dan deskripsi dari pin-pin LCD antara lain: VCC ( pin 1) Merupakan sambungan ground GND 0V ( pin 2) Merupakan sambungan Vcc +5 Volt
Universitas Sumatera Utara
VEE (pin 3) Merupakan input tegangan Kontras LCD RS Register Select (pin 4) Merupakan register pilihan 0 = Register Perintah, 1 = Register Data R/W (pin 5) Merupakan read select , 1 = Read, 0 = Write Enable Clock LCD (pin 6) Merupakan masukan logika 1 setiap kali pengiriman atau pembacaan data D0 – D7 ( pin 7 – pin 14) Merupakan Data Bus 1 – 7 ke port Anoda (pin 15) Merupakan masukan Tegangan positif backlight Katoda (pin 16) Merupakan masukanTegangan negatif backlight
Gambar LCD dapat di tunjukkan pada gambar 2.9 berikut
Gambar 2.9 LCD 2 x 16
Universitas Sumatera Utara
Display karakter pada LCD diatur oleh pin EN, RS dan
RW.
Jalur
EN
dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa sebuah data sedang dikirimkan. Untuk mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low “0” dan set pada dua jalur kontrol yang lain RS dan RW. Ketika dua jalur yang lain telah siap, set EN dengan logika “1” dan tunggu dan berikutnya di set.
2.10. Modul LCD (Liquid Crystal Display) M1632
M1632 merupakan modul LCD matrix dengan konfigurasi 16 karakter dan 2 baris dengan setiap karakternya dibentuk oleh 8 baris pixel dan 5 kolom pixel (1 baris pixel terakhir adalah kursor). HD44780 ini sudah tersedia dalam Modul M1632 yang dikeluarkan oleh Hitachi, Hyundai dan modul-modul M1632 lainnya.
HD44780 sebetulnya merupakan mikrokontroler yang dirancang khusus untuk mengendalikan LCD dan mempunyai kemampuan untuk mengatur proses scanning pada layar LCD yang terbentuk oleh 16 COM dan 40 SEG sehingga mikrokontroler /perangkat yang mengakses modul LCD ini tidak perlu lagi mengatur proses scanning pada layar LCD. Mikrokontroler atau perangkat tersebut hanya mengirimkan data-data yang merupakan karakter yang akan ditampilkan pada LCD atau perintah yang mengatur proses tampilan pada LCD saja.
Universitas Sumatera Utara
2.10.1. Struktur Memori LCD
Modul LCD M1632 memiliki beberapa jenis memori yang digunakan untuk menyimpan atau memproses data-data yang akan ditampilkan pada layar LCD. Setiap jenis memori mempunyai fungsi-fungsi tersendiri.
a. DDRAM DDRAM merupakan memori tempat karakter yang ditampilkan berada. Contohnya, karakter “A” atau 41h yang ditulis pada alamat 00 akan tampil pada baris pertama dan kolom pertama dari LCD. Apabila karakter tersebut ditulis di alamat 40h, karakter tersebut akan tampil pada baris kedua kolom pertama dari LCD.
b. CGRAM CGRAM adalah memori untuk menggambarkan pola sebuah karakter dan bentuk karakter dapat diubah-ubah sesuai keinginan. Akan tetapi isi memori akan hilang saat power supplay tidak aktif sehingga pola karakter akan hilang.
c. CGROM CGROM adalah memori untuk menggambarkan pola sebuah karakter dan pola tersebut sudah ditentukan secara permanen dari HD44780 sehingga pengguna tidak dapat mengubah lagi. Oleh karena ROM bersifat permanen, pola karakter tersebut tidak akan hilang walaupun power supplay tidak aktif.
Universitas Sumatera Utara