Minggu, 13 Juli 2014

Artikel Mikrokontroler dan contoh Aplikasinya


Artikel Mikrokontroler dan contoh aplikasinya (Tugas praktikum)
untuk bisa dwnload artikel ini klik http://www.ianoriginal19.blogspot.com
TUGAS Artikel Mikrokontroler dan Contoh Aplikasi
DISUSUN OLEH:
M.SAYAN
TI.R 2.1
15,July-2014
Mikrokontroler
Apa itu mikrokontroler ?? Mikrokontroler adalah sistem komputer yang seluruh atau sebagian besar elemennya dikemas dalam satu chip IC (Intergrated Circuit) sehingga sering juga disebut single chip microcomputer, yang masuk dalam katagori embedded komputer. Suatu kontroler digunakan untuk mengontrol suatu proses atau aspek-aspek dari lingkungan.
Misalnya mikroprosesor yang mengendalikan kontroler yaitu (Zilog Z80, Intel 8088, Motorola 6809, dsb).
Mikrokontroler juga suatu IC dengan kepadatan yang sangat tinggi, dimana semua bagian yang diperlukan untuk suatu kontroler sudah dikemas dalam satu keping, biasanya terdiri dari CPU, RAM, EEPROM, I/O, TIMER, dll.
Random Access Memory (RAM)
Baca dan tulis data dari dan ke memori dapat dilakukan dengan mudah dan cepat.
Bersifat volatile dan Perlu catu daya listrik.
a) RAM Dinamik (DRAM)
Disusun oleh sel-sel yang menyimpan data sebagai muatan listrik pada kapasitor. Ada dan tidak ada muatan listrik pada kapasitor dinyatakan sebagai bilangan biner 1dan 0. Perlu pengisian muatan listrik secara periodik untuk memelihara penyimapanan data.
b) RAM Statik (SRAM)
Disusun oleh deretan flip-flop.Baik SRAM maupun DRAM adalah volatile. Sel memori DRAM lebih sederhana dibanding SRAM, karena itu lebih kecil. DRAM lebih rapat (sel lebih kecil = lebih banyak sel per satuan luas) dan lebih murah. DRAM memrlukan rangkaian pengosong muatan. DRAM cenderung lebih baik bila digunakan untuk kebutuhan memori yang lebih besar. DRAM lebih lambat.
• Electrically EPROM (EEPROM)
Dapat ditulisi kapan saja tanpa menghapus isi sebelumnya. Operasi write memerlukan watu lebih lama dibanding operasi read. Gabungan sifat kelebihan non-volatilitas dan fleksibilitas untuk update dengan menggunakan bus control, alamat dan saluran data.
EEPROM lebih mahal dibanding EPROM.
Sel memori memiliki sifat tertentu sbb.:
1. Memiliki dua keadaan stabil untuk representasi bilangan biner 1 atau 0.
2. Memiliki kemampuan untuk ditulisi
3. Memiliki kemampuan untuk dibaca.
Jenis-jenis Mikrokontroller
Secara teknis, hanya ada 2 macam mikrokontroller. Pembagian ini didasarkan pada kompleksitas instruksi-instruksi yang dapat diterapkan pada mikrokontroler tersebut. Pembagian itu yaitu RISC dan CISC.
• RISC merupakan kependekan dari Reduced Instruction Set Computer. Instruksi yang dimiliki terbatas, tetapi memiliki fasilitas yang lebih banyak.
• Sebaliknya, CISC kependekan dari Complex Instruction Set Computer. Instruksi bisa dikatakan lebih lengkap tapi dengan fasilitas secukupnya.
Masing-masing mempunyai keturunan atau keluarga sendiri-sendiri.
Sekarang kita akan membahas pembagian jenis-jenis mikrokonktroler yang telah umum digunakan.
1. MCS51
Mikrokonktroler ini termasuk dalam keluarga mikrokonktroler CISC. Sebagian besar instruksinya dieksekusi dalam 12 siklus clock.
Mikrokontroler ini berdasarkan arsitektur Harvard dan meskipun awalnya dirancang untuk aplikasi mikrokontroler chip tunggal, sebuah mode perluasan telah mengizinkan sebuah ROM luar 64KB dan RAM luar 64KB diberikan alamat dengan cara jalur pemilihan chip yang terpisah untuk akses program dan memori data.
Salah satu kemampuan dari mikrokontroler 8051 adalah pemasukan sebuah mesin pemroses boolean yang mengijikan operasi logika boolean tingkatan-bit dapat dilakukan secara langsung dan secara efisien dalam register internal dan RAM. Karena itulah MCS51 digunakan dalam rancangan awal PLC (programmable Logic Control).
2. AVR
Mikrokonktroler Alv and Vegard’s Risc processor atau sering disingkat AVR merupakan mikrokonktroler RISC 8 bit. Karena RISC inilah sebagian besar kode instruksinya dikemas dalam satu siklus clock. AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi.
Secara umum, AVR dapat dikelompokkan dalam 4 kelas. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral dan fungsinya. Keempat kelas tersebut adalah keluarga ATTiny, keluarga AT90Sxx, keluarga ATMega dan AT86RFxx.
3. PIC
Pada awalnya, PIC merupakan kependekan dari Programmable Interface Controller. Tetapi pada perkembangannya berubah menjadi Programmable Intelligent Computer.
PIC termasuk keluarga mikrokonktroler berarsitektur Harvard yang dibuat oleh Microchip Technology. Awalnya dikembangkan oleh Divisi Mikroelektronik General Instruments dengan nama PIC1640. Sekarang Microhip telah mengumumkan pembuatan PIC-nya yang keenam
PIC cukup popular digunakan oleh para developer dan para penghobi ngoprek karena biayanya yang rendah, ktersediaan dan penggunaan yang luas, database aplikasi yang besar, serta pemrograman (dan pemrograman ulang) melalui hubungan serial pada komputer.
Pemrograman Mikrokontroler
1. Program bahasa asembly
2. Program bahasa mesin
3. Asembler yaitu menterjemahkan program bahasa asembly menjadi bahasa mesin
Pemrograman Bahasa Assembly (Assembler)
Bahasa assembly adalah sebuah program yang terdiri dari instruksi-instruksi yang menggantikan kode-kode biner dari bahasa mesin dengan “mnemonik” yang mudah diingat. Misalnya sebuah instruksi penambahan dalam bahasa mesin dengan kode “10110011” yang dalam bahasa assembly dapat dibuat dalam instruksi mnemonik ADD, sehingga mudah diingat dibandingkan dengan angka 0 dan 1, dalam setiap instruksi membutuhkan suatu operand baik berupa data langsung maupun suatu lokasi memori yang menyimpan data yang bersangkutan. Bahasa assembly sering juga disebut kode sumber atau kode simbolik yang tidak dapat dijalankan oleh prosesor, sedangkan assembler adalah suatu program yang dapat menerjemahkan program bahasa assembly ke program bahasa mesin. bahasa mesin adalah kumpulan kode biner yang merupakan instruksi yang bisa dijalankan oleh komputer. Program bahasa mesin sering disebut sebagai kode objek.
Baris-baris program yang mengandung instruksi mesin atau pengarah assembler harus mengikuti aturan program assembler ASM51. Masing-masing baris atas beberapa field yang dipisahkan dengan spasi atau tabulasi adalah bagian label, bagian mnemonic, bagian operand yang bisa lebih dari satu bagian komentar dan diakhiri dengan END.
A. Bagian – Bagian Dari Program Assembler
Berikut ini adalah bagian – bagian dari rogram assembler yaitu:
1) Label
Label merupakan suatu simbol yang didefinisikan sendiri oleh pembuat program untuk menandai lokasi memori pada area program. Simbol dan label adalah dua hal yang berbeda. Simbol tidak menggunakan titik dua, sedangkan label harus diakhiri dengan titik dua.
Contoh : Mov A,#0ffh; pada label ; “Mulai” ; dipindahkan ke Akumulator
2) Mnenonik
Mnenonik instruksi atau pengarah Assembler dimasukan dalam “Mnemonic field” yang mengikuti “label mnemonic”. Mnemonic instruksi misalnya ADD, MOV, INC dan lain-lain.Sedangkan pengarah Assembler misalnya ORG, EQU, DB dan lain-lain.
3) Operand
Operand ditulis setelah mnemonic, bisa berupa alamat atau data yang digunakan instruksi yang bersangkutan.
Contoh :
MOV A, #40h ; A dan #40h adalah operand
4) Komentar
Komentar harus diawali dengan titik koma. Sub rutin dari bagian besar program yang mengerjakan suatu operasi biasanya diawali dengan blok komentar yang menjelaskan fungsi sub rutin atau bagian besar program tersebut.
5) End
Petunjuk END merupakan kode perintah terakhir yang menunjukan batas akhir dari proses Assembly.


