Prototipe Robot Pemadam Api Terkendali

BAB 2

TINJAUAN PUSTAKA

2.1. Perangkat Keras
2.1.1. Mikrokontroler AT89S51

Mikrokontroler sebagai suatu terobosan teknologi mikrokontroler dan
mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.
Sebagai teknologi baru, yaitu teknologi semikonduktor 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 mikroprosesor). Sebagai kebetuhan pasar, mikrokontroler hadir untuk
memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat
bantu dan mainan yang lebih canggih.
Ilustrasi yang mungkin bisa memberikan gambaran yang jelas dalam
penggunaan mikrokontroler adalah aplikasi mesin tiket dalam arena permainan yang
saat ini terkenal di Indonesia. Jika kita sudah selesai bermain, maka akan diberikan
suatu nilai, nilai inilah yang menentukan berapa jumlah tiket yang bisa diperoleh dan
jika dikumpulkan dapat ditukar dengan berbagai macam hadiah. Sistem tiket ini
ditangani dengan mikrokontroler, karena tidak mungkin menggunakan komputer PC

yang harus dipasang di samping (atau di belakang) mesin permainan yang
bersangkutan.
Selain sistem tiket, kita juga dapat menjumpai aplikasi mikrokontroler dalam
bidang pengukuran jarak jauh atau yang dikenal dengan sistem telemetri. Misalnya
pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman
jika dipasang suatu sistem pengukuran yang bisa mengirimkan data lewat pemancar
dan diterima oleh stasiun pengamatan dari jarak yang cukup aman dari sumbernya.
Sistem pengukuran jarak jauh ini jelas membutuhkan suatu sistem akuisisi data
sekaligus sistem pengiriman data secara serial (melalui pemancar), yang semuanya itu
bisa diperoleh dari mikrokontroler yang digunakan.

Universitas Sumatera Utara

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 RAM
dan ROM-nya besar. Sedangkan pada mikrokontroler ROM dan RAM-nya terbatas.
Pada mikrokontroler AT89S51 ROM atau flash PEROM berukuran 2 kilo byte,
sedangkan RAM-nya berukuran 128 byte.


2.1.2. Kontruksi AT89S51

Mikrokontrol AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor
dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 10 kilo
ohm dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini
AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan
frekuensi maksimum 24 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi
rangkaian

oscilator

pembentuk

clock

yang

menentukan


kecepatan

kerja

mikrokontroler.
Memori merupakan bagian yang sangat penting pada mikrokontroler.
Mikrokontroler memiliki dua macam memori yang sifatnya berbeda.
Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu
daya. Sesuai dangan keperluannya, dalam susunan MCS-51 memori penyimpanan
progam ini dinamakan sebagai memori progam.
Random Access Memori (RAM) isinya akan sirna begitu IC kehilangan catu
daya, dipakai untuk menyimpan data pada saat progam bekerja. RAM yang dipakai
untuk menyimpan data ini disebut sebagai memori data.
Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah
baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC
mikrokontroler dicetak di pabrik IC.

Untuk keperluan tertentu mikrokontroler

mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang

disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra
Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan
setelah ada flash PEROM yang harganya jauh lebih murah.

Universitas Sumatera Utara

Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash
PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat
bantuan alat yang dinamakan sebagai AT89S51 Flash PEROM Programmer.
Memori Data yang disediakan dalam chip AT89S51 sebesar 128 byte,
meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah
cukup.
Sarana Input/Ouput yang disediakan cukup banyak dan bervariasi. AT89S51
mempunyai 32 jalur Input/Ouput. Jalur Input/Ouput paralel dikenal sebagai Port 1
(P1.0..P1.7) dan Port 3 (P3.0..P3.5 dan P3.7).
AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmiter)
yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri
(RXD dan TXD) diletakan berhimpitan dengan P3.0 dan P3.1 di kaki nomor 10 dan
11, sehingga kalau sarana input/ouput yang bekerja menurut fungsi waktu. Clock
penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang

