Anda di halaman 1dari 25

BAB 2

DASAR TEORI

2.1 LDR (Light Dependent Resistor)

LDR merupakan suatu sensor yang apabila terkena cahaya maka tahanannya akan

berubah. Biasanya LDR dibuat berdasarkan kenyataan bahwa film cadmium sulfide

mempunyai tahanan yang besar kalau tidak terkena cahaya dan tahanannya akan

menurun kalau permukaan film itu terkena cahaya.

Gambar 2.1 LDR (Light Dependent Resistor)

Universitas Sumatera Utara


Fotoresistor adalah komponen elektronika yang resistansinya akan menurun

jika ada perubahan intensitas cahaya yang mengenainya

Fotoresistor dibuat dari semikonduktor beresistansi tinggi. Jika cahaya/foton dengan

frekuensi yang cukup tinggi diserap oleh semikonduktor menyebabkan elektron

dengan energi yang cukup untuk meloncat kepita konduksi. Elektron bebas yang

dihasilkan akan mengalirkan listrik, sehingga menurunkan resistansinya. Besar

tahanan LDR/fotoresistor dalam kegelapan mencapai jutaan Ohm dan turun sampai

beberapa ratus Ohm dalam keadaan terang. LDR dapat digunakan dalam suatu

jaringan kerja pembagi potensial yang menyebabkan terjadinya perubahan tegangan

kalau sinar yang datang berubah.

2.2 Mikrokontroler ATMEGA8535

2.2.1 Gambaran Umum

Mikrokontroler adalah suatu keping IC dimana terdapat mikroprosesor dan memori

program (ROM) serta memori serbaguna (RAM). Tidak seperti sistem komputer,

yang mampu menangani berbagai macam program aplikasi (misalnya pengolahan

kata, pengolahan angka, dan sebagainya), mikrokontroler hanya bisa digunakan untuk

satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan

ROM-nya. Pada sistem perbandingan RAM dan ROM-nya besar, artinya program-

program pengguna 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 berbeda artinya

program kontrol disimpan di ROM yang ukurannya relatif lebih besar, sedangkan

Universitas Sumatera Utara


RAM digunakan sebagai tempat penyimpanan sederhana sementara, termasuk

register-register 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 elekronika canggih. Alat-alat canggih pun 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 sebagaian 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 seriMCS51

berteknologi CISC (Complex Instruction Set Computing). Secara umum AVR dapat

dikelompokkan menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga

ATmega, dan AT86RFxx.

2.2.2 Konstruksi ATMEGA8535

Sistem minimum mikrokontroler adalah rangkaian elektronika minimum yang

diperlukan untuk beroperasinya IC mikrokontroler. Sistem minimum ini kemudian

bisa dihubungkan dengan rangkaian lain untuk menjalankan fungsi tertentu. Di

Universitas Sumatera Utara


keluarga mikrokontroler AVR, seri 8535 merupakan seri yang sangat banyak

digunakan.

Untuk membuat rangkaian sistem Atmel AVR 8535 diperlukan beberapa

komponen yaitu:

a. IC mikrokontroler ATmega8535

b. Satu XTAL 16 Mhz

c. Tiga kapasitor kertas yaitu 30 pF (C2 dan C3) serta 100 F (C4)

d. Dua resistor yaitu 100 ohm (R1) dan 10K ohm (R3)

Selain itu tentunya diperlukan power supplay yang bisa memberikan tegangan 5V DC.

Rangkaian sistem minimum ini sudah siap untuk menerima sinyal analog (fasilitas

ADC) di port A.

Mikrokontroler AVR sudah menggunakan konsep arsitektur Haevard yang

memisahkan memori dan bus untuk data dan program, serta sudah menerapkan single

level pipelining. Selain itu mikrokontroler AVR juga mengimplementasikan RISC

(Reduced Instruction Set Computing) sehingga eksekusi instruksi dapat berlangsung

dengan cepat dan efisien.

ATmega8535 banyak digunakan untuk sistem yang kompleks, memiliki input

sinyal analog, dan membutuhkan memori yang relatif lebih besar. Berikut ini adalah

feature-feature mikrokontroler seri ATmega8535

a. Memori Flash 8 Kbytes untuk program

b. Memori EEPROM 512 bytes untuk data

c. Memori SRAM 512 bytes untuk data

Universitas Sumatera Utara


d. Maksimal 32 pin I/O

e. Memilki 20 interrupt