Mode – Mode Pengalamatan
1. Mode Pengalamatan Langsung
Dalam pengalamat langsung nilai yang akan disimpan dalam suatu memori diperoleh secara langsung dengan mengambil dari lokasi memori yang lain.
Contoh : MOV A,30H ; isi akumulator dengan bilangan 30 heksadesimal
2. Mode Pengalamatan Tak Langsung
Dalam pengalamatan tak langsung, instruksi menentukan suatu register yang digunakan untuk menyimpan alamat operan
Contoh :
ADD A,R ; Tambahkan isi RAM yang lokasinya ditunjukan oleh register R1 ke akumulator.
3. Mode Pengalamatan Segera
Cara ini menggunakan konstanta.
Contoh : MOV A,#40H ; isi akumulator dengan bilangan 40 heksadesimal
4. Mode Pengalamatan Data
Pengalamatan data terjadi pada sebuah perintah ketika nilai operasi merupakan alamat data yang akan diisi atau yang akan dipindahkan
Contoh :
MOV P1,A ; isi P1 dari nilai akumulator.
5. Mode Pengalamatan Bit
Pengalamatan bit adalah penunjukkan menggunakan simbol titik (.) yang menunjuk alamat lokasi bit, baik dalam RAM internal atau perangkat keras.
Contoh : SETB P1.7 ; set bit port 1.7 high ( pot 1.7 diberi nilai logika 1)
Software Mide-51
mide51
Mide-51 adalah freeware Integrated Development Environment (IDE) untuk mikrokontroler MCS-51. Paket lengkap sudah dilengkapi dengan: Assembler, SDCC: Small Device C Compiler, TS Kontrol 8051 Emulator, JSIM-51 Simulator. SDCC adalah Freeware, retargettable, mengoptimalkan ANSI – C compiler yang menargetkan Intel 8051, Maxim 80DS390, Zilog Z80 dan MCUs 68HC08 Motorola berbasis. JSIM-51 adalah simulator perangkat lunak yang kuat untuk 8051 Microcontrollers dan itu turunan. Program ini mensimulasikan kernel prosesor dan beberapa fungsi perangkat keras.


