nocomlab.ilkom.unsri.ac.id/.../03/modul-bahasa-rakitan-tk.doc · web viewbahasa rakitan jurusan...

30
Modul Praktikum Bahasa Rakitan MODUL PRAKTIKUM BAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Upload: vukhuong

Post on 18-May-2018

238 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

MODUL PRAKTIKUM

BAHASA RAKITAN

JURUSAN TEKNIK KOMPUTER

DISUSUN OLEH:

AHMAD ZARKASI, M.T.

LABORATORIUM ROBOTIKA DAN SISTEM KENDALIFAKULTAS ILMU KOMPUTER

UNIVERSITAS SRIWIJAYA

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 2: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Universitas Sriwijaya Fakultas Ilmu Komputer Laboratorium

LEMBAR PENGESAHAN ACARA PRAKTIKUM

SISTEM MANAJEMEN MUTU

ISO 9001:2008

No. Dokumen ……. Tanggal Januari 2015Revisi 0 Halaman 2 DARI 26

ACARA PRAKTIKUM

Mata Kuliah Praktikum : Praktikum organisasi dan arsitektur komputerKode Mata Kuliah Praktikum : FTK08111SKS : 2Program Studi : Teknik KomputerSemester : 4 (Genap)

DIBUAT OLEH DISAHKAN OLEH DIKETAHUI OLEH

TIM LABORAN LABORATORIUM FASILKOM UNSRI

TIM DOSEN TEKNIK KOMPUTER FASILKOM

UNSRI

KEPALA LABORATORIUM

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 3: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

PENDAHULUAN

I.1 Mikrokontroller AT89C51

Mikrokontroller AT89C51 merupakan salah satu jenis Mikrokontroller CMOS 8 bit

yang memiliki performa yang tinggi dengan disipasi daya yang rendah, cocok dengan produk

MCS-51. Kemudian memiliki sistem pemograman kembali Flash Memori 4 Kbyte dengan daya

tahan 1000 kali write/erase.

Disampig itu terdapat RAM Internal dengan kapasitas128 x 8 bit. Dan frekuensi pengoperasian

hingga 24 MHz. Mikrokontroller ini juga memiliki 32 port I/O yang terbagi menjadi 4 buah port

dengan 8 jalur I/O, kemudian terdapat pula Sebuah port serial dengan kontrol serial full duplex,

dua timer/counter 16 bit dan sebuah osilator internal dan rangkaian pewaktu.

I.2 Diagram Blok dan Konfigurasi

Adapun blok diagram dari Mikrokontroller AT89C51 digambarkan pada gambar 1.

Mikrokontroller ini memiliki 40 konfigurasi pin seperti digambarkan pada gambar 2. Fungsi

dari tiap – tiap dapat dikelompokkan menjadi sumber tegangan, kristal, kontrol, dan input-

output.

Disamping itu Mikrokontroller ini dapat ditambahkan sebuah minimum memori eksternal atau

komponen ekternal lain. Dari kedelapan line dapat digunakan sebagai suatu unit yang

berhubungan ke perangkat paralel seperti printer, pengubah digital ke analog, dan sebagainya,

atau tiap line dapat mengoperasikan sendiri ke perangkat single bit seperti saklar, LED,

transistor, selenoid, motor, dan speaker. Sedangkan fungsi pin dari Mikrokontroller seperti

berikut ini.

Pin 1 sampai 8

ini adalah port 1 yang merupakan saluran/bus I/O 8 bit dua arah. Dengan internal pull-up

yang dapat digunakan untuk berbagai keperluan. Pada port ini juga digunakan sebagai

saluran alamat pada saat pemograman dan verifikasi.

Pin 9

Merupakan masukan reset (aktif tinggi), pulsa transisi dari rendah ke tinggi akan me-reset

Mikrokontroller ini.

Pin 10 sampai 17

Ini adalah port 3 merupakan saluran/bus I/O 8 bit dua arah dengan internal pull-ups yang

memiliki fungsi pengganti. Bila fungsi pengganti tidak dipakai, maka – ini dapat

