BAB 2 TINJAUAN PUSTAKA

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

MIKROKONTROLER AT89S52

I/O dan Struktur Memori

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

BAB 2 LANDASAN TEORI

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

BAB 2 TINJAUAN TEORITIS

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,

Pendahuluan Mikrokontroler 8051

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

Memprogram Port sebagai Output dan Input Sederhana

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

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah

4. Port Input/Output Mikrokontroler MCS-51

BAB II TINJAUAN PUSTAKA

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

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

BAB II LANDASAN TEORI

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

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

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

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

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

Mikrokontroler 89C51 Bagian II :

Sumber Clock, Reset dan Antarmuka RAM

Mikroprosesor Z80 Suryanto Sutikno

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

AT89S52 8kByte In-System Programmable Mikrokontroler

Gambar 1.1. Diagram blok mikrokontroller 8051

Tabel 1. Karakteristik IC TTL dan CMOS

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

PERTEMUAN. SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan)

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

AKSES MEMORI Menggunakan DT-51 MinSys

Pendahuluan BAB I PENDAHULUAN

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB II TINJAUAN PUSTAKA

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

BAB III RANCANGAN DAN CARA KERJA ALAT

Arsitektur Mikrokontroler

BAB 2 LANDASAN TEORI

BAB III PERANCANGAN DAN PEMBUATAN ALAT

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

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

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

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

BAB 2 LANDASAN TEORI

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

BAB 2 TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

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

BAB 2 TINJAUAN TEORITIS

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

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB III PERENCANAAN DAN REALISASI

MICROCONTROLER AVR AT MEGA 8535

BAB 2 LANDASAN TEORI

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

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

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

Replika Sistem Atap Otomatis Untuk Pelindung Benda Terhadap Hujan Berbasis Mikrokontroler AT89S52

PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI

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

PETA MEMORI MIKROPROSESOR 8088

Mikrokontroler AVR. Hendawan Soebhakti 2009

USER MANUAL FLIP-FLOP MATA DIKLAT : RANCANGAN ELEKTRONIKA

Sistem Mikroprosessor

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI. (hardware) yang dapat mengolah data, menghitung, mengingat dan mengambil

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

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

RANCANG BANGUN SISTEM KEMBANGAN BERBASIS MIKROKONTROLER AT89S5x UNTUK APLIKASI SISTEM KONTROL

BAB 2 LANDASAN TEORI 2.1 M

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

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

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

BAB III PERANCANGAN SISTEM. 3.1 Pengantar Perancangan Sistem Pengendalian Lampu Pada Lapangan Bulu

BELAJAR MIKROKONTOLER AT89C51/52/55 (Teori dan aplikasi)

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

BAB III PERANCANGAN ALAT

RANCANG BANGUN SISTEM KONTROL LAMPU OTOMATIS BERBASIS WEB

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

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32

PENGANTAR MIKROKOMPUTER PAPAN TUNGGAL (SINGLE CHIP) Oleh : Sumarna, Jurdik Fisika, FMIPA UNY

ARSITEKTUR KOMPUTER SET INSTRUKSI

Transkripsi:

BAB 2 TINJAUAN PUSTAKA 2.1 PERANGKAT KERAS 2.1.1 Arsitektur Mikrokontroler AT89S51 Arsitektur AT89S51 sudah memiliki beberapa komponen yang pada masa lalu merupakan chip tersendiri, sub komponen tersebut adalah : CPU, singkatan dari Central Processing Unit, adalah otak atau unit pemroses pada suatu MCU. Istilah CPU yang salah kaprah dalam dunia PC adalah satu box yang terdiri dari banyak komponen. Internal Oscillator yang memungkinkan pemakai hanya menambahkan sebuah quarz crystal yang biasanya nilainya berkisar antara 6 Mhz hingga 24 Mhz. Meskipun demikian dari datasheet, AT89S51 dapat bekerja dari frekuensi 0 hingga 24 Mhz. Interupt Control, suatu bagian yang mengatur prioritas interupsi dari luar atau dari dalam chip MCU Timer 1 dan Timer 2 adalah bagian yang dapat berfungsi sebagai pencacah pulsa masuk atau menentukan waktu (counter time) RAM adalah memori yang digunakan untuk menyimpan data sementara ( data hilang bila catu daya padam )

6 Flash, adalah jenis memori yang digunakan untuk menyimpan program dan data yang tetap, data pada memori tidak akan hilang bila catu daya padam. Bus Control, digunakan sinyal kendali akses data keluar dari system MCU. I/O Port digunakan untuk menjembatani antara system MCU dengan dunia luarnya dengan cara parallel. I/O bisa sebagai output, misalnya menggerakkan relay, menyalakan lampu, dapat juga sebagai input misalnya mendeteksi saklar, menerima data dari ADC. Serial Port adalah penghubung ke dunia luar MCU dengan cara serial, dengan port serial, MCU dapat berkomunikasi dengan PC yang juga harus melalui serial Port. AT89S51 sudah memiliki memory flash di dalamnya sehingga sangat praktis digunakan untuk bereksperimen. Beberapa kemampuan fiturnya adalah sebagai berikut : Memiliki 4K Flash Perom yang digunakan untuk menyimpan program. Flash dapat ditulis dan dihapus sebanyak 1000 kali (menurut manual) Tegangan operasi dinamis dari 2,7 Volt hingga 6 Volt Operasi clock dari 0 hingga 24 Mhz Program bisa diproteksi, sehinnga tidak bisa dibaca oleh orang lain Memiliki internal RAM 128 byte Memiliki I/O sebanyak 32 line Dua buah timer/counter 16 bit Menangani 6 sumber interupsi Memiliki serial port, untuk komunikasi serial

