BAB 2 TINJAUAN TEORITIS

dokumen-dokumen yang mirip
BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

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

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

BAB 2 LANDASAN TEORI

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

BAB 2 TINJAUAN TEORITIS

I/O dan Struktur Memori

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

BAB II LANDASAN TEORI

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

digunakan untuk pembahasan dan cara kerja dari rangkaian Teori komponen-komponen pendukung.

BAB II TINJAUAN PUSTAKA

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

BAB 2 LANDASAN TEORI

Please purchase PDFcamp Printer on to remove this watermark. BAB 2 DASAR TEORI

BAB 2 LANDASAN TEORI

MIKROKONTROLER AT89S52

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

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

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

BAB 2 DASAR TEORI. 2.1 Perangkat Keras Prinsip Kerja Pembuka/Penutup Pintu

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

Pendahuluan Mikrokontroler 8051

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

BAB II LANDASAN TEORI. berukuran kecil (mikro). Sebelum mikrokontroller ada, terlebih dahulu muncul yang

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

BAB 2 LANDASAN TEORI 2.1 M

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. adanya kebocoran gas. Sensor ini merupakan suatu semikonduktor oksida-logam,

BAB 2 LANDASAN TEORI

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

BAB 2. cara merancang alat yang akan di buat sesuai dasar teori. Sebelum merancang suatu

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB 2 DASAR TEORI. sistem atau rangkaian terlebih dahulu membuat blok diagramnya. Sensor air sederhana

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

BAB II TEORI Telepon Dual Tone Multiple Frequency (DTMF) sebagai DTMF (Dual Tone Multiple Frequency).

Pencipta bahasa C adalah Brian W. Kernighan dan Dennis M. Ritchie pada. sekitar tahun C adalah bahasa pemrograman terstruktur, yang membagi

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

Memprogram Port sebagai Output dan Input Sederhana

BAB 2 TINJAUAN PUSTAKA

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

AKSES MEMORI Menggunakan DT-51 MinSys

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

Mikroprosesor Z80 Suryanto Sutikno

Gambar 1.1. Diagram blok mikrokontroller 8051

BAB 2 TINJAUAN TEORITIS. Sinar Kosmik, Mikrowave, Gelombang listrik dan Sinar Inframerah.

Mikrokontroler 89C51 Bagian II :

BAB II DASAR TEORI. disebut pesawat Telepon Dual Tone Multi Frequency (DTMF). Pada pesawat telepon

BAB 2 LANDASAN TEORI PEMANCAR GELOMBANG INFRAMERAH. 2.1 Diagram Blok Pemancar Gelombang Inframerah

SISTEM KENDALI JARAK JAUH UNTUK KONTROL BUKA DAN TUTUP PINTU DENGAN MIKROKONTROLLER AT89S51

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah

4. Port Input/Output Mikrokontroler MCS-51

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :

BAB 2 LANDASAN TEORI. dunia elektronika, khususnya dunia mikroelektronika. Penemuan silikon

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

BAB II TINJAUAN PUSTAKA

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

BAB 2 LANDASAN TEORI PEMBUKA/PENUTUP PINTU JARAK JAUH. sistem atau rangkaian terlebih dahulu membuat blok diagramnya.

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

BAB II LANDASAN TEORI. Perkembangan robot sangat berkaitan erat dengan adanya kebutuhan

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

BAB 2 TINJAUAN PUSTAKA

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. memudahkan penggunaan elektronik dalam berbagai

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

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

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

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

Mikrokontroler AVR. Hendawan Soebhakti 2009

BAB III ANALISA DAN CARA KERJA RANGKAIAN

Sumber Clock, Reset dan Antarmuka RAM

BAB II LANDASAN TEORI

AT89S52 8kByte In-System Programmable Mikrokontroler

BAB III PERANCANGAN DAN PEMBUATAN ALAT

Sistem Mikroprosessor

BAB II TINJAUAN PUSTAKA

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

