Está en la página 1de 28

KATA PENGANTAR

Puji syukur kehadirat ALLAH SWT. Karena atas berkat rahmatnya sehingga dapat terselesaikannya karya ilmiah PENGENALAN DAN PENGGUNAAN MIKROKONTROLER AT89S52 BAGI KEHIDUPAN ini. Ucapan terima kasih juga saya hanturkan kepada teman teman semester 4 Fakultas Teknik Elektro UNISKA yang telah member inspirasi kepada saya. Karya ilmiah ini dibuat guna melengkapi persyaratan mengajukan permohonan bea siswa PPA kepada Bapak REKTOR UNISKA Kediri.

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

ABSTRAK
Mikrokontroler AT89s52 adalah sebuah alat yang mempunyai banyak manfaat. Mkrokontroler AT89S52 dapat dijadikan otak dari berbagai macam alat seperti ROBOT,MOTOR LED LASER ,MOTOR PENGANGKUT BARANG,VARIASI LAMPU dan berbagai macam alat lainnya. AT89S52 adalah chip produksi atmel inc, merupakan keluarga dari MCS-51 produksi intel.AT89s52 memiliki fitur yang cukup lengkap untuk suatu pemrosean input-output. Bahasa pemrograman AT89S52 hampir tidak berbeda jauh dengan set pada mikroprosesor intel yang sudah dipelajari pada perkuliahan. Dengan menggunakan bahasa assembly kita dapat mengatur dan menggunakan mikrokontroler AT89S52 sesuai dengan kehendak dan keinginan kita .Sebagai contoh dari pemanfaatan mikrokontroler AT89S52 ,dalam karya ilmiah ini di contohkan adalah robot yg dapat menghindari halangan .Dalam alat ini digunakan juga photodiode dan jg alat pemancar sinanr inframerah.

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

DAFTAR ISI
Halaman Persetujuan .. ii Pernyataan iii Abstrak . iv Daftar Isi . v 1.Pendahuluan
1.1

Latar Belakang.. 1 Batasan Masalah ... 2

1.2

2.Pembahasan 2.1 Contoh Pemrograman AT89S52 2.1.1Perangkat Keras 3


ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

2.1.2 3 4

Perangkat Lunak

a. C Compiler untuk MCS-51. b. Menggunakan SDDC ...... 5 c. Prosedur Percobaan . 8 2.2 Contoh Alat Memakai AT8952 2.2.1 Robot Penghindar Halangan 11 3. Kesimpulan 18 4. Daftar Pustaka 19

PERSETUJUAN
JUDUL : PENGENALAN DAN PENGGUNAAN MIKROKONTROLER AT89S52

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

BAGI KEHIDUPAN KATEGORI NAMA NIM : TUGAS PERSYARATAN PERMOHONAN BEASISWA PPA : ADITYA GUS PUTRANTO : 09310730003 : S-1 TEKNIK ELEKTRO : ELEKTRONIKA : TEKNIK ELEKTRO UNIVERSITAS ISLAM KADIRI (UNISKA)

PROGRAM STUDI DEPARTEMEN FAKULTAS

Dibuat di KEDIRI, 28 April 2011

Diketahui DEKAN FAK. TEKNIK ELEKTRO,

MOCHTAR YAHYA,ST.

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

PERNYATAAN
PENGENALAN DAN PENGGUNAAN MIKROKONTROLER AT89S52 BAGI KEHIDUPAN TUGAS PERSYARATAN BEASISWA

Saya mengakui bahwa tugas ini adalah hasil kerja saya sendiri,kecuali beberapa kutipan dan ringkasan yang masing - masing disebutkan sumbernya. Bila pernyataan ini salah,maka saya bersedia menerima sanksi yang di berikan oleh instansi terkait Kediri,28 april 2011

ADITYA GUS PUTRANTO


ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