digunakan sebagai port paralel 8 bit serbaguna. Selain itu sebagian dari port 3 dapat

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 4: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

berfungsi sebagai sinyal kontrol pada saat proses pemograman dan verifikasi. Adapun

fungsi penggantinya seperti pada tabel 2.1.

Pin 18 dan 19

ini merupakan masukan ke penguat osilator berpenguat tinggi. Pada Mikrokontroller ini

memiliki seluruh rangkaian osilator yang diperlukan pada serpih yang sama (on chip)

kecuali rangkaian kristal yang mengendalikan frekuensi osilator. Karenanya 18 dan 19

sangat diperlukan untuk dihubungkan dengan kristal. Selain itu XTAL 1 dapat juga

sebagai input untuk inverting oscilator amplifier dan input ke rangkaian internal clock

sedangkan XTAL 2 merupakan output dari inverting oscilator amplifier

pin 20

Merupakan ground sumber tegangan yang diberi simbol GND.

Pin 21 sampai 28

ini adalah port 2 yang merupakan saluran/bus I/O 8 bit dua arah dengan internal pull-ups. Saat

pengambilan data dari program memori eksternal atau selama mengakses data memori eksternal

yang menggunakan alamat 16 bit (MOVX @ DPTR), port 2 berfungsi sebagai saluran/bus

alamat tinggi (A8 – A15). Sedangkan pada saat mengakses ke data memori eksternal yang

menggunakan alamat 8 bit (MOVX @ R1), port 2 mengeluarkan isi dari P2 pada Special

Function Register.

Pin 29

Program Store Enable (PSEN) merupakan sinyal pengontrol untuk mengakses program

memori eksternal masuk ke dalam bus selama proses pemberian/pengambilan instruksi

(fetching).

Pin 30

Address Latch Enable (ALE)/PROG merupakan penahan alamat memori eksternal (pada

port 1) selama mengakses ke memori eksternal. Pena ini juga sebagai pulsa/sinyal input

pemograman (PROG) selama proses pemograman.

Gambar 1. Konfigurasi Mikrokontroller 89C51

Pin 31

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 5: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

External Access Enable (EA) merupakan sinyal kontrol untuk pembacaan memori

program. Apabila diset rendah (L) maka Mikrokontroller akan melaksanakan seluruh

instruksi dari memori program eksternal, sedangkan apabila diset tinggi (H) maka

Mikrokontroller akan melaksanakan instruksi dari memori program internal ketika isi

program counter kurang dari 4096. ini juga berfungsi sebagai tegangan pemograman (VPP

= +12V) selama proses pemograman.

Pin 32 sampai 39

Ini adalah port 0 yang merupakan saluran/bus I/O 8 bit open colector, dapat juga

digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke

memori program eksternal. Pada saat proses pemograman dan verifikasi port 0 digunakan

sebagai saluran/bus data. External pull-ups diperlukan selama proses verifikasi.

Pin 40

Merupakan positif sumber tegangan yang diberi simbol VCC.

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 6: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

PENJELASAN PERANGKAT

PRAKTIKUM

Perangkat lunak yang digunakan adalah:

1. HB2000N

HB2000N adalah program yang digunakan untuk membuat, mengedit, mengcopile

bahasa assembly. Dalam gambar 2.1 dapat dilihat, terdapat banyak icon yang dapat

digunakan untuk keperluan diatas. Langkah-langkah menjalankan program ini

adalah:

a. D = digunakan untuk membuat program baru atau mengedit program,

setelah itu simpan program dengan extensi H51. Contoh: COBA.H51

Gambar 2.1 tampilan simulator HB2000N

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 7: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Gambar 2.2 Tampilan layer Program

b. L = digunakan untuk memanggil program yang telah dibuat, gunanya

adalah agar program dapat dikompilekan dalam bentuk BIN dan HEX.

Gambar 2.3 Tampilan Load Program

c. A = digunakan untuk mengkompile program secara otomatis

Gambar 2.4 Tampilan program yang benar

2. TS Control Emulator

Software ini digunakan untuk menganalisa jalannya program yang telah dibuat.

Seluruh data dan tampilan memori, register dan alamat memori sudah tersedia dalam