7 2.1.2 Kontruksi AT89S51 AT89S51 memiliki pin sebanyak 40, dalam kemasan PDIP maupun PLCC. Keterangan fungsi masing masing pin adalah sebagai berikut : Pin 40 Pin 20 Pin 32 39 Vcc, masukan catu daya +5 volt DC Vss, masukan catu daya 0 volt DC P0.0-P0.7, Port input/output delapan bit dua arah yang juga dapat berfungsi sebagai bus data dan bus alamat bila mikrokontroller menggunakan memori eksternal. Pin 1-8 P1.0-P1.7, port input/output dua arah delapan bit dengan internal pull up Pin 10-17 P3.0-P3.7, port input/output delapan bit dua arah, selain itu port 3 juga memiliki alternatif fungsi sebagai ; RXD (pin 10) Port komunikasi input serial TXD (pin 11) Port komunikasi output serial INT0 (pin 12) Saluran interupsi eksternal 0 (aktif rendah) INT1 (pin 13) Saluran interupsi eksternal 1 (aktif rendah) T0 (pin 14) Input Timer 0 T1 (pin 15) Input Timer 1 WR (pin 16) Berfungsi sebagai sinyal kendali tulis RD (pin 17) Berfungsi sebagai sinyal kendali baca

8 Port I/O dari AT89S51 merupakan saluran untuk menghubungkan keluar sistem, misalnya mengambil data atau mengirimkan data, menghidupkan LED atau menerima data dari switch. Port 0 Port 0 berfungsi ganda selain sebagai port masukan/keluaran data byte atau bit secara umum juga dipergunakan untuk fungsi lain yaitu sebagai Alternate Input Function Port 1 Proses penulisan pada port 1 adalah penulisan akan memberikan data bit melalui internal bus, yang terhubung dengan D pada suatu Delay Flip-flop, disini D Flip flop berfungsi sebagai latch atau gerendel yang menahan data D selama sinyal Clock tidak aktif Port 2 Port 2 berfungsi ganda yaitu sebagai port I/O biasa, selayaknya port P1, sudah mempunyai resistor ke vcc. Funsi lain adalah sebagai penyalur alamat byte tinggi saat MCU mengakses program atau data di memori luar Port 3 Port 3 memiliki fungsi ganda, selain sebagai port masukan/keluaran data byte atau bit secara umum, port 3 juga dipergunakan sebagai TxD, Rd dan WR.

9 Gambar 2.1. IC Mikrokontroler AT89S51 2.2 PERANGKAT LUNAK 2.2.1 Bahasa Assembly MCS-51 Jika ragam pengalamatan adalah pengelompokan berdasarkan orientasi lokasi memori, tipe-tipe instruksi adalah pengelompokan berdasarkan fungsi pada instruksi MCS-51 yaitu : Arithmatika Instruksi Logika Transfer Data Manipulasi dan Operasi Boolean Pencabangan

10 1. Instruksi Aritmatika Instruksi-instruksi menunjukkan ragam pengalamatan yang dapat digunakan dengan masing-masing instruksi. a. Penjumlahan Source (sumber) adalah operand dengan ragam pengalamatan, register indirect, indirect atau immediete. b. Incremental dan Decremental Data didalam memori internal dapat dinaikkan atau diturunkan (Incremental dan Decremental), tanpa melalui akumulator, demikian juga pada DPTR yang digunakan untuk menghasilkan pengalamatan 16 bit di memori eksternal. c. Perkalian Instruksi MUL AB mengalikan akumulator dengan data yang ada pada register B dan meletakkan hasil 16 bit ke dalam register A dan B. Register A berisi lo-byte dan register B berisi hi-byte. Bila hasilnya lebih besar dari 255 (0FFh), maka bit 0V set, sedangkan bit CY selalu akan di clearkan ( 0 ). d. Pembagian Instruksi DIV AB membagi isi akumulator dengan data dalam register B dan meletakkan hasil bagi (quotient) 8 bit dalam akumulator dan sisanya (reminder) 8 bit dalam register B. Operasi DIV akan membuat bit-bit CY dan OV menjadi 0. e. Desimal Adjust Instruksi DA A (Decimal Adjust) digunakan untuk operasi arithmatic BCD. Dalam Arithmatic BCD instruksi A DD dan ADDC harus