CPU tersebut sama-sama menjalankan program dari suatu lokasi atau tempat, biasanya dari ROM (Read Only Memory) atau RAM (Random Access Memory);

BAB II LANDASAN TEORI. keras (hardware) yang dapat mengolah data, menghitung, mengingat dan

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

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

BAB III PERANCANGAN SISTEM

BAB II LANDASAN TEORI

Pengendalian 8 buah Motor oleh DST-51

RANCANG BANGUN PENGAMAN MOBIL BERBASIS MIKROKONTROLER AT89S51 DENGAN APLIKASI TELEPON SELULER SEBAGAI INDIKATOR ALARM

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

MICROCONTROLER AVR AT MEGA 8535

USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI

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

BAB 2 LANDASAN TEORI

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

BAB III RANCANGAN DAN CARA KERJA ALAT

BAB 3 PERANCANGAN ALAT DAN PROGRAM

BAB 3 PERANCANGAN SISTEM

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

Transkripsi:

7 BAB 2 TINJAUAN TEORITIS 1 Konveyor Konveyor hanya bergerak ke satu arah saja, konveyor digerakkan dengan motor stepper 12V type. Sinyal keluaran dari motor stepper untuk menggerakkan konveyor dirangkaikan dengan rangkaian driver sehingga bisa menggerakkan konveyor yang difungsikan untuk membawa/memindahkan barang. Dengan adanya konveyor inilah pekerjaan untuk untuk membawa/memindahkan barang semakin mudah.

8 Box/wadah pengisian Belt conveyor Gear Motor stepper Gambar 2.1 Konstruksi Motor Stepper Pada Konveyor 2

9 Motor Stepper 1 Gambaran Umum Motor langkah (stepper) banyak digunakan dalam berbagai aplikasi, dipergunakan apabila dikehendaki jumlah putaran yang tepat atau di perlukan sebagian dari putaran motor. Suatu contoh dapat di jumpai pada disk drive, untuk proses pembacaan dan/atau penulisan data ke/dari cakram (disk), head baca-tulis ditempatkan pada tempat yang tepat di atas jalur atau track pada cakram, untuk head tersebut di hubungkan dengan sebuah motor langkah. Aplikasi penggunaan motor langkah dapat juga di jumpai dalam bidang industri atau untuk jenis motor langkah kecil dapat di gunakan dalam perancangan suatu alat mekatronik atau robot. Motor langkah berukuran besar digunakan, misalnya, dalam proses pengeboran logam yang menghendaki ketepatan posisi pengeboran, dalam hal ini di lakukan oleh sebuah robot yang memerlukan ketepatan posisi dalam gerakan lengannya dan lain-lain.pada gambar di bawah ditunjukkan dasar susunan sebuah motor langkah (stepper).

10 Gambar 2.2. Diagram motor langkah (stepper) Magnet permanen N-S berputar kearah medan magnet yang aktif. Apabila kumparan stator dialiri arus sedemikian rupa, maka akan timbul medan magnet dan rotor akan berputar mengikuti medan magnet tersebut.setiap pengalihan arus ke kumparan berikutnya menyebabkan medan magnet berputar berputar menurut suatu sudut tertentu, biasanya informasi besar sudut putar tertulis pada badan motor langkah yang bersangkutan. Jumlah keseluruhan pengalihan menentukan sudut perputaran motor.jika pengalihan arus di tentukan, maka rotor akan berhenti pada posisi terakhir. Jika kecepatan pengalihan tidak terlalu tinggi, maka slip akan dapat dihindari. Sehingga tidak di perlukan umpan balik (feedback) pada pengendalian motor langkah. Motor langkah yang akan di gunakan memiliki 4 fase (pole atau kutub), pengiriman pulsa dari mikrokontroller ke rangkaian motor langkah dilakukan secara bergantian, masing-masing 4 data (sesuai dengan jumlah phase-nya), sebagian di tunjukkan pada gambar di bawah ini. A B C D Gambar 2.3. Pemberian data/pulsa pada motor stepper