software ini. Untuk memjalankannya ikutoalah prosedur berikut :

a. Buka folder TS Control

b. Clik Emul8051, maka akan muncul gambar seperti Gambar 2.5.

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 8: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Gambar 2.5. Tampilan Emul8051

c. Clik File dan clik Load Hex File…

Maka akan muncul tampilan seperti Gambar 2.6

Gambar 2.6 Tampilan Load Hex Listing

d. Cari file dengan format .HEX > ENTER

e. Clik file dan clik Load Sourse Listing File…….

f. Cari file dengan format .LST > ENTER

g. Jika semua telah dijalankan dengan baik, maka akan muncul tampilan

seperti Gambar 2.7. Untuk melihat jalannya program pada layer tampilan,

kita gunakan > F11

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 9: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Gambar 2.7. Tampilan Emul8051

PRAKTIKUM I

OPERASI TRANFER DATA

1. Tujuan Praktikum

a. Mengerti dan memahami prinsip dasar dari proses transfer data dari suatu

mikrokontroler

b. Mengerti dan memahami setiap instruksi yang digunakan dalam proses transfer

data dan mampu menganalisa setiap data yang dihasilkan

2. Peralatan yang digunakan

a. Seperangkat Komputer

b. Software Ts Control Emulator, Asembly HB2000 dan TOP View Simulator

c. Intruksi yang digunakan : MOV

3. Dasar Teori

Proses transfer data dari suatu mikroprosesor adalah suatu proses perpindahan data

atau menyalin data, tanpa merubah isi dari alamat data yang telah dipindahkan.

Dengan kata lain tidak ada perubahan isi dalam bentuk apapun dari suatu register

yang telah disalin. Ada lima cara yang digunakan dalam proses tranfer data, yaitu

Pengalamatan Segera

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 10: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Teknik pengalamatan segera dilakukan dengan memberikan niali kesuatu alamat

dengan segera tanpa perantara, biasanya mengunakan tanda #. Sebagai contoh:

MOV A, #43H ; Data 43H diisikan ke Register A

Pengalamatan Langsung

Teknik pengalamatan langsung dilakukan dengan cara menyebut lokasi memori

tempat data tersebut berada. Sebagai contoh instruksi :

MOV 30H,#40H : data 40H diisikan ke alamat 30H

MOV A,30H : Data pada alamat 30H, yaitu 40H diisikan ke alamat ke A

Pengalamatan Tak Langsung

Teknik pengalamatan tidak langsung adalah suatu mode pengalamatan yang dilaksakan

dengan cara menitipkan lokasi suatu memori pada regiater penunjuk. Data yang diisikan

kedalam suatu alamat diisikan lagi kesuatu register penunjuk. Biasanya mengunakan

tanda @. Contoh:

MOV Rn,#30H : alamat 30h dimasukan ke register penunjuk Rn

MOV @Rn,#40H : data 40H diisikan ke alamat 30H memalui register Rn

MOV A,@Rn : Data 20H di isikan ke register BX

Pengalamatan Bit

Mode pengalamatan ini adalah ketika operan menunjuk kealamat pada RAM

internal maupun register fungsi khusus yang mempunyai kemampuan

pengalamatan secara bit. Contoh:

SETB P3.0 : Membuat P3.0 menjadi 1

SETB ACC.7 : membuat bit 7 accumulator 1

Pengalamatan Kode

Merupakan pengalamatan ketika operan merupakan alamat dari instruksi Jump

dan Call. Contoh:

SJMP Mulai : Lompat kealamat Mulai

LCALL Delay : Panggil alamat Delay

4. Prosedur Praktikum

1. Salinlah program latihan2. Amatilah data yang diperoleh3. Buat Algoritma Program4. Buat Flowchart Program5. Analisis program6. Buat Kesimpulan7. Analisislah Program tersebut

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 11: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Latihan Program 1

org 00h

mov a,#2fh ; Pengalamatan segeramov 25h,#30hmov r1,#0f5hmov p0,#0f0h

mov a,r1 ; Pengalamatan Langsungmov r1,25hmov p1,amov a,p0

