Belajar AT89S51/AT89S52 : Simulasi dengan MIDE

Ditulis 2 Agustus 2009 ketegori 8051, Artikel oleh Fandi Gunawan
Tag:, , , , , , , , ,

Pada kesempatan ini saya akan mengangkat topik mengenai simulasi pemrograman AT89×51/52 dengan menggunakan IDE (Integrated Development Enviroment) MIDE yang gratis dan berisikan SDCC (Kompiler C gratis), ASEM51 (Asembler gratis) dan 2 buah simulator. Kali ini saya akan mulai dengan penggunaan bahasa C (supaya lebih cepat mengerti algoritmanya dulu, daripada berpusing-pusing ria di bahasa assembly). Sangat disarankan Anda mengerti dasar-dasar pemrograman C terlebih dahulu sebelum membaca artikel ini lebih jauh.

Pertama unduh MIDE dari situsnya : http://www.opcube.com/home.html atau pada saat tulisan ini dibuat versi terbaru dapat diunduh disini.

Pertama instalasi paket MIDE :

Buka mide51.exe :

Hal pertama yang perlu dilakukan adalah melakukan sedikit perubahan kecil di pengaturan MIDE:

Pergi ke Edit-Preference (atau tekan F12)

1. Cari tab C-Compiler dan tambah kan –debug ini dibaris parameter –code-loc 0×0000 –stack-auto –vc.

2. Cari tab Simulator dan pilih JSIM with 8051.DLL

Unduh source code berikut (dalam bahasa C) :

http://fandigunawan.googlepages.com/p001.zip

Source code diatas merupakan contoh untuk membuat running LED atau biasanya disebut LED chaser. Jadi LED akan mulai dari ujung sampai diujung satunya dan kembali ke ujung awal. Untuk lebih jelasnya silahkan dijalankan simulasinya.

Kamudian ekstrak ditempat yang namanya tidak ada spasinya, semisal c:\mide\project. Lalu, buka file p001.c.

Kemudian klik Build-Build (F9), pergilah ke direktori project. cari p001.hex dan rename ke p001.ihx.

Harap diingat : bahwa hasil kompilasi (bahasa mesin) ini disimpan dalam file teks *.hex atau *.ihx. Namun karena JSIM membaca file hasil kompilasi harus berbentuk *.ihx untuk hasil kompilasi dengan SDCC maka kita harus rename dari *.hex ke *.ihx.

Kamudian jalankan simulator dengan pergi folder instalasi MIDE dan cari jsim.exe. Double click jsim.exe

Kemudian akan muncul JSIM, klik File- Open dan pilih Files of type : SDC (*.ihx)

Untuk penggunaan yang pertama kali Anda harus memasukkan modul 8051.DLL yang bisa ditemukan di folder instalasi MIDE juga.

Dengan sedikit otak-atik Anda bisa melakukan simulasi dengan bahasa C lengkap dengan petunjuk register, watch register dan memory laiknya tool-tool profesional yang berharga ribuan dollar. Silahkan diotak-atik sendir, saya yakin Anda bisa dengan mudah menguasainya.

Cara yang digunakan untuk stepping yaitu :

  • Start (F5)
  • Step Into (F11)
  • Step Over(F10)
  • Step Out (F12)
  • Run to Cursor (F8)

Keterangan kode.

Include header file

/*
include header file untuk at89s52/at89c52 : <mcs51/at89×52.h>
include header file untuk at89s51/at89c51 : <mcs51/at89×51.h>
include header file untuk at89s2051/at89c2051 : <mcs51/at89×051.h>
*/
/* Disini saya akan menggunakan at89s52 */
#include <mcs51/at89×52.h>

Fungsi delay

/* Rutin delay */
void delay(void)
{
int i;
for(i = 0; i < 10000; i++)
{
;
}
}

Program utama

void main()
{
/* Port 0 sebagai output */
P0 = 0×00;
/* Set nilai awal P0 */
/* 1111 1110 : 1 mengindikasikan LED mati apabila menggunakan pull up */
P0 = 0xFE;
/*
embedded system tidak boleh keluar dari fungsi main()
*/
for(;;)
{
P0 = (P0 >> 7) | (P0 << 1);
delay();
}
}

Keterangan :

Port 0 merupakan 8 bit pin Input/Output (I/O) dan diinisialisai sebagai 0xFE atau 0b11111110, jadi pin Port 0 yang pertama akan nyala LED nya. Demikian seterusnya akan bergeser dan setelah sampai ujun akan kembali ke pin Port 0 yang pertama.

Referensi :


33 komentar di 'Belajar AT89S51/AT89S52 : Simulasi dengan MIDE'

  1. 3 Agustus 2009 10:00
    Mukti
  2. 3 Agustus 2009 10:39
    ardjoena
  3. 3 Agustus 2009 19:30
    Fandi Gunawan
  4. 4 Agustus 2009 03:17
    zul
  5. 4 Agustus 2009 19:06
    Elfa
  6. 4 Agustus 2009 19:22
    Elfa
  7. 21 Agustus 2009 15:46
    jurek
  8. 21 Agustus 2009 20:36
    Fandi Gunawan
  9. 30 Agustus 2009 14:20
    fadzliana
  10. 3 Oktober 2009 20:56
    Mat_Mat
  11. 13 Januari 2010 23:09
    Fandi Gunawan
  12. 7 Februari 2010 00:52
    dedi
  13. 7 Maret 2010 23:28
    Fandi Gunawan
  14. 17 Agustus 2010 18:46
    aji
  15. 26 September 2010 20:48
    eko setiyono
  16. 9 Oktober 2010 10:17
    hidayat
  17. 30 Januari 2011 18:34
    Nurmaly
  18. 1 Februari 2011 21:36
    Fandi Gunawan
  19. 22 Februari 2011 06:31
    Arianto W
  20. 27 Februari 2011 08:03
    iswanto
  21. 17 April 2011 01:22
    Fandi Gunawan
  22. 10 Mei 2011 23:26
    hardi
  23. 20 Mei 2011 20:41
    Pandu
  24. 27 Mei 2011 15:48
    yudistira.chandra
  25. 12 Desember 2011 10:41
    syaiful anam
  26. 22 Desember 2011 17:45
    muchlas
  27. 28 Desember 2011 00:06
    abdullah
  28. 28 Desember 2011 00:10
    abdullah
  29. 10 Januari 2012 08:15
    sanboyz
  30. 12 Februari 2012 18:10
    s41d1
  31. 19 Maret 2012 16:26
    fery
  32. 5 Mei 2012 22:18
    wahyu
  33. 29 Mei 2014 19:58
    fernando

Tinggalkan komentar




XHTML::
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


This site is a member of WebRing.
To browse visit Here.