1.PENDAHULUAN
1.1 Latar Belakang Dengan berkembangnya dunia elektro dan juga semakin mahalnya biaya produksi jika kita menggunakan tenaga manusia maka kita perlu mencari suatu alat yang dapat memudahkan kita dalam bekerja . Dengan menggunakan mikrokontroler AT89S52 kita dapat membuat suatu alat sesuai dengan kebutuhan kita. Mikrokontroler AT89S52 adalah suatu alat yang dapat dijadikan otak atau tempat menyimpan perintah perintah dari alat yang akan kita buat nanti.selain itu juga karena mikrokontroler AT89S52 ukurannya kecil sehingga cocok dipasang pada semua alat,harganya pun relatif murah karena dapat diproduksi secara missal.
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

1.2 Batasan Masalah Mikrokontroler AT89S52 adalah sebuah alat yg ukurannya kecil sehingga hanya dapat menerima program atau perintah yg tertentu pula. Mikrokontroler ini menyediakan Sarana input/output cukup banyak dan bervariasi.AT89S52 mempunyai 32 jalur input dan output Mikrokontroler AT89S52 dapat digunakan pada alat yang memiliki tugas sederhana namun bermanfaat bagi manusia pada umumnya dan juga perkembangan dunia elektro pada khususnya.

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

2.PEMBAHASAN
Mikrokontroler AT89s52 atau sering juga disebut mikrokontoler keluarga MCS-51 adalah alat yang menggunakan bahasa assembly,akan tetapi untuk memudahkan dalam memrogram alat ini akan lebih mudah jika menggunakan bahasa C. 2.1 Contoh Pemrograman AT89S52 Berikut adalah contoh program untuk mikrokontroler keluarga MCS-51 menggunakan bahasa C beserta perangkat yang dibutuhkan: 2.1.1. PERANGKAT KERAS a. Kit Praktikum Mikrokontoler (Plant, Sistem minimum dan Downloader) lengkap dengan kabel dan jumper. b. PC 2.1.2 PERANGKAT LUNAK a. C COMPILER UNTUK MCS-51 Sejak akhir tahun 1980-an, telah banyak dibuat C Cross-Compiler yang bekerja pada IBM-PC untuk MCS-51,
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

artinya C Compiler tersebut bekerja di IBM-PC tapi kode mesin yang dihasilkan bukan untuk IBM-PC melainkan untuk MCS-51. C Compiler untuk MCS-51 yang cukup dikenal antara lain adalah Micro-C buatan Dunfield Development Systems, Franklin C buatan Franklin Software Inc dan C51 buatan Keil Software, harga perangkat lunak tersebut tidak murah. Selain produk komersil tersebut di atas, ada pula C Compiler gratis, yang dikenal sebagai SDCC Small Device C Compiler, yang akan digunakan pada praktikum ini. Dengan tersedial Ulya Freeware SDCC kita dapat memprogram mikrokontroller AT89XX menggunakan bahasa C tanpa harus membeli C compiler yang harganya relatif mahal. Selain itu SDCC juga mempunyai optimisasi yang bagus sehingga tidak kalah dengan compiler komersial lainnya, dan cukup layak untuk kita gunakan, pemrograman dengan bahasa C akan sangat memudahkan kita dibandingkan menggunakan bahasa assembly karena program yang kita buat akan sangat mudah untuk dibaca, dan pembuatan algoritma sangat mudah untuk dilakukan b.SMALL DEVICE C COMPILER -SDCC SDCC, buatan Sandeep Dutta (sandeep@users.sourceforge.net), sejak semula memang dibuat sebagai software gratis (fteeware), kemudian project mulia ini digabungkan dengan projek GNU, yakni
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