mov r1,#35h ; Pengalamatan tak langsungmov @r1,#0ffhmov a,@r1mov a,#00hmov @r1,a

mov p1,#00h ; Pengalamatan BITsetb p1.1mov p3,#00hsetb txdsetb 0b0hend

PRAKTIKUM II

OPERASI ARITMATIKA

1. Tujuan Praktikum

a. Mengerti dan memahami prinsip dasar operasi aritmatika dari suatu mikrontoler

b. Mengerti dan memahami setiap instruksi yang digunakan dalam operasi

Aritmatika dan mampu menganalisa setiap data yang dihasilkan

2. Peralatan yang digunakan

a. Seperangkat Komputer

b. Software Ts Control Emulator, Asembly HB2000 dan TOP View Simulator

c. Intruksi yang digunakan : ADD, SUBB, MUL, DIV, INC, dan DEC.

3. Dasar Teori

Dalam operasi aritmatika terdapat beberapa instruksi, seperti berikut:

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 12: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Penjumlahan (ADD dan ADDC)

Bilangan 8 bit atau isi dari suatu register atau isi dari suatu memori dapat

dikurangkan dengan Accumulator dan hasilnya disimpan dalam accumulator.

ADD A,35H : Tambahkan data 20H dengan isi accumulator

Pengurangan (SUBB)

Bilangan 8 bit atau isi dari suatu register atau isi dari suatu memori dapat

dikurangkan dengan Accumulator dan hasilnya disimpan dalam accumulator.

SUBB A,Rn : Kurangkan data A dangan data Rn

Perkalian (MUL AB)

Register yang digunakan adalah accumulator dan register B. hasil perkalian

merupakan bilangan biner 16 bit. 8 bit atas disimpan di register B, dan 8 bit

rendah disimpan di register accumulator. Contoh:

MUL AB : isi register A dikalikan dengan isi register B

Pembagian (DIV AB)

Register yang digunakan adalah accumulator dan reg. B. hasil pembagian

disimpan di accumulator dan sisa pembagian disimpan di register B.

Penaikan Data (INC)

Bilangan 8 bit atau isi dari suatu register atau isi dari suatu memori dapat

dinaikkan 1 bit.

Penurunan Data (DEC)

Bilangan 8 bit atau isi dari suatu register atau isi dari suatu memori dapat

diturunkan 1 bit.

4. Prosedure Praktikum1. Salinlah program latihan2. Amatilah data yang diperoleh3. Buat Algoritma Program4. Buat Flowchart Program5. Analisis program6. Buat Kesimpulan7. Analisislah Program tersebut

Latihan 2

org 00hmov a,#05h ; transfer Datamov 2ch,#20hmov r0,#01hmov r1,#02h

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 13: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

add a,2ch ; penjumlahanadd a,#0a2hadd a,r1

clr a ; Pengurangansubb a,#03hsubb a,r0subb a,2chsubb a,r1

mov b,#40h ; Perkalian dan pembagianmul abmov b,#12hdiv ab

inc a ; Penaikan dan penurunan datainc 2chdec r1dec r2end

PRAKTIKUM III

OPERASI LOGIKA

1. Tujuan Praktikum

a. Mengerti dan memahami prinsip dasar operasi Logika dari suatu mikrokontroler

b. Mengerti dan memahami setiap instruksi yang digunakan dalam operasi logika

c. Mampu menganalisa setiap data yang dihasilkan

2. Peralatan yang digunakan

a. Seperangkat Komputer

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 14: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

b. Software Ts Emulator, Asembly HB2000 dan TOP View Simulator

c. Intruksi yang digunakan : ANL, ORL, XRL, CPL, RL,RR dan SWAP

3. Dasar Teori

Ada empat kelompok dalam operasi logika, yaitu:

Operasi Logika (AND, OR, XOR dan NOT)

Bilangan 8 bit atau isi dari suatu register atau isi dari suatu mamori dapat

dilogikakan secara AND, OR atau XOR dengan isi dari accumulator. Hasilnya

disimpan didalam accumulator.

Pergeseran (RR, RRC, RL, RLC)