diumpan dari luar lewat T0 dan T1. T0 dan T1 berhimpitan dengan P3.4 dan P3.5,
sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/ouput parelel kalau T0 dan
T1 dipakai.
AT89S51 mempunyai enam sumber pembangkit interupsi, dua diantaranya
adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini
berhimpitan dengan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur
input/output parelel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi.
Port1 dan 2, UART, Timer 0,Timer 1 dan sarana lainnya merupakan register
yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Functoin
Regeister (SFR).

2.1.3. SFR (Register Fungsi Khusus ) Pada Keluarga 51

Sekumpulan SFR atau Special Function Register yang terdapat pada
Mikrokontroler Atmel Keluarga 51 ditunjukan pada tabel 2.1, pada bagian sisi kiri dan
kanan dituliskan alamat-alamatnya dalam format heksadesimal.
Tidak semua alamat pada SFR digunakan, alamat-alamat yang tidak digunakan
diimplementasikan pada chip. Jika dilakukan usaha pembacaan pada alamat-alamat
yang tidak terpakai tersebut akan menghasilkan data acak dan penulisannya tidak


Universitas Sumatera Utara

menimbulkan efek sama sekali. Pengguna perangkat lunak sebaiknya jangan
menuliskan ‘1’ pada lokasi-lokasi ‘tak bertuan’ tersebut, karena dapat digunakan
untuk mikrokontroler generasi selanjutnya. Dengan demikian, nilai-nilai reset atau
non-aktif dari bit-bit baru ini akan selalu ‘0’ dan nilai aktifnya adalah ‘1’. Berikut
akan dijelaskan secara singkat SFR-SFR beserta fungsinya:
Tabel 2.1. Peta Register Fungsi Khusus – SFR (Special Function Register)

Akumulator
ACC atau akumulator yang menempati lokasi E 0h digunakan sebagai register untuk
penyimpanan data sementara, dalam program, instruksi mengacunya sebagai register
A (bukan ACC).

Register B
Register B (lokasi D 0h) digunakan selama operasi perkalian dan pembagian, untuk
instruksi lain dapat diperlakukan sebagai register scratch pad (“papan coret-coret”)
lainnya.

Program Status Word (PSW)

Register PSW (lokasi D 0h) mengandung informasi status program.

Universitas Sumatera Utara

Stack Pointer
Register SP atau Stack Pointer (lokasi 8 1h) merupakan register dengan panjang 8-bit,
digunakan dalam proses simpan menggunakan instruksi PUSH dan CALL. Walau
Stack bisa menempati lokasi dimana saja dalam RAM, register SP akan selalu
diinisialisasi ke 07h setelah adanya reset, hal ini menyebabkan stack berawal di lokasi
08h.

Data Pointer
Register Data Pointer atau DPTR mengandung DPTR untuk byte tinggi (DPH) dan
byte rendah (DPL) yang masing-masing berada dilokasi 83h dan 82h, bersama-sama
membentuk register yang mampu menyimpan alamat 16-bit. Dapat dimanipulasi
sebagai register 16-bit atau ditulis dari/ke port, untuk masing-masing Port 0,Port 1,
Port2 dan Port 3.

Serial Data Buffer
SBUF atau Serial Data Buffer (lokasi 99h) sebenarnya terdiri dari dua register yang

terpisah, yaitu register penyangga pengirim (transmit buffer) dan penyangga penerima
(receive buffer). Pada saat data disalin ke SBUF, maka data sesungguhnya dikirim ke
penyangga pengirim dan sekaligus mengawali transmisi data serial. Sedangkan pada
saat data disalin dari SBUF, maka sebenarnya data tersebut berasal dari penyangga
penerima.

Time Register
Pasangan register (TH0, TL0) dilokasi 8Ch dan 8Ah,(TH1, TL1) dilokasi 8Dh dan
8Bh serta (TH2, TL2) dilokasi CDh dan CCH merupakan register-register pencacah
16-bit untuk masing-masing Timer 0, Timer 1 dan Timer 2.

Capture Register
Pasangan register (RCAP2H, RCAP21) yang menempati lokasi CBh dan CAh
merupakan register capture untuk mode Timer 2 capture. Pada mode ini, sebagai
tanggapan terjadinya suatu transisi sinyal di kaki (pin) T2EX (pada AT89C52/55),
TH2 dan TL2 disalin masing-masing ke RCAP2H dan RCAP2L. Timer 2 juga