projek ramai-ramai insan internet yang melahirkan Linux. Dengan demikian, kini program SDCC bisa diambil pada situs http://sdcc.sourceforge.net Dalam rancangannya, SDCC dipersiapkan untuk berbagai macam mikroprosesor mikrokontroler, hal ini sesuai dengan sifat bahasa C yang mudah diadaptasikan ke berbagai macam prosesor. Sampai saat ini, SDCC sudah bisa dipakai untuk mikroprosesor Z80, mikrokontroler MCS-51, dalam waktu dekat akan segera bisa dipakai untuk mikrokontroler AVR buatan Atmel, dan mikrokontroler PIC buatan MicroChip, dan beberapa prosesor lainnya akan segera menyusuI. Hal ini membuat SDCC menjadi sangat menarik. Setelah terbiasa memakai SDCC untuk projek-projek dengan MCS51, kelak satu saat bermaksud memaka imikrokontroler AVR karena memerlukan mikrokontroler yang kemampuannya lebih, maka tidak banyak hambatan untuk beralih prosesor, bahkan program-programyang sudah dikembangkan untuk MCS-51 dengan SDCC, dengan sedikit pembahan bisa dipakai di sistem yang memakai AVR. b.1MENGGUNAKAN SDCC b.1.1Intalasi SDCC Sebelum anda bereksperimen dengan SDCC maka sebelumny anda harus menginstall SDCC pada komputer anda.
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

langkall - langkah lnstalasi SDCC : 1. Download Win 32 SDCC Setup file pada situs sdcc.sourceforge.net 2. 3. Jalankan file setup yang telah anda downloadtadi Ikuti langkah yang muncul pada dialog yang muneul, dan gunakan nilai defaultnya, terakhir ketika installer menanyakan untuk menambah path ke system path, pilih Yes sehingga anda akan dapat meng-compile dari sembarang folder

4. Setelah selesai restart komputer anda. 5. Test apakah SDCC sudah terinstall dengan benar, dengan masuk ke command prompt ketik sdcc -v untuk menampilkan versi sdcc yang anda instal, berikut langkahnya : 1. Klik StartRun kemudian ketik cmd , klik Ok maka akan muncul window command prompt 2. Ketik sdcc -v, jika tampil versi SDCC maka SDCC telah terinstal dengan benar b.1.2.IN LINE ASSEMBLER Anda dapat menyisipkan kode assembler MCS-51 dalam program c anda ( in line
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

Assembler), dengan dimulai keyword_asm dan di akhiri oleh keyword_endasm; contoh: #include <at89x51.h> // header, definisi port ada pada file ini _asm mov mov nap nap _endasm; Pl,#200 P2,#255

b.1.2.3. I/O PORT ACCESS I/O Port access dapat langsung dilakukan dengan memberikan nilai pada nama port yang ingin anda akses, port yang tersedia disesuaikan mikrokontroler yang digunakan.Nama port haruslah huruf kapital mis: PO, P1, P2, P3 sesuai dengan file header, penggunaan huruf kecil akan menimbulkan kesalahan, contoh:

#include <at89x51.h> // header, definisi port ada pada file ini P1 = 0xF0 ; // memberikan nilai 0x kepada port 1
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

P2 = 200 ; // memberikan nilai 200 kepada port 2 i = P2 ; // membaca nilai pada P2 dan nilainya di berikan ke variabel i akses port secara bit dilakukan dengan cara menggunakan keyword PX_Y, sesuai dengan definisi di file headernya, X diganti dengan port yang akan diakses, sedangkanY diganti dengan dengan bit yang akan di akses, mis: Pl_ 0 artinya Port 1 bit ke 0 (P1.0), bit hanya mempunyai dua keadaan logika yaitu on(l)/off(0).Berikut contoh pengaksesan port secara bit: #include <at89x51.h> // header, definisi port ada pada file ini bit i; P1_0 = 1 ; II memberikan nilai I kepada port PI.O P1_1 = 0 ; II memberikan nilai 0 kepada port Pl.I i = P1_0 ; II membaca nilai pada PI.O dan nilainya di berikan ke variabel i c.. PROSEDUR PERCOBAAN Bahasa C: 1. Buka teks editor yang anda miliki, misal notepad kemudian ketik program di bawah ini #include <at89x52.h> void delay(void)
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

{ int i; for(i=O i i<1OOOO;i++); } void main(void) { while(l) { Pl = 0; delay(); PI = 255; delay() ; } } 2.Simpan file dengan ekstensi c (*.c).

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

3. Klik Start Menu Run , ketikkan command untuk masuk ke command prompt.