11 Pada saat yang sama, untuk tiap motor langkah, tidak boleh ada 2 (dua) masukan atau lebih yang mengandung pulsa sama dengan 1 (high), atau dengan kata lain, pada suatu saat hanya sebuah masukan yang bernilai 1 (satu) sedangkan lainnya bernilai 0 (nol). 2.3 Mikrokontroller AT89S52 2.3.1 Gambaran Umum Mikrokontroller AT89S52 adalah mikrokomputer CMOS 8 bit yang memiliki 8 KB Programmable and Erasable Read Only Memory (PEROM). Mikrokontroller berteknologi memori non-volatile (tidak kehilangan data bila kehilangan daya listrik). Set instruksi dan kaki keluaran AT89S52 sesuai dengan standar industri 80C51 dan 80C52. Atmel AT89S52 adalah mikrokontroller yang sangat bagus dan fleksibel dengan harga yang relatif murah untuk banyak aplikasi sistem kendali berkerapatan tinggi dari Atmel ini sangat kompatibel dengan mikrokontroller MCS-51 misalnya mikrokontroller 8031 yang terkenal dan banyak digunakan dan telah menjadi standar industri baik dalam jumlah pin IC maupun set instruksinya. Sebagai perbandingan kapasitas memori, tabel 2.1 berikut ini akan menampilkan memori dari mikrokontroller seri AT89XX

12 Tabel 2.1 Kapasitas Memori Mikrokontroller seri AT89XX Type RAM Flash Memory EEPROM A T 8 9 C 5 1 / AT89S52 A T 8 9 C 5 2 / AT89S52 8 X 128 byte 4 Kbyte Tidak 8 X 256 byte 8 Kbyte Tidak AT89C55 8 X 256 byte 20 Kbyte Tidak AT89S53 8 X 256 byte 12 Kbyte Tidak AT89S8252 8 X 256 byte 8 Kbyte 2 Kbyte Mikrokontroller AT89S52 memiliki fasilitas-fasilitas pendukung yang membuatnya menjadi mikrokontroller yang sangat banyak digunakan dalam berbagai aplikasi. Fasilitas-fasilitas yang dimiliki oleh mikrokontroller AT89S52 adalah : a. Sesuai dengan produk-produk MCS-51. b. Terdapat memori flash yang terintegrasi dalam sistem. Dapat ditulis ulang hingga 1000 kali. c. Beroperasi pada frekuensi 0 sampai 24MHz. d. Tiga tingkat kunci memori program. e. Memiliki 256 x 8 bit RAM internal. f. Terdapat 32 jalur masukan/keluaran terprogram. g. Tiga pewaktu/pencacah 6-bit (untuk AT89S52) & dua pewaktu/pencacah 16-bit (untuk AT89S52). h. Memiliki 8 sumber interupsi(untuk AT89S52) & 6 sumber instruksi untuk AT89S52. i. Kanal serial terprogram.

13 j. Mode daya rendah dan mode daya mati. 2.3.2 Karakteristik Mikrokontroller AT89S52 AT89S52 mempunyai memori yang terdiri dari RAM internal dan Special Function Register. RAM internal pada mikrokontroller AT89S52 memiliki ukuran 256 byte dan beralamatkan 00H-7FH serta dapat di akses menggunakan RAM address register. RAM internal terdiri dari delapan buah register (R0-R7) yang membentuk register banks. Special Function Register yang berjumlah 21 buah berada di alamat 80H-FFH. RAM ini berbeda pada lokasi dengan Flash PEROM dengan alamat 000H-7FFH. IC AT89S52 mempunyai pin sebanyak 40 buah yang sesuai dengan mikrokontroller 8031 dan memiliki susunan pin seperti gambar di berikut ini ini : Gambar 2.4 Konfigurasi pin (kaki) pada mikrokontroller AT89S52 Pada konstruksi mikrokontroller ini terdapat 4 port untuk I/O data dan tersedia pula akumulator, register, RAM, Stack Pointer, Arithmatic Logic Unit (ALU),