Universitas Sumatera Utara

memiliki mode isi-ulang-otomatis 16-bit dan RCAP2H serta RCAP2L digunakan

untuk menyimpan nilai isi-ulang tersebut.

Kontrol Register
Register-register IP, IE, TMOD, TCON, T2CON, T2MOD, SCON dan PCON berisi
bit-bit kontrol dan status untuk sistem interupsi, pencacah/pewaktu dan port serial.
Berikut ini merupakan spesifikasi dari IC AT89S51 :


Kompatible dengan produk MCS-51



Empat K byte In-Sistem Reprogammable Flash Memory



Daya tahan 1000 kali baca/tulis




Tegangan kerja 4,0 volt sampai 5,5 volt



Fully Static Operation : 0 Hz sampai 33 MHz



Tiga level kunci memori progam



128 x 8 – bit RAM internal



32 jalur input/output (I/O)




Dua 16 bit Timer/Counter



Enam sumber interupt



Jalur serial dengan UART

2.1.4. Gambar IC Mikrokontroler AT89S51
Gambar IC mikrokontroler AT89S51 ditunjukkan pada gambar 2.1 di bawah ini:

Gambar 2.1 IC Mikrokontroler AT89S51

Universitas Sumatera Utara

Deskripsi pin-pin pada mikrokontroler AT89S51 :
VCC (Pin 40)
Suplai tegangan
GND (Pin 20)
Ground
Port 0 (Pin 39 – pin 32)
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun
penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini
dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai
input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order
multiplex address/data, port ini akan mempunyai internal pull up. Pada saat flash
progamming diperlukan eksternal pull up, terutama pada saat verifikasi program.
Port 2 (Pin 21 – pin 28)
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakse
memori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan
isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi
sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat memberikan
output sink ke keempat buah input TTL.
Port 3 (Pin 10 – pin 17)
Port 3 merupakan 8 bit port I/O dua arah dengan internal pull up. Port 3 juga
mempunyai fungsi pin masing-masing, yaitu sebagai berikut :

Tabel 2.2 Fungsi Pin pada Port 3
Nama pin

Fungsi

P3.0 (pin 10)

RXD (Port input serial)

P3.1 (pin 11)

TXD (Port output serial)

P3.2 (pin 12)

INT0 (interrupt 0 eksternal)

P3.3 (pin 13)

INT1 (interrupt 1 eksternal)

P3.4 (pin 14)

T0 (input eksternal timer 0)

P3.5 (pin 15)

T1 (input eksternal timer 1)

P3.6 (pin 16)

WR (menulis untuk eksternal data memori)

P3.7 (pin 17)

RD (untuk membaca eksternal data memori)

Universitas Sumatera Utara

RST (pin 9)
Reset akan aktif dengan memberikan input high selama 2 cycle.
ALE/PROG (pin 30)
Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat
selama mengakses memori eksternal. Selain itu, sebagai pulsa input progam (PROG)
selama memprogram Flash.
PSEN (pin 29)
Program store enable digunakan untuk mengakses memori progam eksternal.
EA (pin 31)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan
menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika
kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada
memori internal. Pada saat flash programming, pin ini akan mendapat tegangan 12
Volt.
XTAL1 (pin 19)
Input untuk clock internal.
XTAL2 (pin 18)
Output dari osilator.

2.2. Perangkat Lunak
2.2.1. Instruksi – Instruksi AT89S51
Beberapa instruksi yang sering digunakan dalam pemrograman IC mikrokontroler
AT89S51 antara lain adalah:

1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register
tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.
Contoh pengisian nilai secara langsung
MOV R0,#20h
Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0).
Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai.
Contoh pengisian nilai secara tidak langsung

Universitas Sumatera Utara

MOV 20h,#80h
...........
............
MOV R0,20h
Perintah di atas

berarti : isikan nilai yang terdapat pada alamat 20

Heksadesimal ke register 0 (R0).
Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah
alamat.

2. Instruksi DJNZ
Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk
mengurangi nilai register tertentu dengan 1 dan lompat jika hasil
pengurangannya belum nol. Contoh ,
MOV R0,#80h
Loop: ...........
............
DJNZ R0,Loop
............
R0 -1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan
meneruskan ke perintah pada baris berikutnya.

3. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :
.............
ACALL TUNDA
.............
TUNDA:
.................

4. Instruksi RET
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin
pemanggil setelah instruksi ACALL dilaksanakan. Contoh,
ACALL TUNDA

Universitas Sumatera Utara

.............
TUNDA:
.................
RET

5. Instruksi JMP

(Jump)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh,
Loop:
.................
..............
JMP Loop

6. Instruksi JB

(Jump if bit)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika high (1). Contoh,
Loop:
JB P1.0,Loop
.................

7. Instruksi JNB

(Jump if Not bit)

Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika Low (0). Contoh,
Loop:
JNB P1.0,Loop
.................

8. Instruksi CJNE

(Compare Jump If Not Equal)

Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register
dengan suatu nilai tertentu. Contoh,
Loop:
................
CJNE R0,#20h,Loop
................

Universitas Sumatera Utara

Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin
Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan
instruksi selanjutnya..

9. Instruksi DEC (Decreament)
Instruksi ini merupakan perintah untuk mengurangi nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h

R0 = 20h

................
DEC R0

R0 = R0 – 1

.............

10. Instruksi INC (Increament)
Instruksi ini merupakan perintah untuk menambahkan nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h

R0 = 20h

................
INC R0

R0 = R0 + 1

.............

2.3. Motor DC

Motor DC adalah suatu mesin yang berfungsi mengubah tenaga listrik arus
searah menjadi tenaga gerak atau energi mekanik, dimana tenaga gerak tersebut
berupa putaran pada rotor. Fungsi motor ini berdasarkan gejala bahwa suatu medan
magnet mengeluarkan gaya pada penghantar berarus. Prinsip kerjanya adalah apabila
sebuah kawat penghantar yang dialiri arus diletakkan antara dua buah kutub magnet,
maka pada kawat itu akan bekerja suatu gaya yang menggerakkan kawat itu (gaya
Lorentz).

Setiap konduktor yang mengalirkan arus mempunyai medan magnet
disekelilingnya. Kuat medan tergantung pada besarnya arus yang mengalir dalam
konduktor tersebut. Pada motor DC, konduktor pengalir arus dililitkan pada alur- alur

Universitas Sumatera Utara

jangkar. Jika jangkar berputar maka dalam lilitan jangkar motor tersebut dibangkitkan
gaya gerak listrik (GGL) yang kemudian diubah menjadi mekanik pada rotor. Arah
putaran motor DC tergantung pada arah medan dan arah aliran arus pada jangkar. Jika
arah medan atau arah aliran arus pada jangkar dibalik, maka putaran motor akan
terbalik.

Konstruksi dari motor DC terbagi atas beberapa bagian antara lain:
1) Stator atau bagian yang diam, terdiri dari:
Rumah stator (gander) sebagai tempat jalan mengalirnya medan magnet yang
dihasilkan oleh kutub- kutub magnet, dan melindungi bagian- bagian mesin
lainnya.
2) Rotor yang berputar, terdiri dari jangkar, lilitan jangkar, komutator, dan sikatsikat.

Motor arus searah jarang digunakan untuk aplikasi industri umum karena semua sitem
utility listrik diperlengkapi dengan perkakas arus bolak- balik. Mekipun demikian,
untuk aplikasi khusus, adalah menguntungkan jika mengubah arus bolak- balik
menjadi arus searah dengan menggunakan motor dc. Motor arus searah digunakan
dimana kontrol torsi dan kecepatan dengan rentang yag lebar diperlukan

untuk

memenuhi kebutuhan aplikasi.

2.4. Relay
Relay adalah suatu rangkaian switch magnetik yang bekerja bila mendapat
catu dan suatu rangkaian trigger. Relay memiliki tegangan dan arus nominal yang
harus dipenuhi output rangkaian pendriver atau pengemudinya. Arus yang digunakan
pada rangkaian adalah arus DC.
Konstruksi dalam suatu relay terdiri dari lilitan kawat (coil) yang dililitkan
pada inti besi lunak. Jika lilitan kawat mendapatkan aliran arus, inti besi lunak kontak
menghasilkan medan magnet dan menarik switch kontak. Switch kontak mengalami
gaya listrik magnet sehingga berpidah posisi ke kutub lain atau terlepas dari kutub
asalnya. Keadaan ini akan bertahan selama arus mengalir pada kumparan relay. Dan
relay akan kembali keposisi semula yaitu normaly ON atau Normaly OFF, bila tidak

