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

dokumen-dokumen yang mirip
Gambar 1. Rangkaian interface ke LCD Karakter 2 x16

BAB 2 LANDASAN TEORI. Dalam bab ini penulis akan membahas tentang komponen-komponen yang

MIKROKONTROLER AT89S52

I/O dan Struktur Memori

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

BAB 2 TINJAUAN TEORITIS

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

CABLE LAN TESTER DENGAN TAMPILAN LCD TUGAS AKHIR DEMI SYAPUTRI

4. Port Input/Output Mikrokontroler MCS-51

BAB 2 LANDASAN TEORI

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi

Mikrokontroler 89C51 Bagian II :

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

Pendahuluan Mikrokontroler 8051

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer,

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

Gambar 1.1. Diagram blok mikrokontroller 8051

BAB II TINJAUAN PUSTAKA

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

BAB II LANDASAN TEORI

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

Memprogram Port sebagai Output dan Input Sederhana

AKSES MEMORI Menggunakan DT-51 MinSys

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

TIMER DAN COUNTER MIKROKONTROLER ATMEL

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT.

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

M1632 MODULE LCD 16 X 2 BARIS (M1632)

BAB 2 LANDASAN TEORI. Dalam bidang elektronika, perlahan-lahan peralatan-peralatan manual mulai digantikan

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

BAB II LANDASAN TEORI

Pengendalian 8 buah Motor oleh DST-51

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB II LANDASAN TEORI

Mengenal bahasa assembly

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

BAB II DASAR TEORI. Laporan Tugas Akhir Controller Aktuator Plant/Process. Gambar 2.1 Sistem Kontrol Closed Loop

BAB 2 LANDASAN TEORI. bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke Flash,

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika. Assembler Bahasa pemrograman mikrokontroler MCS-51

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius

PANDUAN DASAR MIKROKONTROLER KELUARGA MCS-51

PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

Mikrokontroler AVR. Hendawan Soebhakti 2009

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

Sumber Clock, Reset dan Antarmuka RAM

BAB II LANDASAN TEORI. Definisi PLC menurut National Electrical Manufacturing Association (NEMA)

Mikroprosesor Z80 Suryanto Sutikno

BAB 2 TINJAUAN TEORITIS

Gambar 3.1 Blok Diagram Port Serial RXD (P3.0) D SHIFT REGISTER. Clk. SBUF Receive Buffer Register (read only)

BAB II TEORI DASAR DAN PENUNJANG. tersebut. Berikut ini penulis akan membahas tentang prinsip-prinsip dasar dari

MICROCONTROLER AVR AT MEGA 8535

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER

BAB 2 TINJAUAN TEORITIS. Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya

LAMPIRAN D DATA SHEET

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III PERANCANGAN SISTEM

BAB II TEORI DASAR PENUNJANG

BAB 2 LANDASAN TEORI

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

Antarmuka LCD pada DST-AVR

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah

Memprogram Interupsi AT89S51

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY

KOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485

BAB II TEORI DASAR. peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor

AD Channel AD Conversion

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)

Pendahuluan BAB I PENDAHULUAN

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1

SST-01 LCD Sub System 01 LCD Interface

BAB III RANCANGAN DAN CARA KERJA ALAT

BAB II. PENJELASAN MENGENAI System-on-a-Chip (SoC) C8051F Pengenalan Mikrokontroler

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

BAB III PERANCANGAN SISTEM

I. Pendahuluan. Mikroprosesor CPU. Gambar 1. Perbedaan Mikrokontroler dengan Mikroprosesor

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

AT89S52 8kByte In-System Programmable Mikrokontroler

Menggunakan Bahasa Pemrograman Assembly

Program Studi Fisika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Lambung Mangkurat

APLIKASI HITACHI M1632 LCD PADA SC - AVR

BAB 2 TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI. Component tester adalah instrument elektronika, atau alat penguji komponen yang

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

BAB 2 LANDASAN TEORI

APLIKASI MIKROKONTROLER

TEORI DASAR MIKROKONTROLER

Transkripsi:

BAB 2 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.

5 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 sekecilkecilnya, 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

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

7 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

8 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)

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

10 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) Program store enable digunakan untuk mengakses memori program eksternal.

11 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. 8. Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika.

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

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

14 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

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

16 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 A RO sampai R7 DPTR PC C AB (http//www.atmel.com18/06/2008) Arti Akumulator Register serbaguna Data pointer. Register 16 bit Program counter. Register 16 bit yang berisi alamat intruksi berikutnya yang akan dijalankan Carry flag Akumulator register B. pasangan register untuk perkalian dan pembagian. 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) contohnya bilangan 5.

17 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

18 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 : Setb RXD

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

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

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

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

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

24 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)

25 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 diverivy oleh 89S51 Programmer. c. Lock Bit 3, sama dengan Lock Bit 2, tetapi akses ke memori eksternal tidak dapat dilakukan.

26 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 3. Timer Control Register (TCON) di alamat 88H

27 2.6.1 Timer Mode Register (TMOD) Pola bit register TMOD, tabel 2.3. Tabel 2.3 Register TMOD Timer 1 Timer 0 Gate C/T (1) M1 (1) M0 (1) Gate (0) C/T (0) MI (0) M0 (0) (1) (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

28 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. TCON.2 atau IT1 : Interrupt 1 type control byte. Set/clear oleh software untuk

29 mengimplementasikan sisi turun/level rendah trigger dari interupsi eksternal. TCON. 1 atau IE0 : TCON. 0 atau IT0 : Exsternal Interrupt 0 edge flag. 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

30 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 Pasangan kedua Pasangan ketiga Pasangan keempat (Utomo, E.P, 2006) Putih/biru Biru Putih/orange Orange Putih/hijau Hijau Putih/cokelat Coklat 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.

31 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 :

32 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) berikut ini: Proses transmisi data yang terjadi pada crossover cable adalah seperti table 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.

33 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 5 R/W 6 E Enable Register Select 0 = Instruction Register 1 = Data Register Read/ Write, to choose write or read mode 0 = write mode 1 = read mode

34 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 0 = start to lacht data to LCD character 1= disable ( 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

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

36 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 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

37 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

38 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 ( http//www.tutorial Microcontroller MCS-51 ATMEL ISP.htm, 08/07/2008)