f. Satu 16-bit timer dan dua 8-bit timer

g. Memiliki 8 channel ADC 10 bit

h. Komunikasi serial melalui SPI dan USART

i. Analog komputer

j. Terdapat 4 I/O PWM

k. Fasilitas In Sistem Programming (ISP)

Gambar 2.2 Peta Memori ATMEGA8535 (AVR)

IC mikrokontroler dikemas dalam bentuk yang berbeda. Namun pada dasarnya fungsi

kaki yang ada pada IC memiliki persamaan. Gambar salah satu bentuk IC seri

mikrokontroler AVR ATmega8535 dapat kita lihat sebagai berikut:

Universitas Sumatera Utara


Gambar 2.3 IC Mikrokontroler ATmega8535 (AVR)

2.2.3 Fungsi Pin-pin pada Mikrokontroler AVR

Konfigurasi pin ATmega8535 dapat dilihat pada gambar 2.3. secara fungsional

konfigurasi pin ATmega8535 sebagai berikut:

a. Port A

Merupakan 8-bit directional port I/O. setiap pinnya dapat menyediakan internal

pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20

mA dan dapat mengendalikan display LED secara langsung. Data Direction

Register Port A (DDRA) harus disetting terlebih dahulu sebelum Port A

digunakan. Bit-bit DDRA diisi 0 jika memfungsikan pin-pin Port A yang

bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan

pin Port A juga digunakan untuk masukan sinyal analog bagi A/D converter.

b. Port B

Merupakan 8-bit directional port I/O. setiap pinnya dapat menyediakan internal

pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20

Universitas Sumatera Utara


mA dan dapat mengendalikan display LED secara langsung. Data Direction

Register Port B (DDRB) harus disetting terlebih dahulu sebelum Port B

digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin Port B yang

bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin Port B memiliki

fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.

Port Pin Fungsi Khusus

PB0 T0 = timer/counter 0 external counter input

PB1 T1 =timer/counter 0 exterrnal counter input

PB2 AIN0 =analog comparator positive input

PB3 AIN1 =analog comparator negative input

PB4 SS =SPI slave select input

PB5 MOSI = SPI bus master output/slave input

PB6 MISO = SPI bus master input/slave output

PB7 SCK = SPI bus serial clock

Tabel 2.1 Port B

c. Port C

Merupakan 8-bit directional port I/O. setiap pinnya dapat menyediakan internal

pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20

mA dan dapat mengendalikan display LED secara langsung. Data Direction

Register Port C (DDRC) harus disetting terlebih dahulu sebelum Port C

digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin Port C yang

bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin

Universitas Sumatera Utara


Port C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscillator untuk

timer/counter 2.

d. Port D

Merupakan 8-bit directional port I/O. setiap pinnya dapat menyediakan internal

pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20

mA dan dapat mengendalikan display LED secara langsung. Data direction

Register Port D (DDRD) harus disetting terlebih dahulu sebelum Port D

digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin Port D yang

bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin Port

D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat

dalam tabel berikut.

Port Pin Fungsi Khusus

PD0 RDX (UART input line)

PD1 TDX (UART output line)

PD2 INT0(external interrupt 0 input)

PD3 INT1(external interrupt 1 input)

PD4 OC1B (Timer/Counter1 output compareB match output)

PD5 OC1A (Timer/Counter1 output compareA match output)

PD6 ICP (Timer/Counter1 input capture oin)

PD7 OC2 (Timer/Counter2 ouput compare match ouput)

Tabel 2.2 Port D

Universitas Sumatera Utara


e. RESET

RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low

selama minimal 2 machine cycle maka sistem akan di-reset.

f. XTAL1

XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal

clock operating circuit.

g. XTAL2

XTAL2 adalah output dari inverting oscillator amplifier.

h. AVcc

Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara

eksternal terhubung ke Vcc melalui lowpass filter.

i. AREF

AREF adalah kaki masukan referensi bagi A/D converter. Untuk operasionalisasi

ADC, suatu level tegangan antara AGND dan Avcc harus diberikan ke kaki ini.

j. AGND

AGND adalah kaki untuk analog ground. Hubungan kaki ini ke GND, kecuali jika

board memilki analog ground yang terpisah.

2.3 LCD (Liquid Crystal Display)

Kegunaan LCD banyak sekali dalam perancangan suatu sistem dengan menggunakan