Universitas Sumatera Utara

ada lagi arus yang mengalir padanya, posisi normal relay tergantung pada jenis relay
yang digunakan. Dan pemakaian jenis relay tergantung pada kadaan yang diinginkan
dalam suatu rangkaian.
Menurut kerjanya relay dapat dibedakan menjadi :
a. Normaly Open (NO), saklar akan tertutup bila dialiri arus
b. Normaly Close (OFF), saklar akan tertutup bila dialiri arus
c. Change Over (CO), relay ini mempunyai saklar tunggal yang nomalnya tertutup
yang lama, bila kumparan 1 dialiri arus maka saklar akan terhubung ke terminal A,
sebaliknya bula kumparan 2 dialiri arus maka saklar akan terhubung ke terminal
B.
Analogi rangkaian relay yang digunakan pada tugas akhir ini adalah saat basis
transistor ini dialiri arus, maka transistor dalam keadaan tertutup yang dapat
menghubungkan arus dari kolektor ke emiter yang mengakibatkan relay terhubung.
Sedangkan fungsi dioda disini adalah untuk melindungi transistor dari tegangan
induksi berlebih, dimana tegangan ini dapat merusak transistor.
Jika transistor pada basis tidak ada arus maju, transistor terbuka sehingga arus
tidak mengalir dari kolektor ke emiter, relay tidak bekerja karena tidak ada arus yang
mengalir pada gulungan kawat.
Bentuk relay yang digunakan dan bentuk relay dengan rangkaian driver dapat
dilihat pada gambar 2.6.
Vcc
Dioda

VB

a. Simbol

Tr

b. Relay dengan rangkaian driver

Gambar 2.2. Simbol Relay dan Rangkaian Driver

2.5. Port Paralel PC
Komputer XT/AT buatan IBM atau yang kompetibel pada umumnya
menggunakan dua jenis port untuk komunikasi antara komputer dengan dunia luar,

Universitas Sumatera Utara

port tersebut adalah port parallel dan port serial. Di katakan port parallel karena data
yang dikirim tau diterima pada port tersebut dengan sisem paralel (serentak),
sedangkan port serial data yang dikirim maupun yang diterima dengan sistem serial
(bergantian). Kedua sistem tersebut memiliki kekurangan dn kelebihan masing –
masing,pada port parallel data yang ditransmisikan memiliki kecepatan yang tinggi,
namun dibutuhkan satu kabel per bitnya, sehingga transmisi data menjadi mahal.
Sedangkan sistem serial data di transmisikan secara bergantian, sehingga lebih lambat
dri sistem parallel. Namun biaya menjadi lebih murah karena hanya membutuhkan
satu kabel untuk trasnmisi datanya.
Berikut adalah gambar konektor port parallel DB-25 yang banyak digunakan
pada IBM PC XT/AT atau kompatibelnya :

Gambar 2.3 Port Parlel DB 25
Pada komputer tertentu kadang kala port paralelnya berupa connector
centronix, namun fungsinya tetap sama hanya berbeda bentuk.

Gambar 2.4. Port Parlel Centronix
Dibawah ini adalah tabel tentang konfigurasi pin dan nama sinyal konektornya
parallel standart DB-25 serta fungsi – fungsi dari ke dua puluh lima pin tersebut :

Universitas Sumatera Utara

Tabel 2.3. Fungsi-Fungsi PIN Port Paralel
Pin No

Nama Sinyal

Sifat

Register

1

Strobe

Out

Control

Inverted

2

Data 0

In/Out

Data

Ya

3

Data 1

In/Out

Data

4

Data 2

In/Out

Data

5

Data 3

In/Out

Data

6

Data 4

In/Out

Data

7

Data 5

In/Out

Data

8

Data 6

In/Out