Fitur :
v sintaks stabilo pada kata SDCC reserved & MCS-51 standard register
v ruang kerja dokumen multi dukungan
v dukungan editor fitur standar dan tombol pintas seperti cut copy paste
v editor font style dan ukuran dipilih
v assembler laporan dan pesan kompiler
Program Simulasi Lampu Lalu Lintas Sederhana
Buatlah program Simulasi Lampu Lalu Lintas Sederhana, kali ini saya menuliskan program menggunakan bahasa Assembly dengan software MIDE-51, dengan cara sebagai berikut :
1. Pastikan Software MIDE-51 telah terinstall di komputer/laptop.
2. Klik MIDE-51 seperti gambar dibawah ini :
3. Software MIDE-51 akan terbuka
4. Klik file –> new
5. Ketikkan program seperti dibawah ini :
Utama:
mov P0,#030h ; hitungan dimulai dari 3
mov p2,#01h ; lampu merah 2 nyala
mov p3,#04h ; lampu hijau nyala
acall delay ; waktu tunda
mov P0,#024h ; hitungan menjadi 2
mov p2,#01h ; lampu merah 2 nyala
mov p3,#04h ; lampu hijau masih menyala
acall delay ; tunda
mov P0,#079h ; hitungan menjadi 1
mov p2,#01h ; lampu merah 2 nyala
mov p3,#04h ; lampu hijau masih menyala
acall delay ; tunda
mov P0,#040h ; hitungan menjadi 0
mov p2,#03h ; lampu merah 2 dan kuning 2 nyala
mov p3,#06h ; lampu hijau dan kuning nyala
acall delay ; tunda
mov P0,#012h ; hitungan dimulai dari 5
mov p2,#04h ; lampu hijau 2 nyala
mov p3,#01h ; lampu merah nyala
acall delay ; waktu tunda
mov P0,#019h ; hitungan dimulai dari 4
mov p2,#04h ; lampu hijau 2 nyala
mov p3,#01h ; lampu merah nyala
acall delay ; waktu tunda
mov P0,#030h ; hitungan dimulai dari 3
mov p2,#04h ; lampu hijau 2 nyala
mov p3,#01h ; lampu merah nyala
acall delay ; tunda
mov P0,#024h ; hitungan menjadi 2
mov p2,#04h ; lampu hijau 2 nyala
mov p3,#01h ; lampu merah masih nyala
acall delay ; tunda
mov P0,#079h ; hitungan menjadi 1
mov p2,#04h ; lampu hijau 2 nyala
mov p3,#01h ; lampu merah masih nyala
acall delay ; tunda
mov P0,#040h ; hitungan 0
mov p2,#06h ; lampu hijau dan kuning 2 nyala
mov p3,#01h ; lampu merah nyala
mov p3,#03h ; lampu kuning nyala
acall delay ; tunda
ajmp Utama ; program kembali looping ke label utama
delay:
mov R2,#6
dly:
mov R1,#255
dy:
mov R0,#255
Djnz R0,$
Djnz R1,dy
Djnz R2,dly
Ret
end
5. Setelah semua program di ketik, save program dengan cara :
filename.a51 –> filename terserah anda mau diketik dengan nama apa saja tetapi jangan lupa mengetikan
( .a51 ) diakhir file namenya seperti : program1.a51.
program berhasil disave ditandai dengan berubahnya tulisan menjadi berwarna.
7. Pastikan program yang diketikkan telah benar dan cek program yang telah di ketik, apakah masih ada
error atau no error, dengan cara klik ” build ” dan lihat keterangan dibawah. (jangan sampai lupa
mengklik build setelah peng-save-an).
prog
8. Jika program no error, berarti penulisan program telah selesai.
jika program telah selesai, masukkan program ke desain proteus kita dengan cara :
– double klik komponen “AT89C52 “
1
– masukkan program yang di ketik tadi dengan cara klik program file, ambil program kita tadi misalkan
program1.hex lalu klik OK, seperti tampilan di bawah ini :
2
– klik run dan lihat hasilnya
daftar pustaka


Tidak ada komentar:

Posting Komentar