mikrokontroler. LCD (Liquid Crysral Display) dapat berfungsi untuk menampilkan

suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi

mikrokontroler. LCD display modul M1632 (2x16) terdiri dari dua bagian, yang

Universitas Sumatera Utara


pertama merupakan panel LCD sebagai media penampil informasi dalam bentuk

huruf/ angka dua baris, masing-masing baris bisa menampung 16 huruf/ angka.

Didalam modul M1632 sudah tersedia HD44780 yang dikeluarkan oleh

Hitachi, Hyundai dan modul-modul M1632 lainnya. HD44780 sebetulnya merupakan

mikrokontroler 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.

2.3.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 di

alamat 40h, karakter tersebut akan tampil pada baris kedua kolom pertama dari

LCD.

Universitas Sumatera Utara


b. CGRAM

CGRAM merupakan 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 ditentukan secara pemanen dari HD44780 sehingga pengguna tidak

dapat mengubah lagi. Oleh karena ROM bersifat permanen, pola karakter

tersebut tidak akan hilang walaupun power supplay tidak aktif.

2.4 Voltage Devider

Dua resistor pembagi tegangan sering digunakan untuk memasok tegangan berbeda

dari baterai yang tersedia atau catu daya. Dalam aplikasi tegangan output tergantung

pada resistansi beban tersebut mendorong.

Gambar 2.4 Output Voltage

Universitas Sumatera Utara


2.4.1 Relay

Relay adalah komponen elektronika berupa saklar elektronika yang digerakkan oleh

arus listrik. Secara prinsip, relay merupakan tuas saklar dengan lilitan kawat pada

batang besi (solenoid) di dekatnya. Ketika solenoid dialiri arus listrik, tuas akan

tertarik kerena adanya gaya magnet yang terjadi pada solenoid sehingga kontak saklar

akan menutup. Pada saat arus dihentikan, gaya magnet akan hilang, tuas akan kembali

ke posisi semula dan kontak saklar kembali terbuka. Relay biasanya digunakan untuk

menggerakkan arus/tegangan yang besar (misalnya peralatan listrik 4 ampere AC

220V) dengan memakai arus/tegangan yang kecil (misalnya 0.1 ampere 12 Volt DC).

Dalam pemakaiannya biasanya relay yang digunakan dengan arus DC dilengkapi

dengan dioda yang di-paralel dengan lilitannya dan dipasang terbalik yaitu anoda pada

tegangan (-) dan katoda pada tegangan (+). Ini bertujuan untuk mengantisipasi

sentakan listrik yang terjadi pada saat relay berganti posisi dari on ke off agar tidak

merusak komponen di sekitarnya.

Gambar 2.5 Bentuk Relay

Universitas Sumatera Utara


Penggunaan relay perlu memperhatikan tegangan pengontrolannya serta

kekuatan relay men-switch arus/tegangan. Biasanya ukurannya tertera pada body

relay. Misalnya relay 12VDC/4 A 220V, artinya tegangan yang diperlukan sebagai

pengontrolnya adalah 12 Volt DC dan mampu men-switch arus listrik (maksimal)

sebesar 4 ampere pada tegangan 220 Volt. Sebaliknya relay difungsikan 80% saja dari

kemampuan maksimalnya agar aman, lebih rendah lagi nama Relay jenis lain ada

yang namanya reedswitch atau relay lidi. Relay jenis ini berupa batang kontak terbuat

dari besi pada lubang kaca kecil yang dililiti dengan kawat. Pada saat lilitan kawat

dialiri arus, kontak besi tersebut akan menjadi magnet dan saling menempel sehingga

menjadi saklar yang on. Ketika arus pada lilitan dihentikan medan magnet hilang dan

kontak kembali terbuka (off).

2.4.2 Transistor

Transistor adalah komponen elektronika yang mempunyai tiga buah terminal.

Terminal itu disebut emitor, basis, dan kolektor. Transistor seakan-akan dibentuk dari

penggabungan dua buah dioda. Dioda satu dengan yang lain saling digabungkan

dengan cara menyambungkan salah satu sisi dioda yang senama. Dengan cara

penggabungan seperti dapat diperoleh dua buah dioda sehingga menghasilkan NPN.

Bahan yang digunakan untuk menghasilkan bahan N dan bahan P adalah

silikon dan germanium. Oleh karena itu, dikatakan :

1. Transistor germanium PNP

2. Transistor silikon NPN

3. Transistor silikon PNP