Data

9

Data 7

In/Out

Data

10

Acknowledge

In

Status

11

Busy

In

Status

12

Peper Out

In

Status

13

Select

Out

Status

14

Auto Line Feed

Out

Control

15

Error

In

Status

16

Initialize

Out

Control

17

Select In

Out

Control

18-25

Ground

Gnd

Ya

Ya

Ya

Untuk dapat menggunakan port parallel,kita harus mengetahui alamatnya.
Base Address LPT1 biasanya adalah 888 (378h) dan LPT2 biasanya 632
(278h).Alamat tersebut adalah alamat yang umumnya digunakan, tergantung dari jenis
komputer. Tepatnya kita bisa melihat pada peta memori tempat menyimpan alamat

Universitas Sumatera Utara

tersebut, yaitu memori 000.0408h untuk base address LPT1 dan memori 0000.040h
untuk base address LPT2.
Setelah kita mengetahui alamat port parallel, maka kita dapat menentukan
alamat Data Port (CP), dan Status Port (SP).Alamat DP adalah base address dari port
parallel tersebut, alamat SP adalah base address +1, dan alamat CP adalah base
address +2.Base Address +1 adalah alamat untuk status port dan Base Address +2
adalah alamat untuk control port.
Tabel berikut adalah tabel alamat masing – masing port yang umumnya
digunakan yaitu :
Tabel 2.4. Alamat Pada Port-Port Paralel
Nama Port

Alamat Register

LPT1 DP

378h / 888

LPT1 SP

379h / 889

LPT1 CP

37 Ah / 890

2.6. Register-Register Perangkat Lunak
Ketika port pada port pararel, yaitu port data, port status, dan port kontrol,
memiliki register prangkat lunak dan masing masing berukuran 8 bit. Susunan bit-bit
pada register untuk masing masing port dapat dilihat pada tabel dibawah.
Port Data (alamat 0x378):
D7

D6

Data 7 Data 6

D5

D4

D3

D2

D1

D0

Data 5

Data 4

Data 3

Data 2

Data 1

Data 0

S4

S3

-

-

-

Port Satus (alamat 0x379):
~S7

S6

S5

Universitas Sumatera Utara

~Busy Ack

PE

Select

Eror

-

-

-

port Kontrol (alamat 0x37A):
-

-

-

-

~C3
-

~Selet in

C2
Init

~C1
~Auto Feed

