TUGAS AKHIR
DEMI SYAPUTRI
052408082
PROGRAM STUDI D3 FISIKA INSTRUMENTASI
DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli Madya
DEMI SYAPUTRI 052408082
PROGRAM STUDI D3 FISIKA INSTRUMENTASI DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : CABLE LAN TESTER DENGAN TAMPILAN LCD Kategori : TUGAS AKHIR
Nama : DEMI SYAPUTRI
Nomor Induk Mahasiswa : 052408082
Program Studi : DIPLOMA TIGA (D3) FISIKA INSTRUMENTASI Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juli 2008
Diketahui
Departemen Fisika FMIPA USU
Ketua Program Studi D3 FIN Pembimbing
Drs. Syahrul Humaidi, MSc. Dra. Justinon, M.Si
ABSTRAK
Perkembangan teknologi komputer semakin pesat sejak ditemukan sistem jaringan
komp-uter sebagai cikal bakal dari jaringan internet. Jaringan kompkomp-uter dibangun dengan
menghubungkan dua atau lebih perangkat komputer sehingga komputer-komputer
tersebut dapat saling berkomunikasi.
Dalam membangun jaringan komputer tidak terlepas dengan media yang
digunakan. Media yang paling dasar untuk membangun sistem jaringan komputer adalah
kabel (on wired network). Walaupun sekarang sudah ditemukan sistem jaringan komputer
adalah tanpa kabel (wireless), tetapi sistem jaringan dengan menggunakan kabel masih
banyak digunakan dan mempunyai kelebihan-kelebihan yang tidak dimiliki oleh
perangkat wireless.
Agar dapat diketahui bahwa koneksi atau hubungan jaringan komputer
berlangsung dengan baik, maka dibutuhkan suatu alat uji yang dapat mengetahui bahwa
pemasangan konektor kabel jaringan atau kabel UTP (Unshielded Twister Pair) telah
dilakukan dengan benar. Oleh karena masalah di atas, maka penulis merancang suatu alat
uji kabel LAN (Local Area Network) yang dapat mengetahui bahwa kabel dan konektor
yang dipasang dalam kondisi baik.
Alat Uji Kabel LAN ini mempunyai beberapa keuntungan bahwa kondisi
sambungan kabel LAN dan konektornya dapat diketahui dengan cepat dan akurat. Hal ini
disebabkan karena alat ini dapat menampilkan hasil pengukuran pada tampilan LCD
(Liquid Crystal Display). Jika terjadi kesalahan pemasangan dapat segera diperbaiki dan
mengurangi resiko kerusakan perangkat yang lain jika kabel yang salah langsung
dipasang pada jaringan komputer.
PERNYATAAN
CABLE LAN TESTER DENGAN TAMPILAN LCD
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing – masing disebutkan sumbernya.
Medan, Juli 2008
DAFTAR ISI
Halaman
Persetujuan
ii
Pernyataan
iii
Penghargaan
iv
Abstrak
v
Daftar isi
vi
Daftar tabel
ix
Daftar gambar
x
Bab 1 Pendahuluan
1.1
Latar Belakang
1
1.2
Batasan Masalah
1
1.3
Tujuan Tugas Akhir
2
1.4
Metode Pengumpulan Data
2
1.5
Sistematika Penulisan
3
Bab 2 Dasar Teori
2.1 Umum
4
2.2 Sistem Jaringan Komputer
4
2.2.1 Local Area Network (LAN) Tanpa Kabel
5
2.2.2 Keuntungan Menggunakan LAN
6
2.3 Mikrokontroler AT89S5
7
2.3.1 Arsitektur Mikrokontroler AT89S51
7
2.3.2 Memori Data
12
2.3.3 Central Processing Unit (CPU)
13
2.3.4 Bus Alamat
13
2.3.5 Bus Data
13
2.3.6 Bus Kontrol
13
2.3.7 Memori
14
2.3.8 Random Acces Memory (RAM)
14
2.3.9 Read Only Memory (ROM)
14
2.3.10 Perangkat Lunak Mikrokontroler AT89S51
15
2.3.10.1 Simbol Assembler Khusus
16
2.3.10.2 Sistem Pengalamatan
16
2.3.10.3 Instruksi Aritmatika
19
2.3.10.4 Instruksi Percabangan (Branch)
20
2.3.10.5 Instruksi Transfer Data
22
2.3.10.6 Instruksi Aritmatika (Instruksi Perhitungan)
22
2.3.10.7 Instruksi Logika
23
2.4 Special Function Register (SFR)
23
2.4.1 Accumulator
24
2.4.2 Register B
24
2.4.3 Register Port
24
2.4.4 Register Timer
24
2.4.5. Register Control
24
2.5
Flash PEROM
25
2.6 Timer/Counter
26
2.6.1 Timer Mode Register (TMOD)
26
2.6.2 THx dan TLx
27
2.6.3 Timer Control Register (TCON)
27
2.7 Interupsi
29
2.8 Kabel UTP (Kabel LAN)
29
2.8.1 Kabel UTP
29
2.8.2 Kabel Straight
30
2.8.3 Kabel Crossover
31
2.9 Karakter LCD 16 x 2
32
Bab 3 Pembuatan Sistem Rangkaian
3.1 Umum
39
3.2 Blok Diagram
39
3.3 Spesifikasi Sistem
41
3.4 Pembuatan PCB
41
3.5 Sistem Mikrokontroler
42
3.6 Rangkaian Switch Start
43
3.7 Rangkaian Display
44
3.8 Rangakaian Catu Daya
44
3.9 Perangkat Lunak
45
3.9.1 Algoritma Program
46
3.9.2 Diagram Alir (Flowchart)
47
3.10 Bahasa Assembler
48
Bab 4 Analisa dan Pengukuran
4.1 Umum
49
4.2 Sistem Mikrokontroler AT90S51
49
4.3 Analisa Program
51
4.3.1 Analisa Program Tombol Start
51
4.3.2 Analisa Program Awal
52
4.3.3 Analisa Program Inisialisasi Port
52
4.3.4 Analisa Program Inisialisasi LCD
52
4.3.5 Analisa Program pada Tampilan LCD
53
4.3.6 Analisa Program Uji Kabel LAN
53
Bab 5 Kesimpulan dan Saran
5.2 Saran
57
DAFTAR PUSTAKA
58
DAFTAR TABEL
Halaman
Tabel 2.1 Konfigurasi Port 3.0 Mikrokontroler AT89S51
10
Table 2.2 Simbol Assembler Khusus
16
Tabel 2.3 Register TMOD
26
Tabel 2.4 Register TCON
28
Table 2.5 Pasangan kabel UTP
30
Table 2.6 Susunan Kabel Straight
31
Table 2.7 Transmisi Data Kabel Straight
31
Table 2.8 Susunan Kabel Crossover
32
Table 2.9 Transmisi Data Kabel Crossover
32
Tabel 2.10 Pin dan Fungsi
34
Tabel 4.1 Titik Pengukuran Kondisi Power On Reset
50
DAFTAR GAMBAR
Halaman
Gambar 2.1 Konfigurasi pin mikrokontroler AT89S51
8
Gambar 2.2 Blok Diagram Mikrokontroller AT89S51
15
Gambar 2.3. Modul LCD Karakter 2x16
32
Gambar 2.4. Rangkaian interface ke LCD Karakter 2x16
33
Gambar 2.5 Modul LCD
37
Gambar 3.1 Diagram Blok Alat Uji Kabel LAN
40
Gambar 3.2 ATMinimum
43
Gambar 3.3 Rangkaian Reset Switch
43
Gambar 3.4 Rangkaian Display
44
Gambar 3.5 Rangkaian Catu Daya
45
Gambar 3.6 Flowchart Alat Uji Kabel LAN
47
Gambar 4.1 Grafik Pengisian Kapasitor terhadap Waktu
50
PENDAHULUAN
1.1 Latar Belakang
Alat uji kabel LAN (Local Area Network) dalam membangun jaringan komputer
sangat diperlukan untuk memudahkan dalam instalasi dan untuk mengetahui apakah
kabel yang dipasang terhubung dengan baik atau tidak. Hal ini sangat penting karena
suatu sistem jaringan komputer tidak akan terjadi jika hubungan kabel kurang baik.
Untuk itu penulis merancang suatu alat yang dapat menguji hubungan kabel LAN
setelah dipasang pada konektor RJ-45 (Register-Jack 45) yaitu suatu konektor khusus
untuk penggunaan pada sistem jaringan komputer. Dengan alat ini dapat diketahui
hubungan dan pemasangan kabel sudah sesuai atau tidak dan dapat mengetahui jenis
sambungan pada kabel yang diuji.
1.2 Batasan Masalah
Untuk membahas persoalan agar sesuai dengan tujuan, maka penulis membatasi
pembahasan tugas akhir. Adapun yang menjadi batasan masalah adalah sebagai
berikut :
1. Hanya membahas prinsip kerja sistem untuk menguji kabel LAN secara
2. Pembahasan pada hardware dan software komputer terbatas kepada
penggunaanya dalam rangkaian dan tidak dibahas secara rinci.
3. Alat uji kabel LAN ini hanya dapat menguji kabel LAN dengan konfigurasi
kabel lurus (straight) dan silang (cross).
1.3 Tujuan Tugas Akhir
Tujuan tugas akhir ini adalah :
1. merancang suatu alat uji kabel LAN untuk mengetahui kualitas sambungan
suatu kabel pada jaringan komputer.
2. Menganalisa sistem kerja rangkaian-rangkaian pada alat uji kabel LAN yang
telah dirancang.
1.4 Metode Pengumpulan Data
Dalam pembuatan tugas akhir ini, penulis melakukan berbagai metode pengumpulan
data antara lain :
1. Mengumpulkan bahan dan mempelajari sistem mikrokontroler AT89S51.
2. Membuat diagram blok rangkaian sebagai dasar rancangan.
3. Membuat rangkaian pendukung mikrokontroler AT89S51.
4. Membuat diagram alir (flowchart).
5. Membuat dan menguji rangkaian dalam satu sistem yang utuh.
1.5 Sistematika Penulisan
Tugas akhir ini mempunyai sistematika penulisan sebagai berikut :
BAB 1 PENDAHULUAN
Bab ini berisikan latar belakang pembuatan alat uji kabel LAN, batasan
masalah, tujuan tugas akhir, metode pengumpulan data, dan sistematika
penulisan.
BAB 2 LANDASAN TEORI
Bab ini berisikan teori yang digunakan sebagai landasan pembuatan
rancangan dan penulisan laporan tugas akhir, yang berisikan teori
pendukung mikrokontroler AT89S51.
BAB 3 PEMBUATAN ALAT DAN PEMBUATAN PROGRAM
Bab ini membahas tentang pembuatan dan realisasi perangkat keras
dan perangkat lunak serta cara kerja sistem secara keseluruhan.
BAB 4 PENGUJIAN RANGKAIAN DAN ANALISA
Bab ini membahas bagaimana proses pengujian dan realisasi alat baik
perblok maupun secara keseluruhan.
BAB 5 KESIMPULAN DAN SARAN
Bab ini berisikan kesimpulan dan saran penulisan setelah pengujian
DASAR TEORI
2.1 Umum
LAN (Local Area Network) merupakan rancangan dasar jaringan komputer. Secara
tipikal, LAN dapat berupa dua buah komputer atau lebih yang dihubungkan satu sama
lain melalui sebuah media (kabel jaringan, komunikasi wireless, dan lain-lain)
sehingga setiap node komputer dapat saling melakukan akses. Namun demikian, LAN
tidak selalu berupa komputer-komputer yang dihubungkan, tetapi juga terdiri atas
sekumpulan perangkat komunikasi seperti komputer-komputer server dan klien, hub,
bridge, repeater, printer dan lain-lain.
2.2 Sistem Jaringan Komputer
Ada beberapa jenis jaringan komputer yang dibedakan atas dasar ruang lingkupnya
yaitu antara lain :
1. LAN (Local Area Network) adalah sekelompok komputer yang saling
dihubungkan di dalam area tertentu.
2. WAN (Wide Area Network) adalah jaringan yang diperluas ke area yang
lebih luas misalnya satu blok kota, dimana untuk menghubungkannya
3. MAN (Metropolitan Area Network) adalah LAN yang diperluas sehingga
dapat meliputi kota dengan diameter 50 km. Tidak menggunakan Ethernet
atau Tiken Passing tetapi menggunakan DQDB (Distributed Queque Dual
Bus).
4. CLAN (Cables/Cordless LAN) adalah kombinasi LAN dan Radio mobil.
Frekuensi radio yang digunakan 2,445 GHz s/d 2,475 GHz. (Utomo, 2006)
2.2.1 Local Area Network (LAN) Tanpa Kabel
Inovasi di dalam teknologi telekomunikasi berkembang dengan cepat dan selaras
dengan perkembangan karakteristik masyarakat modern yang memiliki mobilitas
tinggi, mencari layanan yang fleksibel, serba mudah dan memuaskan dan mengejar
efisiensi di segala aspek. Dari itu, teknik telekomunikasi memiliki target untuk masa
depan, yaitu mencapai sistem Future Wireless Personal Communication (FWPC).
Sistem tersebut menawarkan layanan komunikasi dari siapa saja, kapan saja, di mana
saja, melalui satu deretan nomor sambungan yang tetap, dengan delay yang
sekecil-kecilnya, menggunakan suatu unit yang portabel (kecil, dapat dipindah-pindahkan,
murah dan hemat) dan memiliki sistem yang kualitasnya tinggi dengan kerahasiaan
yang terjamin.
Teknologi wireless memiliki fleksibelitas, mendukung mobilitas, memiliki
teknik frequency reuse, selular dan handover, menawarkan efisiensi dalam waktu
(penginstalan) dan biaya (pemeliharaan dan penginstalan ulang di tempat lain),
dengan mudah dan cepat. Jaringan wireless dapat digunakan untuk transmisi suara
maupun data.
2.2.2 Keuntungan Menggunakan LAN
Adapun keuntungan dari penggunaan jaringan komputer LAN (Local Area Network)
ini diantaranya adalah :
1. Pengelolaan File: Berbagi File, Transfer File
2. Berbagi aplikasi : Dapat menggunakan LAN untuk menyediakan software
bagi orang lain di jaringan.
3. Berbagi Piranti Peripheral seperti : Printer, CD-Rom, Scanner, Fax/Modem
dan sebagainya.
4. Reinteraksi dengan pengguna lain dalam jaringan seperti :
a. Melakukan penjadwalan group; masing-masing memasukkan
jadwalnya pada computer jaringan. Software penjadwalan kelompok
mencatat jadwal setiap pengguna dan membuat jadwal dimana setiap
orang dapat memenuhi jadwal tersebut.
b. Mengirim dan menerima surat elektronik (email), dan komunikasi real
time (chat).
c. Mengadakan pertemuan elektronik.
2.3 Mikrokontroler AT89S51
Mikrokontroler adalah Central processing Unit (CPU) yang disertai dengan memori
serta sarana input/output dan dibuat dalam bentuk Chip. Mikrokontroller merupakan
suatu mikroprosesor yang dikombinasikan dengan I/O dan memori (RAM/ROM)
dalam bentuk keeping tunggal, sehingga penambahan interface untuk peralatan I/O
tidak diperlukan, namun diperlukan sebuah PEROM (Programmable and Erasable
Read Only Memory) sebagai tempat penyimpanan program untuk mengatur kerja
mikrokontroler tersebut.
Mikrokontroler AT89S51 adalah sebuah mikrokontroler berdaya rendah,
CMOS 8-bit yang berkemampuan tinggi dengan memory flash Programmable and
Erasable Read Only Memory (PEROM) sebesar 4 Kbyte. Mikrokontroler ini
diproduksi dengan standard industri set instruksi dan pin out MCS-51. Flash internal
memungkinkan memori program untuk diprogram di dalam sistem atau dengan
program yang memori non-volatile konvensional. Dengan mengkombinasikan sebuah
8-bit CPU yang serbaguna dengan flash yang menyatu dengan keping, mikrokontroler
AT89S51 adalah sebuah mikrokontroler berkemampuan tinggi dimana menyediakan
solusi flaksibelitas tinggi dan biaya yang efektif untuk digabungkan ke banyak
aplikasi kontrol.
2.3.1 Arsitektur Mikrokontroler AT89S51
AT89S51 mempunyai rangkaian dalam yang cukup lengkap dengan demikian
komponen luar yang diperlukan menjadi sedikit, hanya merupakan pelengkap dari
input, analog komparator negative input dan rangkaian reset secara eksternal. IC ini
didesain dengan ukuran yang kecil, dengan penggunaan daya yang rendah dan unjuk
kerja yang tinggi.
Sebuah mikrokontroler dapat bekerja bila dalam mikrokontroler tersebut
terdapat sebuah program yang berisi instruksi-instruksi yang akan digunakan untuk
menjalankan sistem mikrokontroler tersebut. Pada prinsipnya mikrokontroler
dijalankan secara bertahap, jadi pada program itu sendiri terdapat beberapa set
instruksi, dan setiap instruksi itu dijalankan secara bertahap atau berurutan.
Konfigurasi pin dari IC, Gambar 2.1 seperti berikut :
Dari gambar 2.1, deskripsi pin-pin pada mikrokontroler AT89S51 :
1) VCC (Pin 40)
Suplai tegangan 5 Volt.
2) GND (Pin 20)
Ground.
3) 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 programming Pada fungsinya 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
fungsinya sebagai low order multiplex address/data, port ini akan mempunyai
internal pull up. Pada saat flash programming diperlukan eksternal pull up,
terutama pada saat verifikasi program.
4) Port 1 (Pin 1 – Pin 8)
Port 1 berfungsi sebagai I/O biasa, pada kaki ke 6, ke 7 dan ke 8 terdapat Mosi,
Miso dan Sck sebagai masukan dari ISP Programmer yang terhubung ke
komputer. Tanpa adanya port ini maka mikrokontroler tidak dapat diprogram oleh
ISP Programmer.
5) Port 2 (Pin 21 – pin 28)
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakses
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,
6) 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.1 Konfigurasi Port 3.0 Mikrokontroler AT89S51
Nama Pin Fungsi
P3.0 (Pin 10) RXD (Port Input Serial)
P3.1 (Pin 11) TXD (Port Output Serial)
P3.2 (Pin 12) INTO (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 (untuk menulis eksternal data memori)
P3.7 (Pin 17) RD (untuk membaca eksternal data memori)
(http//www.atmel.com, 18/06/2008)
7) RST (pin 9)
Reset akan aktif dengan memberikan input high selama 2 cycle.
8) 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 program
(PROG) selama memprogram Flash.
9) PSEN (pin 29)
10) EA (pin 31)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan
menjalankan program yang ada pada memori eksternal setelah sistem di-reset. Jika
kondisi high, pin ini akan berfungsi untuk menjalankan program yang ada pada
memori internal. Pada saat flash programming, pin ini akan mendapat tegangan 12
Volt.
11) XTAL1 (pin 19)
Input untuk clock internal.
12) XTAL2 (pin 18)
Output dari osilator.
Susunan pin pada mikrokontroler AT89S51 dapat dilihat pada gambar di atas.
Penjelasan untuk masing-masing pin dari mikrokontroler dapat dilihat pada lampiran:
Mikrokontroler AT89S51 memiliki beberapa fasilitas sebagai berikut ;
1. Sebuah Central Processing Unit 8 bit.
2. Osilator internal dan rangkaian pewaktu.
3. RAM internal 128 byte.
4. Flash memori 4 Kbyte.
5. Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi
internal).
6. Empat buah programmable port I/O yang masing-masing terdiri dari 8 buah
jalur I/O.
7. Sebuah port serial dengan control serial full duplex UART.
9. Kecepatan dalam melaksanakan instruksi per siklus 1µs pada frekuensi 12 MHz.
2.3.2 Memori data
Struktur memori yang dimiliki oleh AT89S51 terdiri atas :
a. RAM Internal, memori sebesar 128 byte yang biasanya digunakan untuk
menyimpan data yang bersifat sementara.
b. Special Function Register (Register Fungsi Khusus), memori yang berisi
register-register yang mempunyai fungsi-fungsi khusus yang disediakan
mikrokontroler tersebut, seperti timer, serial dan lain-lain.
c. Flash PEROM, memori yang digunakan untuk menyimpan instruksi-instruksi
MCS-51.
Arsitektur AT89S51 seperti pada gambar 2.2 mempunyai struktur memori
yang terpisah antara RAM Internal dan Flash PEROM-nya. RAM internal dialamati
oleh RAM Address Register (Register Alamat RAM) sedangkan flash PEROM yang
menyimpan perintah-perintah MCS-51dialamati oleh Program Address Register
(Register Alamat Program).
Dengan adanya struktur memori yang terpisah tersebut, walaupun RAM
internal dan Flash PEROM, mempunyai alamat awal yang sama, yaitu alamat OOH,
2.3.3 Central Processing Unit (CPU)
CPU terdiri dari atas dua bagian, yaitu unit pengendali serta unit aritmatika dan
Logika (ALU). Fungsi utama unit pengendali adalah mengambil, mengkodekan, dan
melaksanakan urutan instruksi sebuah program yang tersimpan dalam memori.
2.3.4 Bus Alamat
Bus alamat berfungsi sebagai sejumlah lintasan saluran pengalamatan antara alat
dengan sebuah computer. Pengalamatan ini harus ditentukan terlebih dahulu untuk
menghindari terjadinya kesalahan pengiriman sebuah instruksi dan terjadinya bentrok
antara dua buah alat yang bekerja secara bersamaan.
2.3.5 Bus Data
Bus data merupakan sejumlah lintasan saluran keluar masuknya data dalam suatu
mikrokontroler. Pada umumnya saluran data yang masuk dengan saluran data yang
keluar.
2.3.6 Bus Kontrol
Bus control atau bus pengendali ini berfungsi untuk menyerempakkan opresi
2.3.7 Memori
Didalam sebuah mikrokontroler terdapat suatu memori yang berfungsi untuk
menyimpan data atau program. Ada beberapa jenis memori, diantaranya adalah RAM
dan ROM.
2.3.8 RAM (Read Acces Memory)
RAM merupakan memori yang dapat dibaca dan ditulis. RAM adalah jenis dari
memori utama yang biasanya digunakan untuk menyimpan data atau sering disebut
dengan memori data saat program dikerjakan. Data yang data RAM akan hilang bila
catu daya dari RAM dimatikan, sehingga RAM hanya dapat digunakan untuk
menyimpan data sementara.
2.3.9 ROM (Read Only Memory)
ROM merupakan memori yang hanya dapat dibaca. Data yang disimpan ROM tidak
akan hilang meskipun tegangan supply dimatikan. Dari sifatnya itu maka ROM sering
dipakai untuk menyimpan program. Ada beberapa jenis ROM diantaranya yaitu
PEROM, EPROM, dan EEPROM. PEROM dapat deprogram oleh pemakai tetapi
hanya dapat ditulis sekali saja.
UV- EPROM merupakan PROM yang dapat diprogram atau ditulis kali dan
dipat dihapus dengan sinar ultraviolet. Flash PEROM adalan PROM yang dapat
popular dan diminati programmer mikrokontroler. Rangkaian Blok Diagram
Mikrokontroler dapat dilihat pada Gambar 2.2
Gambar 2.2 Blok Diagram Mikrokontroller AT89S51
(http//www.atmel.com, 18/06/2008)
2.3.10 Perangkat Lunak Mikrokontreller AT89S51
Perangkat lunak adalah seperangkat instruksi yang disusun menjadi sebuah program
untuk memerintah komputer melakukan suatu pekerjaan. Sebuah instruksi selalu berisi
kode pengoperasian (Op-Code), kode pengoperasian inilah yang disebut dengan
bahasa mesin yang dapat dimengerti oleh mikrokomputer. Instruksi-instruksi yang
dijalankan dalam memprogram suatu program yang diisikan pada AT89S51 adalah
2.3.10.1 Simbol Assembler Khusus
Assembler telah menyediakan beberapa symbol untuk menuinjukkan register disajikan
sebagai operand. Table 2.2 berikut ini menunjukkan symbol assembler khusus.
Table 2.2 Simbol Assembler Khusus
Symbol Khusus Arti
A Akumulator
RO sampai R7 Register serbaguna
DPTR Data pointer. Register 16 bit
PC
Program counter. Register 16 bit yang berisi alamat intruksi berikutnya yang akan dijalankan
C Carry flag
AB
Akumulator register B. pasangan register untuk perkalian dan pembagian.
(http//www.atmel.com18/06/2008)
2.3.10.2 Sistem Pengalamatan
a. Pengalamatan Langsung
1) Immediate Data
Proses pengalamatan ini terjadi pada sebuah perintah ketika nilai operand
merupakan data yang akan diproses. Biasanya operand tersebut selalu di awali
dengan tanda ‘#’ seperti pada contoh berikut:
MOV A,#05h
MOV A,#Data ; Pada bagian atas data telah didefinisikan
sebagai
2) Pengalamatan Data
Proses pengalamatan ini terjadi pada sebuah perintah ketika nilai operand
merupakan alamat dari data yang akan diisi, dipindahkan atau diproses.
Contoh:
MOV P0,A
Port 0 adalah salah satu I/O dari AT89S51 yang mempunyai alamat
80H. Perintah pada contoh di atas selain mengirimkan data Akumulator ke port
0 juga merupakan perintah pemindahan data dari Akumulator ke alamat 80H
sehingga dapat juga dituliskan MOV 80H,A.
b. Pengalamatan Tak Langsung
Proses pengalamatan ini terjadi pada sebuah perintah ketika salah satu operand
merupakan register berisikan alamat dari data yang akan di isi atau di pindahkan.
Pengalamatan jenis ini biasa digunakan untuk melakukan penulisan, pemindahan atau
pembacaan beberapa data dalam lokasi memori yang mempunyai urutan beraturan.
AT89S51 mempunyai sebuah register 16 bit (DPTR) dan dua buah register 8
bit (R0 dan R1) yang dapat digunakan untuk melakukan pengalamatan tidak langsung.
Contoh-contoh perintah yang digunakan pengalamatan tidak langsung adalah:
MOV @R0,A ; R0 digunakan sebagai register penyimpan alamat.
MOV A,@R1 ; R1 digunakan sebagai register penyimpan alamat.
MOV A,@R0 ; R0 digunakan sebagai register penyimpan alamat.
MOV @DPTR,A ; DPTR digunakan sebagai register penyimpan
alamat.(Tim Lab. Mikroprosesor, 2007)
Pengalamatan kode merupakan pengalamatan ketika operand merupakan alamat dari
instruksi jump dan Call (ACALL, JMP,LJMP, dan LCALL). Biasanya operand
tersebut akan menunjuk ke suatu alamat yang telah diberi label sebelumnya.
d. Pengalamatan Bit
Proses pengalamatan ketika operand menunjuk ke alamat pada RAM internal ataupun
register fungsi khusus yang mempunyai kemampuan pengalamatan secara bit (bit
Addressable).
Berdasarkan penulisannya, pengalamatan ini terdiri atas beberapa macam
sebagai berikut:
1. Langsung menunjuk ke alamat bit
Contoh :
Setb 0B0H
Perintah ini memberikan logika 1 pada bit di alamat B0H dengan
pengalamatan secara bit.
2. Menggunakan operator titik
Contoh :
Setb P3.0
Perintah ini memberikan logika 1 pada bit ke 0 dari port 3, bit tersebut
terletak di alamat B0H dengan pengalamatan secara bit.
3. Menggunakan lambing Assembler secara standard
Contoh :
Perintah ini memberikan logika 1 pada kaki RXD yang terletak pada
bit ke 0 dari port 3.
4. Menggunakan lambang Assembler secara bebas
Contoh :
Penerima Bit P3.0
Setb Penerima
Perintah ini memberikan logika 1 pada bit penerima yang sebelumnya
telah didefinisikan sebagai bit P3.
2.3.10.3 Instruksi Aritmatika
Instruksi aritmatika mencakup penambahan (ADD), pengurangan (SUBB), perkalian
(MUL), dan pembagian (DIV).
a. Penambahan (ADD)
Instruksi ini akan menunjukkan suatu data dengan isi akumulator dan hasilnya
disimpan di akumulator. Penambahan hanya melibatkan register akumulator.
Penambahan ada dua macam, yaitu tanpa carry (ADD) dan penambahan dengan carry
(ADDC).
b. Pengurangan (SUBB)
Instruksi ini akan mengurangkan isi akumulator dengan isi carry flag dan isi data.
c. Perkalian (MUL)
Instruksi ini akan mengalikan isi akumulator dengan isi register B. Byte bawa hasil
perkalian disimpan dalam akumulator. Byte atas disimpan dalam akumulator.
d. Pembagian (DIV)
Sama hasilnya dengan perkalian, pembagian juga melibatkan register B. Isi register
akumulator akan dibagi oleh register B. Akumulator akan berisi hasil bagi, sedangkan
register B sisa pembagian.
e. Penambahan Satu (INC)
Proses increment merupakan proses penambahan satu pada sisi suatu register atau
memori. Pemakaian instruksi increment menghemat pemakaian memori karena
insruksi INC merupakan instruksi 1 byte (tidak memakai operand).
f. Pengurangan Satu (DEC)
Proses decrement merupakan kebalikan dari increment, yait mengurangkan satu
dari isi suatu register atau memori. Pada instruksi di atas. Isi register R0 dikurangi
satu dan hasilnya disimpan dalam register tersebut. Sama seperti INC, instruksi
DEC juga merupakan instruksi 1 byte. Tim Lab. Mikroprosesor, 2007)
2.3.10.4 Instruksi Percabangan (Branch)
Instruksi ini terbagi dua bagian, yaitu percabangan dengan syarat dan percabangan
1. Percabangan dengan Syarat
a. CJNE (Compare Jumpe If Not Equal)
Instruksi ini akan membandingkan isi register atau isi memori dengan satu dat. Bila
sama, instruksi selanjutnya yang akan dituju. Bila tidak sama, instruksi yang ditunjuk
oleh label yang akan dilaksanakan. Sebagai contoh :
CJNE R0,#0FFH,1sb
Berarti jika R0 tidak sama dengan 0FFH maka instruksi akan menuju ke alamat
label 1 sb.
b. DJNZ (Decreament and Jump If Not Zero)
Instruksi ini akan mengurangi isi register atau isi memori dengan satu. Bila sudah 0,
instruksi selanjutnya yang akan dilaksanakan. Bila belum 0, instruksi dilanjutkan ke
label. Sebagai contoh :
DJNZ mem_ultra,ultras
Berarti jika mem_ultra tidak sama demgan nol setelah dikurangi satu,
pelaksanaan instruksi harus melompat ke label ultras.
c. JNB (Jump If Bit Is Not Set)
Instruksi ini menguji satu alamat bit. Bila sisinya 0, eksekusi akan menuju alamat
kode. Jika isinya 1, instruksi selanjutnya yang akan dilaksanakan. Sebagai contoh :
JNB TI,$
Instruksi ini menguji apakah data sudah dikirim, jika belum periksa kembali.
2. Percabangan Tanpa Syarat
Instruksi ini meliputi SJMP (Short Jump) dan LJMP (Long Jump). Sebagai contoh:
SJMP selesai
Eksekusi program akan menyatakan selesai tanpa syarat apapun.
2.3.10.5 Instruksi Transfer Data
Instruksi transfer data terbagi menjadi dua kelas operasi sebagai berikut :
a. Transfer data utama (General Purpose Transfer), yaitu : MOV,PUSH, dan POP.
b.Transfer spesifik akumulator (Accumulator Specifik Transfer), yaitu : XCH,
XCHD dan MOV C.
Instruksi transfer data adalah instruksi pemindahan atau pertukaran data antara
operand sumber dengan operand tujuan. Operandnya dapat berupa register, memori
atau lokasi suatu memori.
2.3.10.6 Instruksi Aritmatika (Instruksi Perhitungan)
Operasi dasar aritmatik seperti seperti penjumlahan, pengurangan, perkalian, dan
pembagian, dimiliki oleh AT89S51 dengan mnemonic : INC, ADD, ADDC, SUBB,
2.3.10.7 Instruksi Logika
Mikrokontroler AT89S51 dapat melakukan operasi logika bit maupun operasi logika
byte. Operasi logika tersebut dibagi atas dua bagian yaitu :
1. Operasi logika operand tunggal, yaitu : CLR, SETB, CPL, RLC, RR,
RRC,SWAB.
2. Operasi logika dua operand, yakni operasi AND (kode operasi ANL), operasi
OR (kode operasi ORL), operasi Exclusive-OR (kode operasi XRL). Data yang
bisa dipakai dalam operasi ini bisa berupa data yang berada dalam akumulator
atau data yang berada dalam memori data, hal ini sedikit berbeda dengan operasi
aritmatik yang harus melibatkan akumulator secara aktif.
2.3.10.8 Instruksi Transfer Kendali
Instruksi transfer kendali (control transfer) terdiri dari tiga kelas operasi yaitu:
1. Lompatan tidak bersyarat (Unconditional jump), seperti : ACALL, AJMP,
LJMP, SJMP, JMP @A+DPTR.
2. Lompatan bersyarat (Conditional jump), seperti : JZ, JNZ, JB, CJNE, dan DJNZ.
3. Interupsi seperti RET1 dan RET.
2.4Special Function Register (SFR)
Special function register (SFR) adalah register-register yang mempunyai fungsi
khusus, diantaranya ada yang digunakan untuk mengatur input output data dari
Berikut ini adalah penjelasan secara singkat SFR-SFR beserta fungsinya :
2.4.1Accumulator
Accumulator merupakan register yang berfungsi untuk menyimpan data sementara.
Register Accumulator ini sering digunakan dalam proses aritmatika, logika,
pengambilan data dan pengiriman data.
2.4.2Register B
Register B dapat digunakan untuk proses aritmatika dan dapat juga difungsikan
sebagai register biasa.
2.4.3Register Port
Pada register ini terdapat 4 buah yaitu register port 0, port 1, port 2 dan port 3.
Register port ini digunakan sebagai sarana input/output untuk menyimpan data dari
atau ke port untuk masing-masing p0, P1, P2 dan P3.
2.4.4 Register Timer
Mikrokontroler AT89S51 mempunyai dua buah 16 bit timer, yaitu Timer 0 dan Timer 1. Timer 0 dibentuk oleh register TH0 dan TL0.
2.4.5. Register Control
Ada beberapa register yang berisi bit-bit kontrol dan status untuk system interupsi,
pencacah atau peaktu, dan port serial, yaitu register-register IP (Interrupt Priority),
IE (Interrupt Enable), TMOD (Timer Mode), TCON (Timer Control), SCON
2.5 Flash PEROM
Mikrokontroler AT89S51 mempunyai 4 Kbyte flash Perom (Programable and
Erasable Read Only), yaitu ROM yang dapat ditulis ulang atau dihapus menggunakan
perangkat programmer. Flash PEROM dalam AT89S51 menggunakan Atmel’s High
density Non Volatile Technology yang mempunyai kemampuan untuk ditulis ulang
hingga 1000 kali dan berisikan perintah standart MCS-51.
Program yang ada pada Flash PEROM akan dijalankan jika pada saat system
direset, pin EA/VP berlogika satu sehingga mikrokontroler aktif berdasarkan program
yang ada pada Flash PEROM-nya. Namun,jika pin EA/Vp berlogika nol,
mikrokontroler aktif berdasarkan program yang ada pada memori eksternal. Pada
kondisi tertentu dapat juga terjadi untuk memanggil program yang terletak pada
memori internal walaupun saat pertama kali direset, mikrokintroler memanggil
program yang ada dieksternal memory ataupun sebaliknya. Hal ini dapat dilakukan
dengan menggunakan instruksi Long Call (LCAAL/address) atau Long Jump
(LJMP/address).
Untuk keamanan program yang ada dalam Flash PEROM, AT89S51 mempinyai
fasilitas Lock Bit Protection yang terdiri atas :
a. Lock Bit 1, instruksi MOV C yang dieksekusi dari memori eksternal untuk
membaca isi Flash PEROM tidak dapat dilakukan.
b. Lock Bit 2, sama dengan Lock Bit 1, tetapi isi dari Flash PEROM tidak dapat
di-verivy oleh 89S51 Programmer.
2.6 Timer/Counter
Mikrokontroler AT89S51 mempunyai dua buah Timer, yaitu timer 0 dan Timer 1
yang keduanya dapat berfungsi sebagai counter ataupun sebagai timer. Perbedaannya
terletak pada sumber clock dan aplikasinya. Jika timer mempunyai sumber clock
dengan frekuensi tertentu yang suda pasti sedangkan counter mendapat sumber clock
dari pulsa clock yang akan dihitung jumlahnya. Aplikasi dari counter atau penghitung
biasa digunakan untuk aplikasi mengitung jumlah kejadian yang terjadi dalam priode
tertentu sedangkan timer atau pewaktu biasa digunakan untuk aplikasi menghitung
lamanya suatu kejadian yang terjadi.
Kedua Timer pada AT89S51 masing-masingmempunyai 16 bit counter yang
mampu diatur keaktifan maupun kode masing-masing operasinya, direset dan diset
dengan harga tertentu. Untuk mengatur Timer ini AT89S51 mempunyai enem buah
Special Function Register yang telah dijelaskan pada halaman sebelumnya.
Timer AT89S51 memiliki tiga buah register timer yaitu :
1. Timer Mode Register (TMOD) di alamat 89H
2. THx dan TLx
2.6.1Timer Mode Register (TMOD)
[image:37.612.127.538.158.214.2]Pola bit register TMOD, tabel 2.3.
Tabel 2.3 Register TMOD
Timer 1 Timer 0
Gate (1)
C/T (1) M1 (1) M0 (1) Gate (0) C/T (0) MI (0) M0 (0)
(Andi Nalwan, P, 2003)
Tidak diamati secara bit
Register TMOD berupa 8 bit register yang terletak pada alamat 89H dengan
fungsi setiap bitnya adalah sebagai berikut :
Gate : Timer akan berjalan jika bit ini diset dan INT0 (untuk Timer 0) atau INT1
(untuk Timer 1) berkondisi high.
C/T : 1 = Counter
0 = Timer
M1 & M0: untuk memilih modetimer.
2.6.2THx dan TLx
Dari gambar 2.2, Mikrokontroler AT89S51 mempunyai dua buah timer, yaitu Timer 0
dan Timer 1 dan setipa timer terdiri atas 16 bit timer yang masing-masing tersimpan
dalam dua buah register yaitu THx untuk Timer High Byte dan TLx untuk Timer Low
Bit.
TH0 : Timer 0 High Byte terletak pada alamat 8AH
TH0 : Timer 0 Low Byte terletak pada alamat 8BH
TH1 : Timer 1 High Byte terletak pada alamat 8CH
2.6.3Timer Control Register (TCON)
Register ini hanya mempunyai 4 bit saja, yaitu TCON 4, TCON 5, TCON 6 dan
TCON 7 saja yang mempunyai fungsi berhubungan dengan timer. Pola register
[image:38.612.127.536.236.282.2]TCON, tabel 2.4.
Tabel 2.4 Register TCON
Register Timer Register Interupsi
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
(Andi Nalwan, P, 2003)
Dapat diakses secara bit
Register ini bersifat bit addressable sehingga bit TF1 dapat disebut TCON 7,
TR1 sebagai TCON 6 dan seterusnya hingga Bit IT0 sebagai TCON 0.
TCON. 7 atau TF1 : Timer 1 Overlow flag yang akan diset jika timer overlow.
Bit ini dapat di-clear oleh software atau oleh hardware pada
saat program menuju ke alamat yang ditunjuk oleh interrupt
vector.
TCON. 6 atau TR1 : 1 = Timer 1 aktif
0 = Timer 1 nonaktif
TCON. 5 atau TF0 : Timer 0 Overlow flag. Diset oleh perangkat keras.
TCON. 4 atau TR0 : Bit untuk menjalankan Timer 0. Diset/clear oleh software untuk
membuat timer 0 aktif atau nonaktif.
TCON.3 atau IE1 : External interrupt 1 edge flag.
mengimplementasikan sisi turun/level rendah trigger dari
interupsi
eksternal.
TCON. 1 atau IE0 : Exsternal Interrupt 0 edge flag.
TCON. 0 atau IT0 : Interrupt 0 type control bit.
2.7Interupsi
Interupsi adalah suatu kejadian atau peristiwa yang menyebabkan mikrokontroler
berhenti sejenak untuk melayani instruksi tersebut.
Pada sisitem mikrokontroler yang sedang menjalankan programnya, saat
terjadi interupsi, program akan berhenti sesaat, melayani interupsi tersebut dengan
menjalankan program yang berada pada alamat yang ditunjuk oleh vector dari
interupsi yang terjadi sehingga selesai dan kembali meneruskan program yang terhenti
oleh inerpsi tadi.
2.8 Kabel UTP (Kabel LAN)
2.8.1 Kabel UTP
Kabel UTP (Unshielded Twisted Pair) atau dikenal juga dengan kabel jenis
10BaseT/100BaseTx. Kabel ini dikoneksikan dengan menggunakan konektor RJ-45
(register jack-45) dan dipasangkan pada LAN card yang ada di computer. Ada jenis
lain yang termasuk pada kabel jenis 10BaseT yaitu STP (Shielded Twisted Pair)
karena kabel jenis ini memiliki pelindung (umumnya berwarna abu-abu) sehingga
dapat menahan adanya interferensi. Karena hal tersebut, maka harga kabel STP
menjadi lebih mahal disbanding dengan harga kabel UTP.
[image:40.612.193.454.202.311.2]Berikut ini adalah pasangan kabel yang terdapat di dalam kabel UTP:
Table 2.5 Pasangan kabel UTP
Pasangan pertama Putih/biru Biru
Pasangan kedua Putih/orange Orange Pasangan ketiga Putih/hijau
Hijau Pasangan keempat Putih/cokelat
Coklat (Utomo, E.P, 2006)
Berdasarkan EIA/TIA-568B RJ-45 wiring schema (standar pengkabelan
internasional), ada dua konfigurasi yang digunakan dalam jaringan yang
menggunakan kabel UTP dan RJ-45 yaitu sebagai barikut:
a. EIA/TIA-568A, urutannya : putih-hijau, hijau, putih-orange, biru, putih
biru, orange, putih-coklat,coklat.
b. EIA/TIA-568B, urutannya : putih-orange, orange, putih-hijau, biru,
putih-biru, hijau, putih-cokelat, coklat.
3.8.2 Kabel Straight
Banyaknya computer yang ada pada suatu jaringan, membutuhkan alat Hub untuk
mengatur distribusi data di dalamnya. Hubungan kabel straight digunakan untuk
menghubungkan kabel dari klien ke hub atau router. Susunan pin-pin dalam hubungan
Ringkasnya seperti table berikut:
Table 2.6 Susunan Kabel Straight
Konektor satu Konektor dua Pin 1 Orange-putih Orange-putih
Pin 2 Orange Orange
Pin 3 Putih-hijau Putih-hijau
Pin 4 Biru Biru
Pin 5 Putih-biru Putih-biru
Pin 6 Hijau Hijau
Pin 7 Putih-coklat Putih-coklat Pin 8 Cokelat Cokelat (Utomo, E.P, 2006)
Pada prosesnya pin 4, 5, 7 dan 8 tidak digunakan. Proses transmisi data pada kabel
twisted pair kategori 3 atau 5 adalah sebagai berikut:
Table 2.7 Transmisi Data Kabel Straight
Pin Konektor 1 Konektor 2 1 Transmit + Receive + 2 Transmit - Receive - 3 Receive + Transmit + 6 Receive - Transmit -
(Utomo, E.P, 2006)
2.8.3 Kabel Crossover
Jika kita ingin menghubungkan dua PC, maka kita tidak perlu menggunakan Hub
karena hal ini tidak efisien (menambah anggaran biaya) dalam pembangunan jaringan.
Dengan memakai kabel UTP saja, kita bisa menghubungkan dua computer tersebut.
Hal itu yang disebut dengan hubungan crossover. Kita juga bisa memakai hubungan
crossover untuk menyambungkan hub dengan hub. Ada beberapa yang harus
[image:41.612.198.452.362.468.2]Table 2.8 Susunan Kabel Crossover
Konektor satu Konektor dua Pin 1 Orange-putih Putih-hijau
Pin 2 Orange Hijau Pin 3 Pituh-hijau Putih-orange
Pin 4 Biru Biru
Pin 5 Putih-biru Putih-biru Pin 6 Hijau Orange Pin 7 Putih-cokelat Putih-cokelat Pin 8 Cokelat Cokelat (Utomo, E.P, 2006)
Proses transmisi data yang terjadi pada crossover cable adalah seperti table
[image:42.612.187.457.336.419.2]berikut ini:
Table 2.9 Transmisi Data Kabel Crossover
Konektor 1 Konektor 2 Pin 1 : Receive + Pin 3 : Transmit + Pin 2 : Receive - Pin 6 : Transmit - Pin 3 : Transmit + Pin 1 : Receive + Pin 6 : Transmit - Pin 2 : Receive - (Utomo, E.P, 2006)
Karakter LCD 16 x 2
Modul LCD Character dapat dengan mudah dihubungkan dengan mikrokontroller
seperti AT89S51. LCD yang digunakan mempunyai lebar display 2 baris 16 kolom
atau biasa disebut sebagai LCD Character 2x16, dengan 16 pin konektor.
Gambar 2.3 adalah bentuk gambar asli dari LCD karakter 16x2 dan rangakaian
Gambar 2.3. Modul LCD Karakter 2x16
Gambar 2.4. Rangkaian interface ke LCD Karakter 2x16
Dari gambar 2,4, fungsi dari pin, table 2.10.
Tabel 2.10 Pin dan Fungsi
PIN Name Function
1 VSS Ground voltage 2 VCC +5V
3 VEE Contrast voltage
4 RS
Register Select
0 = Instruction Register 1 = Data Register
5 R/W
Read/ Write, to choose write or read mode 0 = write mode
[image:43.612.126.513.539.710.2]0 = start to lacht data to LCD character 1= disable
7 DB0 LSB 8 DB1 - 9 DB2 - 10 DB3 - 11 DB4 - 12 DB5 - 13 DB6 - 14 DB7 MSB
15 BPL Back Plane Light 16 GND Ground voltage
( http//www.Tutorial Microcontroller MCS-51 ATMEL ISP.htm, 08/07/2008)
Display karakter pada LCD diatur oleh pin EN, RS dan RW:
Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa anda
sedang mengirimkan sebuah data. 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
untuk sejumlah waktu tertentu dan berikutnya set EN ke logika low “0” lagi.
Jalur RS adalah jalur Register Select. Ketika RS berlogika low “0”, data akan
dianggap sebagi sebua perintah atau instruksi khusus ( seperti clear screen, posisi
kursor dll ). Ketika RS berlogika high “1”, data yang dikirim adalah data text yang
akan ditampilkan pada display LCD. Sebagai contoh, untuk menampilkan huruf “T”
pada layar LCD maka RS harus diset logika high “1”.
Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0),
high ”1”, maka program akan melakukan pembacaan memori dari LCD. Sedangkan
pada aplikasi umum pin RW selalu diberi logika low ”0”.
Pada akhirnya, bus data terdiri dari 4 atau 8 jalur ( bergantung pada mode
operasi yang dipilih oleh user ). Pada kasus bus data 8 bit, jalur diacukan sebagai DB0
s/d DB7.
Beberapa perintah dasar yang harus dipahami adalah inisialisasi LCD Character.
Function Set
Mengatur interface lebar data, jumlah dari baris dan ukuran font karakter
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 1 DL N F X X
CATATAN:
X : Don’t care
DL: Mengatur lebar data
DL=1, Lebar data interface 8 bit ( DB7 s/d DB0) DL=0, Lebar data interface 4 bit ( DB7 s/d DB4)
Ketika menggunakan lebar data 4 bit, data harus dikirimkan dua kali
N: Pengaktivan baris
N=0, 1 baris N=1, 2 baris
F: Penentuan ukuran font karakter
F=0, 5x7 F=1, 5x8
Entry Mode Set
Mengatur increment/ decrement dan mode geser
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 0 1 I/D S
Catatan:
I/D: Increment/ decrement dari alamat DDRAM dengan 1 ketika kode karakter
I/D = “0”, decrement I/D= “1”, increment
S: Geser keseluruhan display kekanan dan kekiri
S=1, geser kekiri atau kekanan bergantung pada I/D S=0, display tidak bergeser
Display On/ Off Cursor
Mengatur status display ON atau OFF, cursor ON/ OFF dan fungsi Cursor Blink
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 1 D C B
D : Mengatur display
D = 1, Display is ON D = 0, Display is OFF
Pada kasus ini data display masih tetap berada di DDRAM, dan dapat ditampilkan
kembali secara langsung dengan mengatur D=1.
C : Menampilkan kursor C = 1, kursor ditampilkan C = 0, kursor tidak ditampilkan
B : Karakter ditunjukkan dengan kursor yang berkedip B=1, kursor blink
Clear Display
Perintah ini hapus layar
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 0 0 0 1
Geser Kursor dan Display
Geser posisi kursor atau display ke kanan atau kekiri tanpa menulis atau baca data
0 0 0 0 0 1 S/C R/L X X
Catatan : x = Dont care
S/C R/L Note
0 0 Shift cursor position to the left 0 1 Shift cursor position to the right 1 0 Shift the entire display to the left 1 1 Shift the entire display to the right
POSISI KURSOR
Modul LCD terdiri dari sejumlah memory yang digunakan untuk display. Semua teks
yang kita tuliskan ke modul LCD adalah disimpan didalam memory ini, dan modul
LCD secara berturutan membaca memory ini untuk menampilkan teks ke modul LCD
[image:47.612.127.523.78.236.2]tersebut, gambar 2.5.
Gambar 2.5 Modul LCD( http//www.Tutorial
Microcontroller MCS-51 ATMEL ISP.htm, 08/07/2008)
Dari gambar 2.5 terlihat peta memori dimana, daerah yang berwarna biru ( 00
s/d 0F dan 40 s/d 4F ) adalah display yang tampak. Sebagaimana yang anda lihat,
jumlahnya sebanyak 16 karakter per baris dengan dua baris. Angka pada setiap kotak
adalah alamat memori yang bersesuaian dengan posisi dari layar. Demikianlah
karakter pertama di sudut kiri atas adalah menempati alamat 00h. Posisi karakter
berikutnya adalah alamat 01h dan seterusnya.
Akan tetapi, karakter pertama dari baris 2 sebagaimana yang ditunjukkan pada
perintah ke LCD untuk mengatur letak posisi kursor pada baris dan kolom tertentu.
Instruksi Set Posisi Kursor adalah 80h. Untuk ini kita perlu menambahkan alamat
lokasi dimana kita berharap untuk menempatkan kursor.Sebagai contoh, kita ingin
menampilkan kata ”World” pada baris ke dua pada posisi kolom ke sepuluh. Sesuai
peta memori, posisi karakter pada kolom 11 dari baris ke dua, mempunyai alamat
4Ah, sehingga sebelum kita tulis kata ”World” pada LCD, kita harus mengirim
instruksi set posisi kursor, dan perintah untuk instruksi ini adalah 80h ditambah
dengan alamat 80h+4Ah =0Cah. Sehingga dengan mengirim perintah Cah ke LCD,
akan menempatkan kursor pada baris kedua dan kolom ke 11 dari DDRAM.
Set Alamat Memori DDRAM
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 1 A A A A A A A
Catatan:
A:Alamat RAM yang akan dipilih
Sehingga alamat RAM LCD adalah 000 0000 S/D 111 1111 b atau 00 s/d 7Fh
PEMBUATAN SISTEM RANGKAIAN
3.1 UMUM
Pembuatan sistem alat uji Kabel LAN berbasiskan mikrokontroler AT89S51 dibagi
menjadi dua bagian yaitu perancangan perangkat keras (hardware) dan perancangan
perangkat lunak (software). Pada perancangan hardware akan dibahas tentang
perancangan blok diagram, skematik dan pembuatan PCB. Sementara pada
perancangan software akan dibahas tentang perancangan flowchart, bahasa assembly
untuk setiap bagian dari sistem dan perancangan program secara keseluruhan.
3.2 Blok Diagram
Pada tahap awal penulis membuat blok diagram yang berguna untuk melangkah ke
tahap berikutnya. Blok diagram merupakan cara yang paling sederhana untuk
menjelaskan suatu sistem atau analisa dan menjelaskan cara kerja rangkaian secara
umum. Blok diagram mempunyai hubungan yang sangat erat sekali dalam proses
perancangan. Blok diagram merupakan penyederhanaan dari diagram skematik,
dimana diagram blok ini menyatakan hubungan dari satu atau lebih unit komponen
yang memiliki kesatuan kerja sendiri dari diagram ini tidak mempunyai bentuk dan
Blok diagram dari sistem Alat Uji Kabel LAN yang berbasiskan
[image:50.612.153.478.152.324.2]mikrokontroler AT89S51, gambar 3.1.
Gambar 3.1 Diagram Blok Alat Uji Kabel LAN
Keterangan dari masing-masimg blok tersebut dapat dilihat pada pembahasan berikut
ini :
1. Blok sistem minimum mikrokontroler AT89S51 sebagai pusat pemroses dari
rangkaian sekaligus rangkaian pendukungnya. Sistem minimum ini akan
berfungsi setelah program lengkap dimasukkan ke dalam EPROM internal
yang dimiliki IC chip tunggal AT89S51.
2. Blok rangkaian LCD Display adalah untuk menampilkan hasil pengujian
apakah kabel yang diuji hubungannya baik atau terjadi kesalahan.
3. Blok Tombol Start merupakan tombol yang berfungsi untuk memulai
pengujian setelah kabel yang dihubungkan pada konektor RJ-45.
4. Blok Power Supplay berfungsi untuk memberikan catu daya ke mikrokontroler
agar dapat berfungsi.
Microcontroller AT89S51
LCD Display
Push Button (Start)
Power Supplay RJ-45
3.3 Spesifikasi Sistem
Dalam pembuatan alat ini, spesifikasi sistem yang diinginkan adalah sebagai berikut :
1. Alat uji kabel LAN ini dapat menguji kabel dengan konfigurasi lurus dan
silang.
2. Output atau hasil dari pengujian ditampilkan pada LCD matriks dengan ukuran
layar 16 karakter x 2 baris.
3. Catu daya rangkaian dapat menggunakan baterai 9 Volt atau adaptor 220 Volt
AC ke 9 Volt DC dengan arus minimum 1 Ampere.
3.4 Pembuatan PCB (Printed Circuit Board)
Proses pembuatan PCB atau (Printed Circuit Board) merupakan tahapan yang penting
dalam proses pembuatan peralatan elektronika. Proses pembuatan PCB yang
dilakukan adalah sebagai berikut :
1. Melakukan penggambaran PCB menggunakan software Eagle pada komputer.
2. Mencetak layout PCB pada media transparan untuk proses cetak sablon pada
papan PCB.
3. Melakukan pemindahan gambar layout PCB pada papan PCB yang berlapis
tembaga melalui proses cetak sablon.
4. Melakukan proses pelarutan menggunakan cairan FeCl3 untuk menghilangkan
lapisan tembaga yang tidak diperlukan.
5. membersihkan tinta atau cat yang ada pada lapisan PCB menggunakan cairan
6. Melakukan proses pengeboran untuk membuat lubang-lubang untuk tempat
meletakkan komponen-komponen yang digunakan.
7. Melapisi jalur-jalur tembaga menggunakan timah atau cairan clear agar tidak
mudah terjadi korosi pada lapisan PCB.
8. Setelah itu melakukan proses assembly atau merakit semua komponen yang
diperlukan pada rangkaian.
3.5 Pembuatan Sistem Mikrikontroler AT89S51
Rangkaian mikrokontroler pada gambar 3.3 merupakan pusat pengolahan data dan
pusat pengendali alat. Di dalam rangkaian mikrokontroler ini terdapat empat buah port
yang digunakan untuk menampung input atau output data dan terhubung langsung
oleh rangkaian-rangkaian dari alat pengendali. Rangkaian ini tersusun atas osilator
kristal yang berfungsi untuk membangkitkan pulsa internal dan dua buah kapasitor
(C2 dan C3) 30 pF yang berfungsi untuk menstabilkan frekuensi. Kapasitor (C1) 10
µF dan resistor (R1) 330 Ω berfungsi untuk rangkaian Reset sebelum program yang
Gambar ATminimum adalah sebagai berikut :
Gambar 3.3 ATMinimum
3.6 Rangkaian Switch Start
Rangkaian Switch Start pada Gambar 3.4 di bawah ini berfungsi sebagai rangkaian
pemberi sinyal awal agar mikrokontroller dapat menjalankan program untuk menguji
kabel LAN yang sudah terpasang pada rangkaian. Rangkaian ini akan mengeluarkan
logika ”0” jika tombol ditekan dan akan mengeluarkan logika ”1” jika tombol tidak
ditekan.
Gambar 3.4 Rangkaian Reset Switch
3.7 Rangkaian Display
Rangkaian ini menggunakan komponen LCD dengan spesifikasi sebagai berikut :
1. Terdiri dari 16 karakter x 2 baris.
2. Minimum range power supplay 2,3 volt sampai 5 volt.
3. Terdiri dari 16 pin.
4. Memiliki Backlamp yaitu lampu latar belakang untuk menerangi tulisan.
[image:54.612.174.474.273.537.2]Rangkaian Display ditunjukkan pada Gambar 3.5.
Gambar 3.5 Rangkaian Display
3.8 Rangkaian Catu Daya (Power Supplay)
Rangkaian catu daya ini terdiri dari transformator step-down 220 V AC ke 9 Volt DC,
Dioda, kapasitor 2200 µF dan IC regulator 7805. Dioda berfungsi sebagai pengubah
keluaran catu daya menjadi 5 Volt DC. Sedangkan kapasitor berfungsi untuk
memfilter tegangan DC yang keluar dari rangkaian dioda jembatan menjadi DC yang
stabil dan rata. Rangkaian catu daya ini menggunakan trafo 1000 mA, sehingga arus
maksimum yang dihasilkan adalah 1 Ampere yang digunakan untuk memberikan
tegangan 5 Volt DC ke rangkaian mikrokontroler. Gambar rangkaian catu daya
ditunjukkan pada gambar 3.6.
Gambar 3.6 Rangkaian Catu Daya
3.9 Perangkat Lunak (Software)
Di dalam pembuatan perangkat lunak, penulis memakai Mikrokontroler AT89S51
dengan IC yang memiliki kapasitas sebesar 4 Kbyte Flash PEROM dengan jumlah
kaki, 40 kaki. Mikrokontroler ini menggunakan bahasa assembly di dalam penulisan
programnya dan hasil programnya dinamakan assembly listing dan tersimpan dalam
file dan ekstensi LST. Proses pengisian program ke IC mikrokontroler AT89S51
yaitu Port 01 dan Port 2 untuk Data In/Out, Port 0 untuk rangkaian LCD Display dan
Port 3.2 untuk Tombol Start.
Pembuatan perangkat lunak ini dimulai dengan membahas cara perakitan
bahasa assembler mulai dari pembuatan flowchart hingga pembuatan program untuk
membaca input dari Data, dan menampilkan hasil pengukuran ke LCD Display.
3.9.1 Algoritma Program
Untuk dapat melaksanakan fungsinya mikrokontroler AT89S51 harus diberi program,
dimana program tersebut merupakan urutan kegiatan yang akan dilaksanakan
mikrokontroler. Sebelum merancang suatu program, maka harus terlebih dahulu
dirancang algoritma dan diagram alir (flowchart) tersebut. Dengan adanya algoritma,
maka dapat diketahui fungsi-fungsi program dan langkah-langkah dari pembuatan
program. Sedangkan dengan diagram alir (flowchart), maka dapat diketahui
urutan-urutan prose atau perintah-perintah yang dijalankan program tersebut.
Adapun algoritma dari program Alat Uji Kabel LAN ini adalah sebagai berikut :
1. Inisialisasi.
2. Ambil data dari port P1 pada mikrokontroler.
3. Bandingkan data yang ada di port P3, apakah data tersebut sama.
4. Jika data sama, Tampilkan kabel OK pada LCD. Jika data tidak sama,
3.9.2 Diagram Alir (Flowchart)
Untuk membuat sebuah software terlebih dahulu dibuat flowchart seperti yang
[image:57.612.235.475.166.582.2]ditunjukkan pada Gambar 3.7.
Gambar 3.7. Flowchart Alat Uji Kabel LAN !
! "
3.10 Bahasa Assembler
Berikut ini akan dibahas cara pembuatan bahasa assembler sesuai dengan yang
direncanakan pada flowchart yang telah dibuat sebelumnya.
Kode-kode bahasa assembly di atas berfungsi untukmenginisialisasi LCD
Display agar dapat menampilkan karakter-karakter yang diprogramkan pada LCD
Display tersebut.
Adapun program untuk membaca tombol Start adalah sebagai berikut:
TbStart equ p2.0
BacaTbStart: JB TbStart, BacaTbStart
Acall UjiKabel Ret
Kode di atas berfungsi untuk membaca tombol start yang terhubung dengan
port 2.0. Jika data pada tombol adalah logika ”1” maka program akan terus membaca
tombol tersebut sampai berlogika ”0”. Setelah itu program akan memanggil sub
ANALISA DAN PENGUKURAN
4.1 Umum
Untuk mengetahui apakah sistem yang dibuat telah bekerja sesuai dengan spesifikasi
yang diinginkan, maka perlu dilakukan suatu langkah pengujian terhadap seluruh
perangkat yang sudah dibuat baik perangkat keras (hardware) maupun perangkat
lunak (software).
4.2 Sistem mikrokontroller AT89S51
Bagian ini merupakan pemroses keseluruhan dari sistem ini. Rutin yang dikerjakan
dalam bahasa assembling yang selanjutnya didownload pada memori internal yang
tersedia.
Mikrokontroler ini buatan ATMEL yang kompatibel dengan keluaran
MCS-51, di dalamnya terdapat 4 Kbyte PEROM dengan 32 jalur I/O. Pada rangkaian ini
tidak semua port dipakai (P0, P1, P2, P3) sebagai input dan output. Rangkaian
eksternal sebagai pembangkit frekuensi yang dipakai sesuai karakteristiknya yaitu
pada C2, C3 dan XTAL sedangkan untuk rangkaian reset dipergunakan komponen C1
Tabel 4.1 Titik Pengukuran Kondisi Power On Reset
TITIK PENGUKURAN POWER ON
TP1 H→L
TP2 H↔L
TP3 L
Pada saat sumber daya diaktifkan, maka akan dimulai pengisian pada kapasitor
C1. Pada awal pengisian kapasitor sesuai dengan sifatnya, kapasitor akan terhubung
singkat, Vc = 0 Volt (Gambar 4.1), sehingga rangkaian ekivalennya tampak pada
gambar 4.2(a). Arus yang mengalir dari Vcc langsung ke kaki RST sehingga kaki
tersebut berlogika 1, kemudian kapasitor terisi sehingga tegangan pada kapasitor (Vc)
pada TP1 yaitu titik antara kapasitor C1 dan resistor R1 mencapai Vcc. Resistor R1
terhubung ke ground otomatis saat kapasitor sudah mencapai Vcc langsung
mengalami drop tegangan. Sehingga tegangan pada R1 atau tegangan RST akan
[image:60.612.247.394.447.520.2]berlogika 0 (Gambar 4.2(b)) dan proses reset selesai.
Gambar 4.1 Grafik Pengisian Kapasitor terhadap Waktu
Gambar 4.2 Aliran Arus dan Perubahan Tegangan Reset Otomatis
4.3 Analisa Program
Dalam penulisan analisa program ini penulis akan menganalisa program yang ada
secara bertahap, dimana proses pembuatan program dari awal sampai terselesaikannya
program secara keseluruhan.
4.3.1 Analisa Program Tombol Start
Kode-kode bahasa assembly di atas berfungsi untukmenginisialisasi LCD Display
agar dapat menampilkan karakter-karakter yang diprogramkan pada LCD Display
tersebut.
Adapun program untuk membaca tombol Start adalah sebagai berikut:
TbStart equ p2.0
BacaTbStart: JB TbStart, BacaTbStart
Acall UjiKabel Ret
Kode di atas berfungsi untuk membaca tombol start yang terhubung dengan
tombol tersebut sampai berlogika ”0”. Setelah itu program akan memanggil sub
program UjiKabel.
4.3.2 Analisa Program Awal
Alamat awal dari program ditentukan oleh perintah ORG dimana, alamat awal
tersebut diletakkan pada alamat 0h.
Org 0h
Pertama kali program melakukan pemberian logika 1 pada masing-masing port
yaitu p2.6 dan p2.7.
Setb p2.6 Setb p2.7
4.3.3 Analisa Program Inisialisasi Port
Dalam pembuatan program, dibutuhkan sebuah inisialisasi terhadfap masing-masing
port dan memori RAM. Misalnya untuk alamat port 0 maka dituliskan p0 equal
dengan 080h, yang artinya alamat port 0 tersebut berada di alamat 080h.
P0 equ 080h
P1 equ 090h
P2 equ 0a0h
4.3.4 Analisa Program Inisialisasi LCD
Program inisialisasi untuk LCD berfungsi untuk mengaktifkan LCD agar LCD dapat
menampilkan karakter – karakter atau huruf – huruf yang dikeluarkan oleh
Init_lcd:
mov r1,#00000001b ;Display clear call write_inst ;EN=pulse dan RS=0
mov r1,#00111000b ;Function set, ;Data 8 bit,2 line font 5x7 call write_inst ;Set bit EN=pulse dan RS=0
mov r1,#00001100b ;Display on, ;cursor off,cursor blink off call write_inst ;EN=pulse dan RS=0
mov r1,#00000110b ;Entry mode, Set increment call write_inst
ret
Baris – baris perintah diatas berfungsi untuk mengaktifkan bit – bit yang ada
pada LCD agar dapat berfungsi sebagai penampil karakter 16 x 2 baris.
4.3.5 Analisa Program pada Tampilan LCD
Program ini untuk melihat apakah tampilan pada LCD sama seperti apa yang diperintahkan/di-instruksikan pada program seperti berikut, dari pesan 1 sampai pesan 9.
Pesan1:
db ’Cable LAN Tester’,00h Pesan2:
db ’ BY DEMI ’,00h
Pesan3:
db ’= Tekan Tombol =’,00h Pesan4:
db ’= Untuk Mulai =’,00h Pesan5:
db ’ Straight Cable ’,00h Pesan6:
db ’ OK !! ’,00h Pesan7:
db ’ Cross Cable ’,00h Pesan8:
db ’ OK !! ’,00h Pesan9:
db ’ Cable Error ’,00h end
4.3.6 Analisa Program Uji Kabel LAN
Program uji kabel LAN berfungsi untuk memeriksa sambungan kabel LAN atau kabel
UTP yang telah dikirim pada konektor telah baik atau tidak. Cara yang dilakukan
dibaca dari port 3 microcontroller. Jika data tersebut sama maka kabel dalam kondisi
bagus, jika data tidak sama maka kabel dalam keadaan tidak baik.
Program alat uji kabel ini adalah sebagai berikut :
Program diatas akan bekerja dengan menekan tombol merah yang terhubung
pada port 3.2 microcontroller. Jika tombol tersebut ditekan maka program akan
mengirimkan data AA hexa ke port 1 dan akan dibaca pada port 3. jika data sama
maka program akan mengirimkan kembali data 55 hexa ke port 1 dan dibaca oleh port
3. jika data sama maka program akan menampilkan ”STRIGHT CABEL OK”.