Universitas Sumatera Utara


4. Transistor germanium NPN

Semua komponen di dalam rangkaian transistor dengan simbol. Anak panah terdapat

di dalam simbol menunjukkan arah yang melalui transistor.

C C

B
B

E E

NPN PNP

Gambar 2.6 Simbol Tipe Transistor

Keterangan :

C = kolektor

E = emitter

B = basis

Didalam pemakaiannya, transistor dipakai sebagai komponen saklar

(switching) dengan memanfaatkan daerah penjenuhan (saturasi) dan daerah

penyumbatan (cut off) yang ada pada karakteristik transistor.

Pada daerah penjenuhan nilai resistansi persambungan kolektor emitter secara ideal

sama dengan nol atau kolektor dan emitter terhubung langsung (short). Keadaan ini

menyebabkan tegangan kolektor emiter (V CE ) = 0 Volt pada keadaan ideal, tetapi

kenyataannya V CE bernilai 0 sampai 0,3 Volt. Dengan menganalogikan transistor

sebagai saklar, transistor tersebut dalam keadaan on seperti gambar 2.7

Universitas Sumatera Utara


Vcc Vcc

IC R

RB
Saklar On
VCE
VB
IB VBE

Gambar 2.7 Transistor Saklar ON

Pada daerah penyumbatan, nilai resistansi persambungan kolektor emitter secara ideal

sama dengan tak terhitung atau terminal kolektor dan emitter terbuka (open). Keadaan

ini menyebabkan tegangan (V CB ) sama dengan tegangan seumber (V CC ). Tetapi pada

kenyataannya V CC pada saat ini kurang dari V CC karena terdapat arus bocor dari

kolektor ke emitter. Dengan menganalogikan transistor sebagai saklar, transistor

tersebut dalam keadaan off seperti gambar di bawah ini.

Vcc Vcc

IC R

RB
Saklar Off
VCE
VB
IB VBE

Gambar 2.8 Transistor Sebagai Saklar OFF

2.5 Perangkat Lunak

2.5.1 Bahasa BASIC Menggunakan BASCOM AVR

BASCOM AVR adalah program, BASIC compiler berbasis Windows untuk

mikrokontroler keluarga AVR seperti ATMega8535, dan yang lainnya.

BASCOM AVR merupakan pemograman dengan bahasa tingkat tinggi BASIC yang

dikembangkan dan dikeluarkan oleh MCS Elektronika.

Universitas Sumatera Utara


2.5.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 di bawah ini)

karakter Nama

Blank

Apostrophe

* Asterisk (symbol perkalian)

+ Plus sign

, Comma

- Minus sign

. Period (decimal point)

/ Slash (division symbol) will be handled as\

: Colon

Double quotation mark

; Semicolon

< Less than

= Equal sign (assignment symbol or relational operator)

> Greater than

\ Backspace (integer or word division symbol)

Tabel 2.3 Karakter Spesial BASCOM

Universitas Sumatera Utara


2.5.1.2 Tipe Data

Setiap variabel dalam BASCOM memilki tipe data yang menunjukkan daya

tampungnya. Hal ini berhubungan dengan penggunaan memori mikrokontroler.

Berikut adalah tipe data pada BASCOM berikut keterangannya.

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 -

Tabel 2.4 Tipe data BASCOM

2.5.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.

Universitas Sumatera Utara


Dalam BASCOM, ada beberapa aturan dalam penamanaan sebuah variabel:

a. Nama variabel maksimum terdiri atas 32 karakter.

b. Karakter bisa berupa angka atau huruf.

c. Nama variable harus dimulai dengan huruf.

d. Variabel tidak boleh menggunkan 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

2.5.1.4 Alias

Dengan menggunakan alias, variabel yang sama dapat diberikan nama yang lain.

Tujuannya adalah mempermudah proses pemograman. Umumnya, alias digunakan

untuk mengganti nama variabel yang telah baku, seperti port mikrokontroler.

Universitas Sumatera Utara


LEDBAR alias P1

Tombol1 alias P0.1

Tombol2 alias P0.2

Dalam deklarasi seperti diatas, variabel yang sama dapat diberikan nama yang

lain. Tujuannya adalah mempermudah proses pemrograman. Umumnya, alias

digunakan untuk mengganti nama variabel yang baku, seperi port mikrokontroler.

Dim LedBar as byte

Led1 as LedBar.0

Led2 as LedBar.1

