17
DASAR-DASAR PEMROGRAMAN DENGAN SOFTWARE UMPS I. Tujuan 1. Praktikan dapat menggunakan simulator UMPS sebagai pendukung dalam merancang program. 2. Praktikan dapat menggunakan resource hardware mikrokontroler 8031/8051. II. Dasar Teori UMPS adalah singkatan dari Universal Microprocessor Program Simulator, yaitu simulator pemrograman mikrokontroler yang universal, yang dapat mensimulasikan pemrograman mikrokontroler untuk banyak tipe seperti 8031, 8032, ATMEG161, ATMEG603, 68HC11, PIC, SUNPLUS, dan lain sebagainya. UMPS dapat berjalan pada sistem operasi Windows 3.11, Windows NT/2000, Windows XP. UMPS dapat mensimulasikan beberapa CPU dengan memori maksimum sebesar 64 K Byte. UMPS menggunakan file CPL yang dapat menggunakan file dengan ekstensi txt atau asm. Setelah loading UMPS dapat melakukan assemble, disassemble, dan mengeksekusi instruksi yang ada dalam file. UMPS juga mampu menampilkan dan memodifikasi isi register internal, isi RAM, ROM,

LaporaN PercobaaN SederhaNa

  • Upload
    azh3

  • View
    330

  • Download
    10

Embed Size (px)

Citation preview

Page 1: LaporaN PercobaaN SederhaNa

DASAR-DASAR PEMROGRAMANDENGAN SOFTWARE UMPS

I. Tujuan

1. Praktikan dapat menggunakan simulator UMPS sebagai pendukung dalam

merancang program.

2. Praktikan dapat menggunakan resource hardware mikrokontroler

8031/8051.

II. Dasar Teori

UMPS adalah singkatan dari Universal Microprocessor Program

Simulator, yaitu simulator pemrograman mikrokontroler yang universal, yang

dapat mensimulasikan pemrograman mikrokontroler untuk banyak tipe seperti

8031, 8032, ATMEG161, ATMEG603, 68HC11, PIC, SUNPLUS, dan lain

sebagainya. UMPS dapat berjalan pada sistem operasi Windows 3.11, Windows

NT/2000, Windows XP.

UMPS dapat mensimulasikan beberapa CPU dengan memori maksimum

sebesar 64 K Byte. UMPS menggunakan file CPL yang dapat menggunakan file

dengan ekstensi txt atau asm. Setelah loading UMPS dapat melakukan assemble,

disassemble, dan mengeksekusi instruksi yang ada dalam file. UMPS juga mampu

menampilkan dan memodifikasi isi register internal, isi RAM, ROM,

mendisassemble program, breakpoint, dan pengaturan-pengaturan lainnya.

Sistem tidak hanya mensimulasikan CPU tetapi juga mampu

mensimulasikan peripheral environtment. Hal ini karena UMPS terhubung ke

virtual CPU core. Environtment dihasilkan dari resources. Setiap resource dapat

ditampilkan pada window khusus dan dapat dihubungkan secara individual ke