14 Pengunci (Lacth), dan rangkaian osilasi yang membuat AT89S52 dapat beroperasi dengan sekeping IC. 2.3.3 Fungsi Pin-Pin pada Mikrokontroller AT89S52 a. VCC (Pin 40) Pin 40 merupakan sumber tegangan positif yang diberi simbol Vcc. b. GND (Pin 20) Pin 20 merupakan ground sumber tegangan dan diberi simbol gnd. c. 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 fungsi sebagai I/O biasa port ini dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex address/data, port ini akan mempunyai internal pull up. Pada saat flash programming diperlukan eksternal pull up, terutama pada saat verifikasi program. d. 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.

15 Sebagai output, port ini dapat memberikan output sink keempat buah input TTL. e. Port 3 (Pin 10 pin 17) Port 3 merupakan 8 bit port I/O dua arah dengan internal pull up. Port 3 juga mempunyai fungsi pin masing-masing, yaitu sebagai berikut : Tabel 2.2 Fungsi pin-pin pada port 3 mikrokontroller AT89S52 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 (menulis untuk eksternal data memori) P3.7 (pin 17) RD (untuk membaca eksternal data memori) f. RST (pin 9) Reset akan aktif dengan memberikan input high selama 2 cycle. g. 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.

16 h. PSEN (pin 29) Program store enable digunakan untuk mengakses memori program eksternal. i. EA (pin 31) Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroller akan menjalankan program yang ada pada memori eksternal setelah sistem direset. 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. j. XTAL1 (pin 19) Input untuk clock internal. k. XTAL2 (pin 18) Output dari osilator. 2.3.4 Register pada Mikrokontroller AT89S52 Register adalah penampung data sementara yang terletak dalam CPU. Pada mikrokontroller AT89S52, register-registernya adalah sebagai berikut : a. Register A ( Accumulator) Accumulator ialah sebuah register 8 bit yang merupakan pusat dari semua operasi accumulator, termasuk dalam operasi aritmatika dan operasi logika. b. Register B Register ini memiliki fungsi yang sama dengan register A. c. Program counter (PC)

17 Program counter (Pencacah program) merupakan sebuah register 16 bit yang selalu menunjukkan lokasi memori instruksi yang akan diakses. d. Data pointer Data pointer atau DPATR merupakan register 16 bit yang terletak di alamat 82H untuk DPL dan 83H untuk DPH. Biasanya Data pointer digunakan untuk mengakses data atau source kode yang terletak di memori eksternal. e. Stack Pointer (SP) Stack Pointer adalah register 8 bit yang mempunyai fungsi khusus sebagai penu njuk alamat atau data paling atas pada operasi penumpukan di RAM. Stack Pointer terletak di alamat 81H. Penunjuk penumpukan selalu berkurang dua tiap kali data didorong masuk kedalam lokasi penumpukan dan selalu bertambah dua tiap kali data ditarik keluar dari lokasi penumpukan. f. Program Status Word Program Status Word merupakan register yang berisi beberapa bit status yang mencerminkan keadaaan mikrokontroller. g. Bit Carry Flag (CY) Bit carry merupakan bit ke 8 yang memiliki dua fungsi : 1. Carry akan menunjukkan apakah operasi penjumlahan mengandung carry (sisa) atau apakah operasi pengurangan mengandung borrow (kurang). Apabila operasi ini mengandung carry, bit ini akan diset agar bernilai satu, sedangkan jika mengandung borrow, bit ini akan di set agar bernilai nol (0).