Led3 as LedBar.2

2.5.1.5 Konstanta

Dalam BASCOM, selain variabel kita mengenal pula konstanta. Konstanta merupakan

variabel pula, perbedaannya dengan variabel adalah nilai yang terkandung tetap.

Dengan konstanta, kode program yang kita buat akan lebih mudah dibaca dan dapat

mencegah kesalahan penulisan pada program kita. Misalnya, kita akan lebih mudah

menulis phi dari pada menulis 3,14159867. Sama seprti variabel, agar konstanta bisa

dikenal oleh program, maka harus dideklarasikan terlebih dahulu. Berikut adalah cara

pendeklarasikan sebuah konstanta.

Dim A As Const 5

Dim B1 As Const &B1001

Cara lain yang paling mudah:

Const Cbyte = &HF

Universitas Sumatera Utara


Const Cint = -1000

Const Csingle = 1.1

Const Cstring = test

2.5.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 maksimal sebuah indeks sebesar 65535.

Proses pendeklarasikan sebuah array hampir sama dengan variabel, namun

perbedaannya kita mengikuti jumlah elemennya. Berikut adalah contoh pemakaian

array:

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.

Universitas Sumatera Utara


2.6 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 aritmatika meliputi + (tambah), -

(kurang), / (bagi), dan * (kali).

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:

Operator Relasi Pernyataan

= Sama dengan X=Y

<> Tidak sama dengan X <> Y

< Lebih kecil dari X<Y

> Lebih besar dari X>Y

<= Lebih kecil atau sama dengan X <= Y

>= Lebih besar atau sama dengan X >= Y

Tabel 2.5 Tabel Operator Relasi

Universitas Sumatera Utara


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 biasa pula digunakan untuk menguji sebuah byte dengan pola bit

tertentu, sebagai contoh:

Dim A As Byte

A = 63 And 19

PPRINT A

A = 10 or 9

PRTINT A

Output

16

11

d. Operasr Fungsi

Operator fungsi digunakan untuk melengkapi operator yang sederhana.

2.7 Aplikasi BASCOM Dengan LCD

Salah satu kelebihan yang dimiliki oleh BASCOM adalah programnya yang

menyediakan rutin-rutin khusus untuk menampilkan karakter menggunakan LCD.

Bahkan kita pun dapat membuat karakter special dengan fasilitas LCD designer.

Universitas Sumatera Utara


Antarmuka antara LCD dengan AT89S52 menggunakan mode antaramuka 4

bit. Selain lebih hemat I/O, mode demikian mempermudah proses pembuatan PCB-

nya. Program berikut akan menjalankan beberapa perintah berkenaan dengan LCD

$regfile = m8535.dat

$crystal = 4000000

dim x as byte

config LCD = 16*2

Cursor off

do

X = 100

Cls

Lcd namaku Satih

Lowerline

Lcd Nilaiku selalu; x

Wait 1

Cls

Lcd <<<< Hebat >>>>

For x=1 to 16

Shiftlcd left

next

For x=1 to 32

Shiftlcd right

Waitms 200

next

x = 100

cls

lcd hex x

Universitas Sumatera Utara


loop

penjelasan programnya sebagai berikut:

a. Dim x As Byte

Pernyataan di atas merupakan pendeklarasian variabel c/x dengan ukuran byte.

b. Config LCD = 16 * 2

Oleh karena itu konfigurasi pendeklarasikannya delisting program yang kita

buat seperti dikontrolkan diatas.

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 2x16, maka LCD memilih 2 baris dan kolom.

e. X = 100

Lcd namaku Satih

Lowerline

Lcd Nilaiku selalu; x

Ketika kita menjalankan perintah di atas, maka keluarannya adalah:

Namaku Satih

Nilaiku selalu 100

Contohnya di atas menunjukkan bahwa kita dapat menampilkan isi sebuah

variabael menggunakan LCD hanya dengan menulis.

f. Shift LCD left/right

Perintah digunakan untuk menggeser tampilan LCD ke kiri atau ke kanan

sebanyak 1 langkah. Perintah berguna untuk menampilkan kalimat yang

panjang dan membuat animasi LCD.

Universitas Sumatera Utara


g. Lcdhex x

Perintah berfungsi mengirim isi sebuah variabael LCD dalam format

hexadesimal. Jika ingin menjalankan program, maka hasilnya 64.

Universitas Sumatera Utara

Anda mungkin juga menyukai