Setiap bit dalam accumulator dapat digeser kekiri atau kekanan menuju ke posisi

berikutnya.

Komplemen

Isi dari accumulator dapat dikomplemenkan, 0 dapat diganti dengan 1 dan 1

dapat digantikan dengan 0

4. Prosedure Praktikum1. Salinlah program latihan2. Amatilah data yang diperoleh3. Buat Algoritma Program4. Buat Flowchart Program5. Analisis program6. Buat Kesimpulan7. Analisislah Program terseb

Latihan 3.

org 00hmov a,#05h ; transfer Datamov 4ch,#40hmov r4,#0eh

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 15: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

mov r5,#10h

anl a,#02h ; meng-and kan dataanl 4ch,aanl a,r4anl a,r5

mov a,#01h ; meng-or kan dataorl a,#08horl 4ch,aorl a,r4orl a,r5

mov a,#02h ; meng-exor kan dataxrl a,4chxrl a,r4xrl a,r5

end

Latihan 4

org 00h

clr amov a,#05h ; transfer Datamov 23h,#20hmov r6,#0ehmov r7,#10hcpl a ; meng-komplemenkan datamov a,23hcpl amov a,r6cpl aclr a ; me-reset datamov a,#01h ; meng-geser kirikan datarl amov a,r7rl aclr a ; meng-geser kanankan datamov a,#80hrr amov a,#01hrr aclr amov a,23h ; membalikan-nibbel dataswap amov a,r6swap amov a,r7swap a

end

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 16: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

PRAKTIKUM IV

OPERASI PERCABANGAN

DAN SUBRUTINE

1. Tujuan Praktikum

a. Mengerti dan memahami prinsip dasar operasi Percabangan dan Subritine dari

suatu mikrontroler

b. Mengerti dan memahami setiap instruksi yang digunakan dalam operasi

Percabangan dan mampu menganalalisa setiap data yang dihasilkan,\

2. Peralatan yang digunakan

a. Seperangkat Komputer

b. Software Ts Control Emulator, Asembly HB2000 dan TOP View Simulator

c. Intruksi yang digunakan : SJMP, LJMP, ACALL, LCALL, DJNZ, CJNE dan RET

3. Dasar Teori

Terdapat dua jenis instruksi percabangan berdasarkan penyebabnya yaitu,

a. Percabangan Bersyarat

suatu kelompok instruksi tertentu yang melakukan lompatan kesuatu alamat

memori jika memenuhi syarat tertentu. Contoh :

JNZ Loop : Lompat ke Loop jika accumulator tidak = 00h

MOV A,#06H : Jika A = 00H, maka isi A dengan data 06H

Loop : MOV B,#00H : Isi register B dengan data 00

Kelompok instruksi ini adalah JZ, JNZ, CJNE dan DJNZ

b. Percabangan Tanpa Syarat

adalah suatu kelompok instruksi tertentu yang melakukan suatu lompatan

langsung tanpa harus memenuhi syarat tertentu, contoh :

SJMP mulai : Lompat ke Mulai

Mulai: MOV A,#35H : Isi Accumulator dengan data 35H

4. Prosedure Praktikum1. Salinlah program latihan2. Amatilah data yang diperoleh3. Buat Algoritma Program4. Buat Flowchart Program

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 17: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

5. Analisis program6. Buat Kesimpulan7. Analisislah Program tersebt

Latihan 5p1 equ 90h

org 00hsjmp mulai ; Percabangan tanpa syarat

mulai: mov a,#0fhmov p1,aacall delaylcall lagi

stop1: ljmp stop

delay: ; subroutine delaymov r0,#03hdjnz r0,$ ; percabangan bersyaratret

lagi:mov r1,#00h

lag: inc r1cjne r1,#03h,lagmov a,#0fh

lag1: dec ajnz lag1ret

stop: ljmp stop1end

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 18: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

PRAKTIKUM V

TIMER / COUNTER

1. Tujuan Praktikum

a. Mengerti dan memahami prinsip dasar operasi Timer/counter dari suatu

mikrokontroler

c. Mengerti dan memahami setiap instruksi yang digunakan dalam operasi Time