beberapa komponen simulasi microprocessor (seperti RAM, ROM, register-

register, pin, dan lain sebagainya.

Page 2: LaporaN PercobaaN SederhaNa

UMPS dapat menampilkan memori-memori, register-register dan status

dalam multiple document interface. Untuk memulai simulasi dengan UMPS dapat

mengikuti langkah-langkah sebagai berikut :

Loading CPL file: Configure load CPU

Configure register window-Configure Registers

Configure resource: Configure Resources

Display CPU Code: View CPU Code

UMPS dapat menjalankan program dalam format file HEX atau UMPS

dapat menampilkan isi ROM dengan memilih menu: View CPU code.

Edit area adalah bagian dari window CPU code yang digunakan untuk

meng-edit atau menuliskan Mnemonic directly secara langsung. Setelah dilakukan

koreksi, tiap-tiap baris Mnemonic akan dikembalikan untuk dievaluasi dan

di-compile. Jika instruksi yang diberikan salah, maka UMPS akan menampilkan

pesan kesalahan yang ditandai dengan tulisan berwarna merah, dan posisi

instruksi yang salah. Dengan meng-klik instruksi yang salah atau menekan tombol

(CTRL + G) maka kursor akan menuju ke tempat instruksi yang salah untuk

dilakukan koreksi. Apabila instruksi benar, maka akan tampil pesan bahwa proses

compile sukses.

UMPS dapat mensimulasikan beberapa resources komponen eksternal

seperti di bawah ini :

LED (Red, Green, Yellow)

Display 7-segments

Panel LCD

D/A dan A/D Converter

Real time 12C clock

Push button

4 atau 8 Binary decoder

8 x Latch

Page 3: LaporaN PercobaaN SederhaNa

Shift Register, digital Counter, dan sebagainya. Untuk memilih

resources dapat dilakukan dengan memilih menu Configure

resources, kemudian menekan tombol Add. Tampilan pemilihan

resources seperti terlihat pada gambar di bawah ini :

Gambar 1.2 Pemilihan Resources dalam UMPS

UMPS mempunyai kemampuan dalam mensimulasikan beberapa macam

mikrokontroler dan melakukan proses debugging. Dalam software ini sudah

terdapat assembler/disassemble, tetapi eksternal assembler ataupun compiler yang

lain dapat digunakan. UMPS mengijinkan kita untuk melihat source dan variabel.

Untuk dapat mensimulasikan, program harus diketik pada editor

assembler yang disediakan oleh UMPS dengan cara memilih menu file New,

atau memilih Open bila file sudah pernah disimpan. Selanjutnya file di-compile,

bila tidak ada yang salah, maka langkah selanjutnya adalah dengan memilih

tampilan RAM, atau ROM, atau SFR, atau resources, atau dapat juga ditampilkan

seluruhnya dengan cara mengatur window agar dapat terlihat pada satu layar.

Langkah berikutnya adalah menjalankan program. Program dapat dijalankan

dengan beberapa cara yaitu:

Run (F9)

Trace Into (F7)

Step Over (F8)

Execute To (Alt + F9)

Selama program berjalan akan terlihat perubahan pada register, memori

dan resources yang dipilih sesuai dengan program yang dibuat. Untuk

Page 4: LaporaN PercobaaN SederhaNa

menghentikan program dapat dilakukan dengan menekan tombol Halt pada

toolbar yang berada di bawah menu bar. Untuk menjalankan program pada waktu

berikutnya, maka harus ditekan toolbar Reset.

III. Daftar Alat dan Bahan

Simulator 8051 (UMPS)

Cross assembler 8051 (UMPS)

IBM PC kompatibel

IV. Keselamatan Kerja

Untuk melaksanakan praktikum Mikroprocessor dan Embedded sistem II

ini diperlukan langkah-langkah untuk keselamatan :

1. Sebelum praktikum dimulai, masing-masing praktikan menyiapkan

jobsheet.

2. Pastikan hubungan kabel power pada komputer sudah tersambung dan

tidak ada kabel yang terbuka, kemudian hidupkan (turn on) MCB panel

pada meja praktikum.

3. Pastikan hubungan komputer dengan peralatan lainnya, seperti keyboard

dan mouse sudah terhubung.

4. Hidupkan komputer, dan tunggu sampai sistem operasi selesai loading

dan sudah dapat digunakan.

5. Jalankan hanya program UMPS.

6. Ketikkan program menggunakan editor assembler pada UMPS.

7. Selesai melaksanakan praktikum, matikan computer dan kembalikan

keyboard dan mouse pada tempatnya, dan matikan MCB pada panel

power di meja kerja.

8. Rapikan kursi dan peralatan lainnya, dan bersihkan meja dari segala

kertas kerja.

Page 5: LaporaN PercobaaN SederhaNa

V. Langkah Kerja

A. Pemanfaatan CPU Register Window.

1. Jalankan program UMPS.exe

2. Pilih jenis CPU yang hendak disimulasikan dengan cara :

a. Pada Menu pilih Configure

b. Pilih Load CPU

c. Pada bagian Files: Pilih 8031.CPL. Tampilan akan tampak seperti

gambar di bawah ini. Kemudian klik OK.

3. Ketika tampil Demo version seperti gambar di bawah ini, klik OK.

Page 6: LaporaN PercobaaN SederhaNa

4. Setelah itu buat file baru dengan cara :

a. Pilih Menu File

b. Kemudian pilih New

c. Selanjutnya akan muncul window seperti gambar di bawah ini

5. Selanjutnya ketik baris program berikut :

;--------------------------------------------------------------------------------;programmer : Muhammad Azhari;judul program: program penjumlahan sederhana;abstrak : program ini dilakukan untuk melakukan penjumlahan

sederhana yang inputnya berasal dari r0, r1 dan hasil dapat dilihat pada register r2

;procedure : none;register : r0, r1, r2 accumulator;port : none;--------------------------------------------------------------------------------org 00h ljmp start org 30h

start: loopa: mov a,r0 add a,r1 mov r2,a jmp loopaend

Page 7: LaporaN PercobaaN SederhaNa

6. Simpan dengan nama perc1.asm (nama file tidak boleh pakai spasi)

7. Compile program dengan cara :

8. Pilih menu program Compile. Pilih file yang akan di compile. Dalam

hal ini pilih perc1.asm, tampilan seperti gambar di bawah ini

9. Klik OK, bila terdap kesalahan maka pada status akan muncul pesan

ERROR PASS 2 seperti pada gambar di bawah ini.

10. Bila tidak terdapat kesalahan, maka tampilan akan terlihat seperti gambar

di bawah ini.

11. Lakukan perbaikan program sampai program di nyatakan tanpa error.

12. Sebelum simulasi program dilaksanakan, tampilkan semua reister yang

terlibat dalam program dengan cara sebagai berikut.

Page 8: LaporaN PercobaaN SederhaNa

a. Pada menu pilih Configure

b. Pilih CPU Register

c. Selanjutnya tambahkan register berturut – turut ACC atau

accumulator, R0, R1,dan R2 pada CPU Register dengan cara

menekan toolbar ADD atau klik pada menu Add.

13. Atur tampilan register pada window CPU Register agar tidak bertumpuk dan

dan dapat dilihat isinya.

14. Setelah itu lakukan simulasi program dengan cara klik window program

kemudian pilih mode simulasi. Mode simulasi ada beerapa macam yaitu :

Run (F9), atau toolbar GO, Untuk menjalankan simulasi program

dengan alamat awal register PC.

Step over (F8), menjalankan simulasi program step by step dengan

tidak melakukan proses pada procedur.

Trice into (F7), menjalankan program step by step,dan beberapa

pilihan lain seperti Until Return (ALT F8) dan backtrece (ALT F7).

15. Pilih mode run dengan cara klik toolbal GO atau tekan F9, program akan

berjalan. Jika program pengulalangan secara terus- menerus maka program

dapat dihentikan dengan cara memilih toolbar HALT

16. Ubah nilai register R0 dan R1 seperti pada table dibawah ini , dengan cara

klik toolbar EXIT untuk keluar dari window CPU register. Selanjutnya

double click register R0 sehingga tampil kotak set register value seperti

Page 9: LaporaN PercobaaN SederhaNa

terlihat pada gambar 1.11. ketik nilai dalam bilangan heksa decimal pada

bagian Value, dan selanjut nya klik OK. Lakukan hal yang sama untuk

merubah nilai R1. Nilai-nilai R0 dan R1 seperti terlihat pada table 1.1.

Tabel 1.1 tabel Nilai R0 dan R1

No R0 R2

I. 20h 20h

II. 5Ah A5h

III. 77h 78h

IV. 2Ah A2h

V. 1Fh F1h

VI. 55h 65h

VII 22h 22h

VIII. ABh CDh

IX. CCh 22h

X. 12h BBh

17. Setiap perubahan yang dilakukan untuk nilai R0 dan R1, lakukan Run dan

catat hasilnya untuk ACC,R0, R1, dan R2, seperti pada table 1.2 (Tabel Hasil

Percobaan).

18. Setiap kali lakukan run harus diawali dengan toolbar reset agar running

program sesuai dengan perubahan data yang terakhir. Catat hasilnya seperti

pada table hasil percobaan.

Page 10: LaporaN PercobaaN SederhaNa

VI. Tabel Data Pengamatan

Isikan pada table 1.2 di bawah ini hasil percobaan yang telah dilakukan.

Setiap merubah isi register R0 dan R1 lakukan eksekusi program dengan menekan

RUN (F9) satu kali, atau trace into (F7) berulang-ulang.

Tabel 1.2 Tabel Data Pengamatan

NO R0 R1 ACC R2

I. 20h 20h 40h 40h

II. 5Ah A5h FFh FFh

III. 77h 78H EFh EFh

IV. 2Ah A2h CCh CCh

V. 1Fh F1h 10h 10h

VI. 55h 65h BAh BAh

VII. 22h 22h 44h 44h

VIII. ABh CDh 78h 78h

IX. CCh 22h EEh EEh

X. 12h BBh CDh CDh

Page 11: LaporaN PercobaaN SederhaNa

VII. Pertanyaan Praktikum

1. Bagaimana cara memilih CPU yang akan digunakan ?

2. Coba sebutkan urutan yang harus dilakukan untuk memilih CPU

register A, PC, R0, R1, dan R2 ?

3. Instruksi apakah yang digunakan untuk memasukkan data lansung ke

dalam register ?

4. Mengapa isi register A dan register R2 sama ?

Jawaban Pertanyaan Praktikum

1. Untuk memilih CPU yang akan digunakan dapat dilakukan dengan cara

sebagai berikut :

Pada menu pilih Configure

Pilih Load CPU

Pada bagian Files : pilih 8031.CPL

2. Untuk memilih CPU register A,R0,R1, dan R2 dapat dilakukan dengan

langkah-langkah sebagai berikut :

Pilih Configure pada Menu

Pilih CPU register

Selanjutnya tambahkan register berturut-turut ACC, R0, R1, dan R2 pada

CPU register dengan menekan toolbar ADD atau klik pada menu ADD.

3. Instruksi yang digunakan adalah mov,#data

4. Karena isi pada register A dipindahkan(copykan) ke register R2 dengan

perintah mov r2,a

Page 12: LaporaN PercobaaN SederhaNa

VIII. Analisa

Dari praktikum yang telah dilakukan dapat diketahui perintah org untuk

menentukan alamat awal program, dilanjutkan dengan ljmp(long jump) ke alamat

(label) start, kemudian dilanjutkan dengan memberikan label loopa, lalu data pada

register r0 dipindahkan(copy) ke accumulator untuk kemudian ditambahkan

dengan register r1 dengan perintah add a,r1, dan hasilnya dipindahkan(copy) ke

register r2 dengan perintah mov r2,a, lalu dilakukan lompatan ke label (alamat)

loopa dengan perintah jmp loopa, untuk dilakukannya proses perulangan pada

program.

IX. Kesimpulan

Dari hasil praktikum dapat disimpulkan:

o Untuk melakukan proses penjumlahan pada mikrokontroler dapat

menggunakan perintah add.

Page 13: LaporaN PercobaaN SederhaNa

Daftar Pustaka

Brey, Barry B. 1988. The Intel Microprocessors 8086/8088, 80186, 80286, 80386,

and 80486 Architecture, Program and Interfacing, De Bry Institute of

Technologi.

Malik, M.I. & Anistardi, 1997, Bereksperimen dengan Mikrokontroler 8031.PT.

Elex Media Komputindo. Jakarta.

Nalwan, P.A. 2003, Panduan Praktis Teknik Antarmuka dan Pemrograman

Mikrokontroler AT89C51, PT elex Media Komputindo, Jakarta.

Unfecbeck, J.1985. Microcomputer and Microprocessor The 8080, 8085,

Programming, Interfacing and Troubleshooting. Prentice Hall.

Widiatmo, Arianto. 1994. Belajar uP-Mikrokontroler Melalui PC.PT. Elex Media

Komputindo. Jakarta.