4. Masuk ke folder tempat anda meuyimpan file diatas , misal c:\tutorial dengan perintah cd c:\tutorial 5. Periksa bahwa SDCC sudah terinstal pada komputer anda dengan perintah sdcc-v, jika SDCCsudah terinstaUmaka akan tampil versi SDCC yang terinstal pada komputer. Apabila SDCC belum terinstal maka akan muncul pesan kesalahan dan anda harus menginstall SDCC terlebih dahulu
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

6. Compile ledl.c dengan perintah sdcc ledl.c, jika tidak ada pesan kesalahan berarti bahwa program anda sudah benar

7. Ketik perintah dir untuk melihat file yang ada pada direktori, maka akan dapat dilihat beberapa file yang muncul setelah proses compile antara lain: - ledl.asm , merupakan file assembly yang di dihasiIkan dari ledl.c - led.lst , merupakan file listing program
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

ledl.ihx merupakan file hex yang terbentuk dari proses compile dan akan diprogramkan ke dalam mikrokontroller. Sebelumnya ekstensi *.ihx harus diubah menjadi *.hex menggunakan perintah: packihx led.ihx > led1.hex

8. File led1.hex sudah siap uutuk diprogramkan ke dalam mikrokoutroller 2.2 Sedangkan berikut ini adalah contoh penggunaan mikrokontroler AT89S52 bagi kehidupan : 2.2.1 Robot yang Penghindar Halangan Robot penghindar halangan ini menggunakan alat tambahan LED inframerah,potho diode dan juga AT89S52 sebagai pusat pengendaliannya. Sinar inframerah dipilih karena rentan panjang gelombangnya
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

Antara 0,75 mikrometer sampai 1000 mikrometer.sinar inframerah dan milimeternya dapat digunakan secara meluas sebagai saluran komunikasi jarak dekat sepeti alat kawalan jarak jauh (remote control) bagi televise,radio dan sebagainya. Oleh karena itu juga sinar infra merah sangat cocok digunakan pada alat ini karena mencakupi dari jarak aman dan bahaya dari robot terhadap dinding yang ada di depannya. LED (Led Emiting Dioda) merupakan diode yang memancarkan cahaya jika kepadanya di beri energy listrik. Timbulnya cahaya adalah sebagai akibat penggabungan electron dan lubang (hole) pada persambungan antara dua jenis semikonduktor.LED sebagai pemancar yang dapat memancarkan sinar infra merah. Untuk pemancaran sinar inframerah biasanya disertakan sebuah modul yang berfungsi memodulasi frekuensi agar diterima oleh objek tertentu yaitu photo diode. Photo diode adalah piranti semikonduktor dengan struktur p-n atau p-i-n untuk mendeteksi cahaya. Disini, photo diode diaplikasikan sebagai tegangan revers (tegangan balik) dari sebuah diode (yaitu tegangan pada arah tersebut pada diode tidak akan menghantarkan tanpa terkena cahaya) dan pengukuran pengukuran menghasilkan arus photo (hal ini juga bagus mengaplikasikan tegangan mendekati nol). Mikrokontroler AT89S52 sendiri membutuhkan alat tambahan lagi berupa 3 kapasitor ,1 resistor dan 1 kristal serta catu daya 5 v. resistor 10 kilo omh dan kapasitor 10
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

mokro farad dipakai untuk membentuk rangkaian reset. Dengan adanyan rangkaian reset ini AT89S52 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 12 MHz dan kapasitor 30 mikrofarad dipakai untuk melengkapi rangkaian oscillator membentuk clock yang menentukan kecepatan kerja mikrokontroler. Robot ini dirancang untuk mendeteksi adanya dinding mendekatinya,kemudian menghindarinya. Program di awali dengan pengecekan logika pada sensor dinding,kemudian robot akan berjalan secara acak. Saat sensor dinding samping kanan atau kiri aktif,maka sensor akan member informasi kepada mikrokontroler tentang keberadaan dinding. Kemudian mikrokontroler memberikan perintah untuk mengarahkan robot untuk menghindari dinding dengan cara membelok kanan atau kiri. Tetapi ketika sensor tidak aktif, robot akan maju dan berjalan kembali secara acak. Program yang dibuat adalah : Motor_kanan1 Motor _kanan2 Motor_kiri1 Motor_kiri2 Tames: Jb p2.1,a
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

