MODUL PRAKTIKUM
PRAKTIKUM ORGANISASI DAN ARSITEKTUR KOMPUTER
TEKNIK INFORMATIKA BILINGUAL
DISUSUN OLEH :
UNIVERSITAS SRIWIJAYA
PENDAHULUAN
1.1. Tujuan
Tujuan dari praktikum ini adalah adalah agar mahasiswa mampu menganalisa
dan memahami prinsip dasar proses transfer data yang ada pada mikroprosesor
8086, operasi-operasi aritmatik, operasi-operasi logika, operasi-operasi
percabangan dan dasar pemrograman dengan bahasa assembly.
PPI berfungsi sebagai I/O Expander yang dapat diprogram. PPI yang digunakan
mempunyai 24 bit jalur input output yang dapat dihubungkan dengan peralatan atau
device lain. 24 bit I/O ini dibagi menjadi 3 port yaitu Port A, Port B, dan Port C.
LCD Port
LCD (Liquid Crystal Display) Port ini disiapkan untuk men-drive LCD melalui
Port 1 mikrokontroler 89C51. Rutin untuk keperluan LCD sudah tersedia pada PEROM
89C51 sehingga user tinggal memakainya.
DT51 mempunyai data bus dengan lebar 8 bit, serta address bus 16 bit.
Sedangkan control bus yang digambarkan pada blok diagram DT51 terdiri dari beberapa
sinyal kontrol, antara lain : RD, WR, PSEN, ALE, serta chip select yang dihasilkan oleh
address decoder. DT51 dapat bekerja dalam dua mode yaitu download dan stand alone.
Pada mode download, user dapat mendownload program dari PC ke DT51 dengan
program download DT51L. Setelah proses download selesai, user program otomatis
langsung bekerja. Sedangkan mode stand alone digunakan apabila program sudah
sempurna (tidak terdapat kesalahan). Pada mode ini program yang terakhir di-download
otomatis berjalan sendiri saat catu daya dihidupkan.
Spesifikasi DT51
DT-51 Trainner Board merupakan suatu modul yang memiliki spesifikasi sebagai
berikut :
Hubungan DT-51 MinSys ver 3.0 dan DT-51 Trainner Board hanya berkisar pada
Port A dan Port B, Port C dan Port1 dan control. Bagian-bagian tersebut dapat dilihat
dalam DT-51 area dikelilingi garis putus putus seperti pada gambar. Didalam DT-51
Trainner Board juh\ga terdapat bagian-bagian yang dihubungkan.
Beberapa tipe kabel harus dibuat untuk menghubungkan DT-51 MinSYs Vers 3.0
dengan DT-51 Trainner Board serta menghubungkan PCB pin dalam DT-51 Trainner
Board. Bahan-bahan yang diperlukan dalam proses pembuatan kabel adalah:
4 set Ampenol 8 x 2
4 set Ampenol 5 x 2
Kabel pita selebar 16 lembar kabel dengan panjang secukupnya
Kabel Tunggal dengan Panjang secukunya
PERANGKAT LUNAK
Keterangan
1. Menu
File : open & Download (F9) = Untuk Membuka file Hex dan mendownload
program tersebut
Re download (Ctrl+F9) = Untuk men download ulang file yang
terakhir dibuka
Option : Testing = untuk melakukan testing sesuai testing option
Exit : = keluar dari program
2. COM & Baud Rate
COM Option : untuk memilih Serial port yang digunakan
Baudrate Option : untuk memilih kecepatan baud rate yang digunakan
3. Auto Detect
Jika dicentang, maka COM port dan Baudrate akan dipilih secara otomatis Jika
tidak dicentang, maka COM port dan Baudrate ditentukan oleh COM Option dan
Baudrate Option
4. USB Converter (membutuhkan kernel DT-51 MinSys/PetraFuz baru)
Jika menggunakan USB to Serial RS-232 Converter, centanglah kotak ini
Jika langsung menggunakan COM port, hilangkan centang pada kotak ini
5. Testing Option
Berisi pilihan prosedur testing (keterangan lebih lengkap terdapat pada manual
DT-51 MinSys ver 3.0)
6. Download Algorithm
Berisi pilihan metode download (keterangan lebih lengkap terdapat pada manual
DT-51 MinSys ver 3.0)
Salah satu software Bantu lain yang digunakan adalah Hyper Terminal yang juga
tersedia di setiap computer berbasis windows. Hyper Terminal digunakan untuk
melihat data kemunikasi yang sedang terjadi pada serial port. Setelah
menjalankan Hypert Tem. EXE, sebuah jendela untuk memberikan nama koneksi
baru akan muncul. Beri nama koneksi tersebut dan tekaan tombol OK, yang perlu
dirubah hanyalah pada bagian Connect Using : pada bagian ini perlu diubah
hanyalah pada bagian serial port yang akan digunakan lalu tekan OK
Tampilan berikutnya yang muncul berfungsi untuk memilih kecepatan dan jenis
koneksi. Pada bagian ini yang perlu dirubah adalah bagian Bit per Second untuk
menyesuaikan kecepatan koneksi. Nilai kecepatan ini tergantung dari program
yang akan dibuat. Bagian lain yang perlu diuabah adalah Flow Control ubahlah
nilainya menjadi None setelah mengisi nilai tersebut tekanlah OK.
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
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
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
4. Prosedur Praktikum
1. Salinlah program latihan
2. Amatilah data yang diperoleh
3. Buat Algoritma Program
4. Buat Flowchart Program
5. Analisis program
6. Buat Kesimpulan
7. Analisislah Program tersebut
Latihan Program 1
org 00h
mov a,#2fh ; Pengalamatan segera
mov 25h,#30h
mov r1,#0f5h
mov p0,#0f0h
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
3. Dasar Teori
Dalam operasi aritmatika terdapat beberapa instruksi, seperti berikut:
4. Prosedure Praktikum
Latihan 2
org 00h
mov a,#05h ; transfer Data
mov 2ch,#20h
mov r0,#01h
mov r1,#02h
clr a ; Pengurangan
subb a,#03h
subb a,r0
subb a,2ch
subb a,r1
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
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 Praktikum
Latihan 3.
org 00h
mov a,#05h ; transfer Data
mov 4ch,#40h
mov r4,#0eh
mov r5,#10h
Latihan 4
org 00h
clr a
mov a,#05h ; transfer Data
mov 23h,#20h
mov r6,#0eh
mov r7,#10h
cpl a ; meng-komplemenkan data
mov a,23h
cpl a
mov a,r6
cpl a
clr a ; me-reset data
mov a,#01h ; meng-geser kirikan data
rl a
mov a,r7
rl a
clr a ; meng-geser kanankan data
mov a,#80h
rr a
mov a,#01h
rr a
clr a
mov a,23h ; membalikan-nibbel data
swap a
mov a,r6
swap a
mov a,r7
swap a
end
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,\
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 Praktikum
Latihan 5
p1 equ 90h
org 00h
sjmp mulai ; Percabangan tanpa syarat
mulai: mov a,#0fh
mov p1,a
acall delay
lcall lagi
stop1: ljmp stop
PRAKTIKUM V
OUTPUT DATA
TUJUAN
Mampu membuat program input dan output menggunakan port 1 dari Modul DT-51 dengan cara
mengakses port 1 secara per bit dan per byte.
GAMBAR RANGKAIAN
MCU
Vcc
MCU
R
R
R
R
R
R
R
Gambar 5. Switch
PROSEDUR PRAKTIKUM
PERCOBAAN 1 : OUTPUT
Hubungkan Port 1 DT-51 MinSys dengan port OUTPUT DT-51 Trainer Board
menggunakan kabel tipe Y
Hubungkan control DT-51 MinSys dengan control DT-51 trainner board (sebagai
sumber) menggunakan kabel tipe X
Hubungkan DT 51 MinSys dengan PC dengan menngunakan kabel serial
Hubungkan DT-51 MinSys dengan sumber tegangan
Ketik program dibawah, assemble, download ke DT-51 MinSys
Analisislah program tersebut
Buat kesimpulan
PROGRAM 1
$mod51
CSEG
ORG 4000H
LJMP MULAI
ORG 4100H
MULAI: MOV SP, #30H
SETB P1.0
CLR P1.1
SETB P1.2
CLR P1.3
SETB P1.4
CLR P1.5
SETB P1.6
CLR P1.7
SJMP $
END
PROGRAM 2
$MOD51
CSEG
ORG 4000H
LJMP MULAI
ORG 4100H
MULAI: MOV SP,#30H
MOV A, #10101010B
MOV P1,A
SJMP$
END
PRAKTIKUM VI
COUNTER DATA
TUJUAN
Mampu membuat program counter data sebuah register dan menampilkannya pada PORT1
GAMBAR RANGKAIAN
MCU
Vcc
MCU
R
R
R
R
R
R
R
Gambar 5. Switch
PROSEDUR PRAKTIKUM
PERCOBAAN 1 : counter data
Hubungkan Port 1 DT-51 MinSys dengan port OUTPUT DT-51 Trainer Board
menggunakan kabel tipe Y
Hubungkan control DT-51 MinSys dengan control DT-51 trainner board (sebagai
sumber) menggunakan kabel tipe X
Hubungkan DT 51 MinSys dengan PC dengan menngunakan kabel serial
Hubungkan DT-51 MinSys dengan sumber tegangan
Ketik program dibawah, assemble, download ke DT-51 MinSys
Analisislah program tersebut.
Buat kesimpulan.
Program :
$mod51
CSEG
ORG 4000H
LJMP MULAI
ORG 4100H
MULAI:
MOV A, #01H
MOV P1, A
KIRI:
RL A
MOV P1, A
LCALL TUNDA
CJNE A, #80H, KIRI
LJMP MULAI
TUNDA:
DJNZ R0, TUNDA
DJNZ R1, TUNDA
RET
END
PRAKTIKUM VII
PERGESERAN DATA
TUJUAN
Mampu membuat program pergeseran data sebuah register dan menampilkannya pada PORT1
GAMBAR RANGKAIAN
MCU
Vcc
MCU
R
R
R
R
R
R
R
Gambar 5. Switch
PROSEDUR PRAKTIKUM
PERCOBAAN 1 : pergeseran data
Hubungkan Port 1 DT-51 MinSys dengan port OUTPUT DT-51 Trainer Board
menggunakan kabel tipe Y
Hubungkan control DT-51 MinSys dengan control DT-51 trainner board (sebagai
sumber) menggunakan kabel tipe X
Hubungkan DT 51 MinSys dengan PC dengan menngunakan kabel serial
Hubungkan DT-51 MinSys dengan sumber tegangan
Ketik program dibawah, assemble, download ke DT-51 MinSys
Analisislah program tersebut.
Buat kesimpulan.
Program :
$mod51
CSEG
ORG 4000H
LJMP MULAI
ORG 4100H
MULAI:
MOV A, #01H
MOV P1, A
NAIK:
INC A
MOV P1, A
LCALL TUNDA
CJNE A, #0FFH, NAIK
LJMP MULAI
TUNDA:
DJNZ R0, TUNDA
DJNZ R1, TUNDA
RET
END
TUJUAN
Mampu membuat program aplikasi input dan output menggunakan PPI dan port
pada DT-51 minSys dalam Mode 0
Mampu memahami pengalamatan pada PPI 8255
DASAR TEORI
PPI port merupakan port ekspansi (tambahan) yang terdiri dari tiga port (port
A,Port B, Port C). port A berada pada alamat 2000h, port B berada pada alamat 2001h
dan port C berada pada alamat 2002h. masing-masing port tersebut memilki jalur data
input dan output selebar 8 bit
Konfigurasi Pena
Konfigurasi pena IC PPI 8255 terdiri dari 40 pena (pin) sebagai gambar berikut:
Konfigurasi fungsional setiap port diprogram melalui susunan bit kata kendali, yang
berisi informasi modus, set bit, reset bit dll. Susunan bit ini merupakan proses
inisialisasi fungsional PPI 8255. Setiap blok kendali (kelompok A dan B) menerima
perintah dari logika kendali baca/tulis. Register kata kendali hanya dapat dioperasikan
untuk keluaran, dan tidak dapat dibaca.
Tabel 1. Operasi Dasar IC PPI 8255.
No A1 A0 RD WR CS Operasi masukan (baca)
1 0 0 0 1 0 Port A ke Bus Data
2 0 1 0 1 0 Port B ke Bus Data
3 1 0 0 1 0 Port C ke Bus Data
Operasi Keluaran (Tulis)
4 0 0 1 0 0 Bus data ke Port A
5 0 0 1 0 0 Bus data ke Port B
6 1 0 1 0 0 Bus data ke Port C
7 1 1 1 0 0 Bus data Ke reg kendali
Kondisi Ilegal (terlarang) dan kondisi three state
8 x x X x x Bus data kondisi three state
9 1 1 0 1 0 Kondisi Ilegal
10 x x 1 1 0 Bus data kondisi three state
Modus 1
Dikenal dengan strobed directional bus input/output digunakan untuk membuat port
masukan/keluaran paralel pada port A dan B, sedangkan port C menggunakan sinyal
jabat tangan. Modus 1 memiliki fungsi sebagai berikut:
Terdiri dari kelompok port A dan B
Masing-masing kelompok terdiri dari 8 bit port data dan 4 bit port data/kendali
Modus 2
Modus 2 disebut strobed bi-directional bus input/output yakni strobed data input/output
dau arah, dengan fungsi sebagai berikut:
Hanya kelompok port A yang dapat digunakan sebagai bidectional
Terdiri dari 8 bit bus 2 arah (port A), dan 5 bit port kendali (port C).
Masing-masing masukan/keluaran dapat dikunci
5 bit port kendali (port C) digunakan untuk kendali dan status dari pada 8 bit port
bus dua arah (port A).
Kata kendali merupakan pendefinisian modus dan port yang akan digunakan dan
prosesnya dilakukan oleh perangkat lunak. Format kata kendali adalah sebagai berikut:
GAMBAR RANGKAIAN
MCU
DRIVER
34 D0 4
33 PA.0
D1 3
32 PA.1
D2 2
31 PA.2
D3 1
30 PA.3
D4 40
29 PA.4
D5 39
28 PA.5
D6 38
27 PA.6
SEVEN D7 37 SAKLAR
PA.7
SEGMEN 14
PC.0 PB.0 18
15 19
16 PC.1 PB.1
PC.2 PB.2 20
17 21
13 PC.3 PB.3
PC.4 PB.4 22
12 23
11 PC.5 PB.5
PC.6 PB.6 24
10 25
PC.7 PB.7
RD 5
RD
WR 36 Vcc 26
WR +5 V
Y3 6
CS 7
P3.3 9 GND
A0
P3.4 8
A1 RST 35
PPI 8255
PROSEDUR PRAKTIKUM
Hubungkan control DT-51 MinSys dengan control DT-51 trainner board (sebagai
sumber) menggunakan kabel tipe X
Hubungkan DT 51 MinSys dengan PC dengan menggunakan kabel serial
Hubungkan DT-51 MinSys dengan sumber tegangan
hubungkan Port A DT-51 MinSys dengan Port Output Dt-51 Trainner Board
menggunakan kabel Y, Ketik program dibawah, assemble, download ke DT-51
MinSys
Analisislah program tersebut
Buat kesimpulan
Program1:
$MOD51
PORTC EQU 2002H
CW EQU 2003H
CSEG
ORG 4000H
LJMP MULAI