~C0
`Strobe

Tabel 2.5. Register Perangkat lunak Pada Port Pararel
Keterangan : Tanda ~ didepan nama sinyal atau bit berarti bahwa sinyal atau bit
yang bersangkutan aktif rendah.
Semua keluaran pada Data Port berlogika sebenarnya. Yaitu , menuliskan
logika 1 ke salah satu bit pada data port menyebabkan logika 1 pada bit yang
bersangkutan. Namun demikian, keluaran-keluaran/SELECT_IN,/AUTO FEED, dan
/STROBE pada Control Port berlogika inversi (kebalikan). Artinya, penulisan logika 1
ke salah satu bit pada Control Port menyebabkan logika 0 pada bit yang bersangkutan.
Untuk bit bit yang menggunakan logika inversi, hal ini harus diperhatikan agar tidak
mengacaukan maksudnya. Untuk itu, bit yang akan dikirimkan tersebut dapat dibalik
dengan cara menggunakan fungsi EX-OR (Exclusive OR) sebelum oprasi penulisan.
Sebagai contoh, jika diinginkan mengeluarkan 1000 pada nibble rendah dan
tidak melakukan inversi, hardwere akan membalik bit 3, membiarkan bit 2 apa
adanya, dan membalik bit 1 dan 0. hasil yang muncul pada keluaran adalah 0011 yang
jauh dari yang diharapkan. Dengan menggunakan fungsi EX-OR, 1000 sebenarnya
dikirimkan ke port sebagai 0011. Hadware kemudian membalik bit 3,1 dan 0 dan
keluaranya adalah 1000 sesuai dengan yang diharapkan.
Pada port printer terdapat lima bit status (BSY, /ACK, PE (paper empty),
SELECT, /ERROR). Sebagai catatan, maksud pemberian nama sinyal ini adalah
sesuai dengan namanya logika tinggi pada SELECT menunjukan bahwa printer dalam
keadaan online. Logika tinggi pada BSY atau PE menunjukan ke PC bahwa printer
dalam keadaan sibuk (busy) atau kehabisan kertas. Logika rendah pada /ACK
menunjukan printer menerima suatu data. Logika rendah pada/ERROR menunjukan
printer dalam kondisi error.

Universitas Sumatera Utara

Semua masukan ini dijemput dengan cara membaca 5-bit tertinggi dan Status
Port. Namun demikian, perancang asli rangkaian antar muka printer membalik sinyal
BSY secara hardware. Artinya, jika logika 0 ada pada masukan BSY, bit sebenarnya
harus dibaca sebagai logika 1.
7
0

6
0

5

4

0

3

BUSY /ACK

2
PE

1

0

SELECT /ERROR

Gambar 2.5 bit status
Sebagai kesimpulan, pada port printer, terdapat minimal 12 keluaran; 8 pada
port dan 4 pada nibble rendah Control Port. Ada 5 masukan pada 5 bit tertinggi Status
Port. Tiga bit keluaran pada control Port dan satu bit masukan pada Status Port dibalik
secara hardware, tetapi hal ini dapat ditangani dengan menggunakan fungsi EX-OR
untuk memiliki bit-bit yang dipilih.

2.7. 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 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.7.1 Memulai Visual Basic
Pada bagian ini akan dijelaskan bagaimana cara menjalankan Visual Basic
pada system operasi windows.Cara pertama yang dapat dilakukan untuk memulai
Microsoft Visual Basic adalah:


Klik tombol start pada Taskbar,kemudian pilih program dari tampilan
menu utama.



Dari tampilan menu yang ada,pilih Visual Basic.

Universitas Sumatera Utara

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

Gambar 2.6. Tampilan awal Visual Basic

Pada kotak dialog tersebut terdapat tiga pilihan tabulasi dengan keterangan
sebagai berikut :
Tabel 2.6. 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.

Gambar 2.7. Tampilan dasar MS-Visual Basic

Universitas Sumatera Utara

2.8. Close Circuit Television
CCTV (Closed Circuit Television) merupakan sebuah perangkat kamera video digital
yang digunakan untuk mengirim sinyal ke layar monitor di suatu ruang atau tempat
tertentu. Hal tersebut memiliki tujuan untuk dapat memantau situasi dan kondisi
tempat tertentu.
Pada umumnya CCTV seringkali digunakan untuk mengawasi area public.
Awalnya gambar dari kamera CCTV hanya dikirim melalui kabel ke sebuah
ruang

monitor

tertentu

dan

dibutuhkan

pengawasan secara langsung oleh

operator/petugas keamanan dengan resolusi gambar yang masih rendah. Namun
seiring dengan perkembanga teknologi yang sangat pesat seperti saat ini, banyak
kamera CCTV yang telah menggunakan sistem teknologi yang modern. Sistem
kamera CCTV digital saat ini dapat dioperasikan maupun dikontrol melalui
Personal Computer atau Telephone genggam, serta dapat dimonitor dari mana
saja dan kapan saja selama ada komunikasi dengan internet maupun akses
GPRS.
Kamera CCTV dapat dibedakan menjadi beberapa type yaitu kamera Fixed
Dome, kamera IP, kamera wireless dan kamera PTZ (Pan/Tilt/zoom). Hal ini
disesuaikan dengan kebutuhan dan anggaran. Jika membutuhkan sebuah kamera
yang perlu diperhatikan adalah mempelajari spesifikasi kamera CCTV. Biasanya
spesifikasi yang diberikan berupa format lensa CCD (Charge Coupled Device)
yang memiliki ukuran tipikal (1/2″, 1/3″dan 1/4″), TV Lines yang berkaitan
dengan resolusi

gambar,

LUX

yang

berkaitan

dengan kesensitifan

kamera

terhadap cahaya, Varifocal lens yang berkaitan dengan pegaturan sudut/jarak
pandang kamera dan bisa diatur secara manual, indoor, outdoor, dan lain-lain.

Universitas Sumatera Utara