18 2. Carry dimanfaatkan sebagai bit ke-8 untuk operasi pergeseran (shift) atau perputaran. h. Bit Auxiliary Carry (AC) Bit ini menunjukkan adanya carry (bawaan) dari bit ketiga menuju bit keempat atau dari empat bit rendah ke empat bit tinggi pada operasi aritmatika. Bit ini jarang digunakan dalam program, tetapi digunakan oleh mikrokontroller secara implisit pada operasi aritmatika bilangan BCD. i. Bit Flag 0 (F0) Bit ini menunjukkan apakah hasil operasi bernilai nol atau tidak. Apabila hasil operasi adalah nol (0), bit ini akan diset agar bernilai 1, sedangkan apabila hasil operasinya bukan nol (0) maka bit ini akan di-reset. Bit ini juga digunakan pada perbandingan dua buah data. Jika kedua data bernilai sama maka bit ini akan diset agar bernilai satu, sedangkan jika kedua data itu berbeda maka bit ini akan direset agar bernilai nol (0). j. Bit Register Select (RS) RS0 dan RS1 digunakan untuk memilih bank register. Delapan buah register ini merupakan register serbaguna. Lokasinya pada awal 32 byte RAM internal yang memiliki alamat dari 00H sampai 1FH. Register ini dapat diakses melalui simbol assembler (R0,R1,R2,R3,R4,R5,R6 dan R7). 4 Perangkat Lunak (Software)

19 1 Bahasa Assembly MCS-51 2.4.1.1 Instruksi Instruksi Mikrokontroller AT89S52 Bahasa yang digunakan untuk memprogram IC mikrokontroller AT89S52 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa ini hanya ada 51 instruksi, beberapa instruksi yang sering digunakan dalam pemrograman IC mikrokontroller AT89S52 antara lain adalah: a. Instruksi MOV Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register tertentu. Pengisian nilai dapat secara langsung atau tidak langsung. Contoh pengisian nilai secara langsung MOV R0,#20h Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0). Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai. Contoh pengisian nilai secara tidak langsung MOV 20h,#80h...... MOV R0,20h Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20 Heksadesimal ke register 0 (R0). Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah alamat. b. Instruksi DJNZ

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

21 Instruksi ACALL Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :... ACALL TUNDA... TUNDA:... d. Instruksi RET Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin pemanggil setelah instruksi ACALL dilaksanakan. Contoh, ACALL TUNDA... TUNDA:... RET e. Instruksi JMP (Jump) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh, Loop:...... JMP Loop f. Instruksi JB (Jump if bit)

22 Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika high (1). Contoh, Loop: JB P1.0,Loop... g. Instruksi JNB (Jump if Not bit) Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang dimaksud berlogika Low (0). Contoh, Loop: JNB P1.0,Loop... h. Instruksi CJNE (Compare Jump If Not Equal) Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register dengan suatu nilai tertentu. Contoh, Loop:... CJNE R0,#20h,Loop... Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin Loop. Jika nilai R0 sama dengan 20h, maka program akan melanjutkan instruksi selanjutnya.. i. Instruksi DEC (Decreament)

23 Instruksi ini merupakan perintah untuk mengurangi nilai register yang dimaksud dengan 1. Contoh, MOV R0,#20h R0 = 20h... DEC R0 R0 = R0 1... j. Instruksi INC (Increament) Instruksi ini merupakan perintah untuk menambahkan nilai register yang dimaksud dengan 1. Contoh, MOV R0,#20h R0 = 20h... INC R0 R0 = R0 + 1... 2 Software 8051 Editor, Assembler, Simulator (IDE) Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah editor, yaitu 8051 Editor, Assembler, Simulator. Tampilannya seperti di bawah ini.

24 Gambar 2.5 8051 Editor, Assembler, Simulator Setelah program selesai ditulis, kemudian di save dan kemudian di Assemble (di compile). Pada saat di assemble akan tampil pesan peringatan dan kesalahan. Jika masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu sampai tidak ada pesan kesalahan lagi. Software 8051 IDE ini berfungsi untuk merubah program yang kita tuliskan ke dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an. Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller. 3 Software Downloader Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan software ISP- Flash Programmer 3.0a yang dapat di download dari internet. Tampilannya seperti gambar di bawah ini :

25 Gambar 2.6. ISP- Flash Programmer 3.a Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil file heksadesimal dari hasil kompilasi 8051 IDE, kemudian klik Write untuk mengisikan hasil kompilasi tersebut ke mikrokontroller.