bit p0.0 bit p0.1 bit p0.2 bit p0.3

Acall kiri Sjmp tames A: Jb p2.3,b Acall kiri Sjmp tames B: Jb p2.4,c Acall kiri Sjmp tames C: Jb p2.7,d Acall kiri Sjmp tames D: Jb p2.6,e Acall kiri Sjmp tames E: Jb p2.5,f
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

Acall kiri Sjmp tames F: Acall maju Sjmp tames Maju: Setb motor_kiri1 Clr motor_kiri2 Setb motor kanan1 Clr motor kanan2 Mati: Clr motor_kanan1 Clr motor_kanan2 Clr motor_kiri1 Clr motor_kiri2 Mov r7,#50 Djnz r7,#$ Ret Kanan: Mov r6,#5
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

Ka: Mov r5,#1 Belok_kanan: Setb motor_kiri1 Clr motor_kiri2 Clr motor_kanan1 Setb motor_kanan2 Mov r7,#255 Djnz r7,$ Acall mati_untuk_belok Djnz r5,belok_kanan Djnz r6,ka Ret Kiri: Mov r6,#5 Ki: Mov r5,#1 Belok kiri: Clr motor_kiri1 Setb motor_kiri2
ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

Setb motor_kanan1 Clr motor_kanan 2 Mov r7,#255 Djzn r7,$ Acall mti_untuk_belok Djnz r5,belok_kiri Djnz r6,ka Ret Mati_untuk_belok: Clr motor_kanan1 Clr motor_kanan2 Clr motor_kiri1 Clr motor_kiri2 Mov r7,#2 Djnz r7,$ Ret

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

KESIMPULAN
Dengan ditemukannya mikrokontroler keluarga mcs51,dapat ditemukannya alat-alat sederhana namun sangat berguna bagi manusia seperti mesin tiket,pengangkut barang,robot mini dan masih banyak lagi. Dalam proses perancangannya juga begitu sulit karena bahasa assembly yang digunakan untuk memrogram mikrokontroler AT89S52 hampir sama dengan pemrograman bahasa C yang sering di ajarkan pada bangku kuliah Dalam proses pengaplikasiannya mikrokontroler AT89S52 juga tidak terlalu mahal karena alat yang digunakan relative sederhana,murah dan juga banyak di pasaran Bagi para pemula yang baru belajar mengenali program dasar pembuatan robot,mikroontroler keluarga MCS-51 Sangatlah cocok karena selain murah dalam segi biaya,alat ini juga relative mydah untuk dielajari dan juga mudah dalam menggunakannya.

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

DAFTAR PUSTAKA
agfianto.2002.Belajar Mikrokontroler AT89S51/52/55 Teori dan Aplikasi. Edisi pertama. Penerbit: Gava Media ,Yogyakata. Andi.2003. panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89s51. Penerbit: PT. Elex Media Komputindo,Jakarta. Malvino,Albert Paul,2003. Prinsip Prinsip Elektronika. Jilid 1 &2. Edisi Pertama. Penerbit : Salemba Teknika,Jakarta. http://www.google.com http://www.kmitl.ac.th/~kswichit%20/89prog/index.html. http://repository.usu.ac.id/bitstream/123456789/14252/1/0 9E00102.pdf www.indowebster.com/C_dan_Basic_.htm

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

PENGENALAN DAN PENGGUNAAN MIKRONTROLER AT89S52 BAGI KEHIDUPAN


Diajukan Guna Melengkapi Persyaratan Memohon Beasiswa PPA

ADTYA GUS PUTRANTO 09310730003 Fakultas Teknik Elektro Semester 4


ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

Universitas Islam Kadiri (UNISKA) 2011

ADITYA GUS PUTRANTO : Pengenalan dan Penggunaan Mikrokonroler AT89S52 bagi Kehidupan,2011. Fak.Teknik Elektro UNISKA

También podría gustarte