11 diikuti oleh sebuah operasi DAA untuk menjadikan hasilnya terdapat pada sistem BCD. 2. Instruksi Logika Instruksi Logika pada MCS-51 adalah melakukan operasi boolean (bit) yang terdiri dari AND, OR, EXOR dan NOT pada bit demi bit dalam suatu bit data di register. a. Operasi AND, OR, dan EXOR Operasi AND, OR dan EXOR (Exclusive OR) adalah operasi bit dengan tabel kebenaran. b. Rotate Instruksi Rotate seperti pada shift register, bit-bit dalam byte register A digeser ke kanan atau ke kiri melalui atau tidak melalui carry. c. SWAP SWAP adalah tukar nibble dari byte akumulator, nibble rendah ditukar dengan nibble tinggi. 3. Data Transfer MOV adalah proses move (pindahkan) data dari sumber ke tujuan yang sebenarnya adalah proses mengcopy, artinya data di sumber tidak berubah. a. Memory Internal MOV adalah copy data dari source ke destination atau sumber ke tujuan, semua memory internal dan SFR dapat berlaku sebagai source dan sebagian besar dapat berlaku sebagai destination.

12 b. Program Memory MOVC adalah perintah move code bit, mengcopy isi dari program memory (aktivasi dengan PSEN) dilokasi yang ditunjukkan oleh base register yaitu DPTR atau PC. c. Data Memory MOVX adalah perintah move eksternal, digunakan untuk mengcopy isi dari dan ke data memory. d. Proses Stack PUSH (pushing berarti mendorong) dan POP (popping berarti menyembulkan kembali) adalah perintah yang digunakan untuk menyelamatkan data karena register yang bersangkutan akan digunakan untuk proses lain, atau untuk mengingat alamat yang ditinggalkannya akibat adanya panggilan sub rutin atau adanya interupsi. e. Pertukaran Data XCH adalah exchange atau pertukaran data antara kumulator dengan byte yang ragam pengalamatannya bisa secara direct, register atau indirect. 4. Pencabangan Program Program Assembler bersifat sekuensial, seperti pada program basic klasik (awal mula basic), dan biasanya diperlukan pencabangan untuk tujuan tertentu, yaitu lompat ke lokasi interupsi dengan alamat tertentu.

13 2.2.2. Compiler dan Simulator Ada banyak produk simulator dan kompiler yang informasinya dapat dicari di internet, melalui search engine dengan kata kunci MCS-51, 8051, Compiler atau Simulator, akan muncul banyak situs yang menyediakan simulator atau kompiler. Ada yang garus beli, ada juga yang gratis. Selain ASM 51 dari Metalink, juga terdapat compiler AD 2500, Keil dan Franklin untuk compiler bahasa C. Simulator ada banyak seperti AVSIM (DOS), JSIM, Pds-51, TS Controls. WinAlds dari MicroLogic salah satu produk yang memberikan fasilitas multi compiler, suatu komputer untuk beberapa prosesor/microkontroler, disamping itu juga ada fasilitas simulator untuk MCS-51. Gambar 2.2. 8051 Editor, Assembler, Simulator (IDE) 2.2.3 Pemrograman AT89S51 Pemrograman AT89S51 adalah prosedur mengisi flash memory dengan program yang berupa kode-kode mesin. Sebuah sistem MCU dengan chip AT89S51 sebagai

14 pengendali utama perlu diambil dari sistem dan diletakkan dalam programmer untuk diisi. Prosedur pengisian flash memory yang juga termuat dalam data sheet akan dijelaskan pada bagian ini. Prosedur pengisian flash, masing-masing pin akan berfungsi sebagai berikut : Pin Vcc diberi catu 5 V, XTAL dapat dari 3 hingga 24 MHz, sebaiknya digunakan 12 MHz atau 11.059 MHz. Port P1+port P2.0 hingga P2.3 adalah jalur alamat 12 bit (0000h-0FFFh). Port P0 digunakan sebagai jalur data ( 8 bit ). Pin P2.6,P2.7,P3.6 dan P3.7 digunakan sebagai mode pemrograman. Pin ALE digunakan untuk pulsa pemrograman ( pulsa negatif ) Pin EA digunakan untuk level tegangan pemrograman ( 5 V dan 12 V ) Pin RST selalu 1. Mode dari pemrograman AT89S51, dimana masing-masing kombinasi P2.6, P2.7, P3.6 dan P3.7 menentukan masing-masing mode, yaitu: Write, berarti menulis kode yang di inputkan ke P0 ke memori lokasi yang di inputkan pada P1 + P2. Read, berarti membaca kode dari P0 di lokasi memori yang di inputkan pada P1 + P2. Lock Bit 1, Lock Bit 2 dan Lock Bit 3 berarti memprogram masing-masing Lock Bit. Fungsi Memprogram lock bit adalah membuat program tidak dapat dibaca. Erase, adalah menghapus isi flash memory secara keseluruhan. Flash hanya dapat diisi kembali setelah dihapus, dan cara penghapusan adalah secara keseluruhan, tidak dapat secara individu per lokasi memory.

15 Read signature, adalah membaca identifikasi dari ic, masing-masing ic memiliki id tergantung jenis, pabrik, dan tegangan pemrograman. Pembacaan signature bisa juga dengan mode read pada alamat 030h. Gambar 2.3 Isp Flash Programmer 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 8051IDE 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.