2. Peralatan yang digunakan

a. Seperangkat Komputer

b. Software Ts Control Emulator, Asembly HB2000 dan TOP View Simulator

c. Intruksi yang digunakan : SJMP, LJMP, ACALL, LCALL, DJNZ, CJNE dan RET

3. DASAR TEORI

89C51 mempunyai dua buah timer yaitu Timer 0 dan Timer 1, Masing-masing Timer terdiri

dari 16 bit counter yang bersifat programmable

Register-register Timer

- Timer Mode Register (TMOD) di alamat 89H

- THx dan TLx

- Timer Control Register (TCON) di alamat 88H

Timer Mode Register

TMOD

Tidak dapat diakses secara bit (not bit addressable)

Gambar 5.1 TMOD

Gate: Timer akan berjalan bila bit ini set dan INT0 (untuk Timer 0) atau INT1 (untuk Timer 1)

berkondisi high

C/T: 1 = Counter 0 = Timer

M1 & M0: Untuk memilih mode timer

THx dan TLx (x adalah nomor Timer)

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 19: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Merupakan Register yang menunjukkan nilai dari timer di mana masing-masing Timer

mempunyai dua buah register yaitu:

- THx untuk high byte

- TLx untuk low byte

TH0 : Timer 0 High Byte terletak pada alamat 8AH

TL0 : Timer 0 Low Byte terletak pada alamat 8BH

TH1 : Timer 1 High Byte terletak pada alamat 8CH

TL1 : Timer 1 Low Byte terletak pada alamat 8DH

Timer Control Register (TCON)

Pada register ini, hanya 4 bit saja yaitu TCON.4, TCON.5, TCON.6 dan TCON.7 saja

yang mempunyai fungsi berhubungan dengan timer.

TCON

Gambar 5.2 TCON

TCON.7 atau TF1: Timer 1 Overflow Flag yang akan set bila timer overflow. Bit ini dapat di-

clear oleh software atau oleh hardware pada saat program menuju ke alamat yang ditunjuk oleh

interrupt vector.

- TCON.6 atau TR1: 1 = Timer 1 aktif

- 0 = Timer 1 non aktif

- TCON.5 atau TF0: Sama dengan TF1

- TCON.4 atau TR0: Sama dengan TR1

- TCON.3 hingga TCON.0 akan dibahas pada bagian interrupt

Mode Timer

Mode Timer terdiri dari:

- Mode 0 Timer 13 bit

- Mode 1 Timer 16 bit

- Mode 2 Timer 8 bit auto reload

- Mode 3 Split Timer

Mode 0 (13 Bit Timer)

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 20: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

Gambar 5.3 Timer 1 mode 0

Mode 1 (16 Bit Timer)

Gambar 5.4 Timer1 Mode 1

Mode 2

Gambar 5.5

4. Prosedure Praktikum1. Salinlah program latihan2. Amatilah data yang diperoleh3. Buat Algoritma Program4. Buat Flowchart Program5. Analisis program6. Buat Kesimpulan7. Analisislah program tersebut

Latihan 6ORG 00HSJMP START

START: MOV SP,#30H MOV A,#01H

TERUS: MOV P1,A

ACALL DELAYRL ASJMP TERUS

DELAY: MOV R0,#00H ; timer 1 detik dengan Timer 0LAGI: MOV TMOD,#01H

MOV TL0,#0EFHMOV TH0,#0D8HSETB TR0

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI

Page 21: Nocomlab.ilkom.unsri.ac.id/.../03/MODUL-BAHASA-RAKITAN-TK.doc · Web viewBAHASA RAKITAN JURUSAN TEKNIK KOMPUTER DISUSUN OLEH: AHMAD ZARKASI, M.T. LABORATORIUM ROBOTIKA DAN SISTEM

Modul Praktikum Bahasa Rakitan

ULANG: NOPJBC TF0, HITUNGSJMP ULANG

HITUNG: INC R0CLR TR0CJNE R0,#64H,LAGIRETEND

Laboratorium Robotika, Sistem Kendali dan Mikroprosesor Fakultas Ilmu Komputer UNSRI