• Tidak ada hasil yang ditemukan

BAB 2 DASAR TEORI. 2.1 Umum. LAN (Local Area Network) merupakan rancangan dasar jaringan komputer. Secara

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 DASAR TEORI. 2.1 Umum. LAN (Local Area Network) merupakan rancangan dasar jaringan komputer. Secara"

Copied!
35
0
0

Teks penuh

(1)

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 sering menggunakan saluran telepon yang telah tersedia.

(2)

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), mengurangi pemakaian kabel dan penambahan jumlah pengguna dapat dilakukan

(3)

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. d. Bermain game jaringan.

(4)

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 chip tersebut dari beberapa input yaitu : clock osilator, analog komparator positif

(5)

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 :

Gambar 2.1 Konfigurasi pin mikrokontroler AT89S51 (http//www.atmel.com, 18/06/2008)

(6)

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, port ini dapat memberikan output sink keempat buah input TTL.

(7)

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)

(8)

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)

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, namun sacara pisik kedua memori tersebut tidak saling berhubungan.

(10)

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 mikrokontroller dengan operasi rangkaian luar.

(11)

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 ditulis ulang beberapa kali dan dapat dihapus secara elektrik atau dengan tegangan listrik. UV- EPROM harnya lebih dari flash PEROM, karena itu Flash PEROM lebih

(12)

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 instruksi bahasa pemograman assembler.

(13)

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

; bilangan tertentu (data EQU 05)

(14)

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)

c. Pengalamatan Kode

(15)

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 :

(16)

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. Hasilnya akan di simpan di akumulator.

(17)

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 tanpa syarat.

(18)

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. Dimana $ artinya lompat ke nilai program counter pada baris itu sendiri.

(19)

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, DEC, MUL, dan DIV.

(20)

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.4 Special Function Register (SFR)

Special function register (SFR) adalah register-register yang mempunyai fungsi khusus, diantaranya ada yang digunakan untuk mengatur input output data dari mikrokontroler.

(21)

Berikut ini adalah penjelasan secara singkat SFR-SFR beserta fungsinya : 2.4.1 Accumulator

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.2 Register B

Register B dapat digunakan untuk proses aritmatika dan dapat juga difungsikan sebagai register biasa.

2.4.3 Register 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 (Serial Control). PCON (Power Control). Tim Lab. Mikroprosesor, 2007)

(22)

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.

c. Lock Bit 3, sama dengan Lock Bit 2, tetapi akses ke memori eksternal tidak dapat dilakukan.

(23)

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

(24)

2.6.1 Timer Mode Register (TMOD) 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.2 THx 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 TL1 : Timer 1 Low Byte terletak pada alamat 8DH

(25)

2.6.3 Timer 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 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.

(26)

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

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) biasanya digunakan dalam daerah yang memiliki interferensi elektromagnetik kuat

(27)

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.

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 straight adalah: (seperti aturan EIA/TIA RJ-45 568B) putih-orange, putih-hijau, biru, putih-biru, hijau, putih-coklat, coklat.

(28)

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 diperhatikan dalam membuat sambungan kabel crossover. Seperti table 2.8 berikut :

(29)

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 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 interface ke LCD Karakter 16x2, gambar 2.4.

(30)

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

1 = read mode

(31)

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), maka informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika

(32)

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 dituliskan ke DDRAM.

(33)

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 display. Fungsi ini digunakan untuk koreksi atau pencarian display

(34)

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 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 peta memori adalah pada alamat 40h. Dimikianlah kita perlu untuk mengirim sebuah

(35)

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

Gambar

Gambar 2.1 Konfigurasi pin mikrokontroler   AT89S51 (http//www.atmel.com, 18/06/2008)
Tabel  2.1  Konfigurasi  Port  3.0  Mikrokontroler  AT89S51
Gambar 2.2 Blok Diagram Mikrokontroller AT89S51           (http//www.atmel.com, 18/06/2008)
Table 2.2 Simbol Assembler Khusus
+7

Referensi

Dokumen terkait

Selama melakukan kerja praktik di Baitul Qiradh Darul Mizan Banda Aceh dalam waktu lebih kurang sebulan setengah mulai dari tanggal 27 Maret sampai dengan tanggal 19

Pada proses penguningan buah jeruk mengalami perubahan tekstur yang semula keras menjadi lunak tetapi ada yang agak lunak, perubahan warna yang semula hijau menjadi kuning

Pemerintah Kabupaten Aceh Utara melalui Badan Perencanaan Daerah (Bappeda), merencanakan hingga tahun 2020 lahan yang akan dan dapat dikembangkan untuk irigasi teknis dengan

ANALISIS KONTRIBUSI PENDAPATAN ASLI DAERAH TERHADAP BELANJA MODAL PADA PEMERINTAHAN DAERAH KABUPATEN / KOTA PROVINSI JAWA TIMUR ; Nora Devi Yanti; 110810301040;

Hasilnya berupa sistem informasi aset manajemen berbasis web di SMP Negeri 35 Surabaya, yang dapat digunakan oleh user untuk mendapatkan informasi mengenai data-data

Hal ini dilihat dari hasil estimasi t-hitung, variabel pangsa pasar memiliki nilai t- hitung < t-tabel yang artinya variabel pangsa pasar sebagai proksi dari struktur pasar

táblázat: A bükk fafaj átmérő szerinti, régi választékszerkezetének aktualizálása egy későbbi, összesített választékszerkezet adatai segítségével.. Table 8:

Berdasarkan analisis dan pembahasan hasil penelitian yang telah dilakukan dapat ditarik kesim- pulan bahwa eWOM grup Komunitas Kamera Apa Saja (KOKAS) di Facebook