Anda di halaman 1dari 19

LAPORAN RESMI

PRAKTIKUM SISTEM MIKROPROSESOR

SEMESTER GASAL/ 2019-2020

DOSEN PENGAMPU:
HENDHI HERMAWAN

NAMA MAHASISWA / NRP:


MUHAMAD RIZQI PRATAMA / 1110181049

PROGRAM STUDI TEKNIK ELEKTRONIKA


DEPARTEMEN TEKNIK ELEKTRO
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
2019
PRAKTIKUM
MIKROPROSESOR & INTERFACE 1
PERCOBAAN III

JUDUL :
SIMULASI CLOSE LOOP CONTROL DASAR (1) :
PENYALAAN LED MELALUI SWITCH YANG DIKNTROL OLEH RANGKAIAN BERBASIS CPU Z80

OBYEKTIF :
1. Memahami prinsip dasar minimum system CPU Z80 yang terdiri dari PU, Memory dan
Peripheral Input/Output sebagai controller.
2. Praktikan dapat menganalogikan percobaan control loop tertutup ini, baik dari segi
perangkat keras, maupun dari segi perangkat lunaknya (program), dengan system dan
program kontrol loop tertutup yang sebenarnya (dimensi yang aplikatif)

PERALATAN :
1. Modul FZ80CPU
2. DC Power Supply (regulated +5V)
3. Modul FZ80 I/O

TEORI :
Pengertian suatu sistem kontrol loop tertutup (close loop control) adalah sistem yang
memiliki terminal masukan, terminal keluaran dan formulasi matematik fungsi output (terminal
keluaran) terhadap input (terminal masukan) yang data terminal keluaran (output) sebagian atau
sampling bagian outputnya diumpan balik ke terminal masukan untuk dijadikan pembanding atau
pengurang nilai data referensi/input dan dapat mempengaruhi unuk kerja / kinerja keluaran dari
sistem.

Contoh analog fisik dalam sistem rangkaian kontrol yang sebenarnya, misalnya, suatu
rangkaian pengontrol temperatur pada suatu boiler. Outputnya adalah berbentuk heater, sedang
inputnya adalah berbentuk sensor temperatur, Metoda yang paling sederhana untuk merealisasikan
algoritma program montrolnya adalah, bila suhu terlalu tingi (dibanding referensi yang telah
diberikan), maka heater dimatikan. Sedang bia terlalu rendah, heater di nyalakan. Hubungan nput-
output inilah yang dinyatakan sebagai hubungan loop tertutup.

Dalam hal ini, yang disebut sebagai rangkaian kontrol elektronik adalah mempunyai makna
suatu sistem yang mempunyai piranti input dan piranti output. Piranti input berfungsi sebagai piranti
penerima data—data dari sistem yang dikontrl, sedang piranti output berfungsi sebagai pemberi ksi
kepada sistem yang diontrol. Rangkaian kontrol elektronik berbasis mikroprosesor mempunyai
pengertian yang lebi mendalam, baha otak dari rangkaian elektronik tersebut adalah suatu
mikroprosesor dengan arahan operasi program kemudinya.

Syarat bahwa rangkaian kontrol harus memiliki output sebagai actulator dan input yang biasa
disebut sebagai sensor,menunjukkan baha ruang lingkup tata rangkaian atau perangkat kerasnya
adalah amat relatif dan sangat tergantung dari permasalahan yang hendak dikontrolnya. Untuk itu
setiap rangkaian kontrol berbasis mikroprosesor dapat menerapkan berbagai macam peripheral
Input Output untuk membentuk fungsi sensor dan actuator itu. Realisasi perancangan dapat
berkembang dari mulai satu bit input dan satu bit output sampai dengan umlah bit yang tak
terhingga.

Sistem rangkaian berbasi Mikroprosesor Z80 dalam bentuk yang paling ringkas tetapi telah
memenuhi persyaratan sebagai sistem kontrol elektronik ditunjukkan dalam bentuk blok diagram
dalam Gamabar 3-1 berikut ini.

Gambar 3-1. Blok Diagram Dasar Rangkaian berbasis Mikroprosesor

Blok diagram di atas terdiri dari 3 komponen pendukung utama yaitu:

1. CPU / Mikroprosesor TMPZ84C00


2. Sistem Memory : dapat berupa EEPROM dan RAM, dan
3. Sistem piranti I/O (Input/Output) berupa IC pheriperal

Piranti Input/Output dari system control di atas merupakan pintu gerbang hubungan ke system

yang akan dikontrol. Aksi yang dikehendaki system control ini dapat diwujudkan sebagai perintah
pengemudian suatu actuator, yang level awal keluaran dari system kontrolnya adalah level biner.
Demikian pula untuk masukan yang akan dijadikan referensi aksi system control. Masukan ini diamati
melalui gerbang Peripheral input, yang level akhir data diwujudkan dalam biner pula.
Gambar 3-2. Ilustrasi blok diagram State yang dikontrol

Sedangkan yang disebut sebagai system yang dikontrol diilustrasikan pada Gambar 3-2. Blok
diagram ini dapat mewakili seluruh model permasalahan yang dapat diatur dengan control
elektronik. Terminal input, paling tidak, dapat terdiri dari sebuah jalur atau lebih (sekumpulan jalur)
yang beroperasi pada logika digital. Demikian pula pada terminal output, dapat terdiri dari sebuah
jalur atau lebih (sekumpulan jalur) yang beroperasi pada logika digital pula.

Dalam praktek, terminal input maupun terminal output system yang dikontrol dapat
beroperasi pada bermacam-macam besaran. Akan tetapi besaran ini harus diterjemahkan ke dalam
besaran logika dengan level yang sesuai bila hendak dihubungkan ke system rangkaian berbasis
mikroprosesor itu. Piranti-piranti penerjemah ini disebut dengan interface ke piranti Sensor dan
Actuator.

Bila system rangkaian control pada Gambar 3-1 digabung dengan rangkaian yang dikontrol
maka blok diagramnya menjadi seperti gambar berikut.

Gambar 3-3. Ilustrasi Blok diagram Sistem rangkaian berbasis mikroprosesor yang digabung dengan
system yang dikontrolnya

Suatu sistem minimum yang menggunakan CPU Z80 dengan fasilitas 8 bit Input Port dan 8-bit
Output Port dapat digambarkan sebagai berikut.
Gambar 3-4. Blok Input/Output pada Sistem Rangkaian Kontrol Berbasis Mikroprosesor dengan
alamat kerja tertentu.

Dalam percobaan ini Praktikan dapat mempelajari suatu teknik dasar untuk mengaktifkan input
dan output Port dari suatu sistem minimum CPU Z80, sebagai analogi dari suatu sistem control loop
tertutup. Setiap data yang di-set pada Input Port akan ditampilkan ke Output Port dalam bentuk
nyala

LED.

PROSEDUR:

1. Menyiapkan papan rangkaian PZ80CPU dan FZ0I/O. Menghubungkan kedua papan rangkaian
dengan kabel “flat” yang telah tersedia. (Menghubungkan dengan hati-hati. Dan hubungan
antar muka tiap kabel pita dilihat dari pandangan atas konektornya adalah terbalik antara
FZ80CPU dan FZ80 I/O).
2. Menyiapkan DC Power Supply dan modul DC Regulator +5V. Kemudian menghubungkan
dengan FZ80CPU. Memastikan bahwa polaritas tidak terbalik.
3. Memeriksa kelengkapan komponen yang terpasang di FZ80CPU, terutama : pada soket IC1
harus terpasang RAM 62256, sedangkan soket IC2 kosong. Pada percobaan ini hanya
memerlukan RAM pada soket IC1 saja. Mengatur posisi jumper JP1 s/d JP5 pada kedudukan
2-1-2-2-2.
4. Menyalakan sumber tegangan. Kemudian dengan fasilitas DMA, memasukkan program
percobaan dibawah ini ke RAM 62256 sesuai dengan alamat-alamat dalam listing program.

0000 3E 8B LD A, 8BH

0002 D3 83 OUT (83H), A ;INISIALISASI 8255

0004 DB 81 LOOP: IN A, (81H) ;BACA DATA DI SWITCH

0006 D3 80 OUT (80H), A ;TULIS DI LED

0008 C3 04 00 JP LOOP ;ULANGI

Gambar 3-5. Program Percobaan I/O No.1


5. Bila selesai, menguji program ini dengan mengatur kedudukan switch pada AUTO dan RUN.
Mengamati jalannya program. Mencoba mengubah-ngubah dalam suatu system control loop
tertutup. Mengamati apa yang terjadi pada tampilan LED sebagai terminal keluaran.
Menganalisa dan memberi kesimpulan.
6. Mengulangi langkah 4 dan 5 untuk program-program berikut ini.

0000 3E 8B LD A, 8HH

0002 06 00 LD B, 0

0004 D3 83 LAGI: OUT (83H), A ;INISIALISASI 8255

0006 10 FD DJNZ LAGI

0008 DB 81 LOOP: IN A, (81H) ;BACA DATA DI SWITCH

000A 0F RRCA

000B 0F RRCA

000C D3 80 OUT (80H), A ;TULIS DI LED

000E C3 08 00 JP LOOP ;ULANGI

Gambar 3-6. Program Percobaan I/O No. 2

7. Mencoba juga langkah No. 4 dan 5 untuk program-program berikut ini.

0000 3E 8B LD A, 8BH

0002 06 00 LD B, C

0004 D3 83 LAGI: OUT (83H), A ;INISIALISASI 8255

0006 10 FD DJNZ LAGI

0008 DB 81 LOOP: IN A, (81H) ;BACA DATA DI SWITCH

000A 07 RLCA

000B 07 RLCA

000C 07 RLCA

000D 07 RLCA

000E 07 RLCA

000F D3 80 OUT (80H), A ;TULIS DI LED

0011 C3 08 00 JP LOOP ;ULANGI

Gambar 3-7. Program Percobaan I/O No. 3


0000 3E 8B LD A, 8BH

0002 06 00 LD B,0

0004 D3 83 LAGI: OUT (8BH), A ;INISIALISASI 8255

0006 10 FD DJNZ LAGI

0008 DB 81 LOOP: IN A, (81H) ;BACA DATA DI SWITCH

000A EE FF XOR 11111111B

000C D3 80 OUT (80H), A ;TULIS DI LED

000E C3 08 00 JP LOOP ;ULANGI

Gambar 3-8. Program Percobaan I/O No.4

PERTANYAAN DAN TUGAS:


1. Ubahlah program No. 1 sedemikian rupa hingga bila di RUN, tampilan LED yang bersesuaian
tidak langsung menyala begitu switch di-ON-kan, tetapi menunggu sekitar satu detik. Jadi,
dalam hal ini Anda harus menambahkan suatu program rutin DELAY.
2. Bagaimanakah data inisialisasi PPI8255 bila Output port diubah ke Port B, Input Port diubah
ke Port A, sedang Port C sebagai output?
3. Bandingkan keempat program yang telah Anda uji coba. Diskusikan, dan tariklah suatu
kesimpulan yang dihubungkan dengan fleksibilitas suatu system control berbasis
mikroprosesor, tuliskan dalam Laporan Anda.
KUMPULAN LAPORAN SEMENTARA
PRAKTIKUM SISTEM MIKROPROSESOR

SEMESTER GASAL/ 2019-2020

DOSEN PENGAMPU:
HENDHI HERMAWAN

NAMA MAHASISWA / NRP:


JUNIA ELEN MAULIDYA NATA / 1110191033
SUTAN FARHAN ADRIANSYAH / 1110181041
ADAM RAFLI AL HANIF / 1110181042
M. RIZQI PRATAMA / 1110181049

PROGRAM STUDI TEKNIK ELEKTRONIKA


DEPARTEMEN TEKNIK ELEKTRO
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
2019
LAPORAN SEMENTARA

Rabu ,26 september 2019

Lab : H102 (Lab Embedded)

Anggota kelompok :

1. Junia Elen Maulidya Nata (1110181033)


2. Sutan Farhan (1110181041)
3. Adam Rafli (1110181042)
4. M. Rizqi Pratama (1110181049)

PRAKTIKUM KE 3

PROSES DESAIN PROGRAM SAMPAI BURNING KE EEPROM UNTUK SISTEM RANGKAIAN BERBASIS
MIKROPROSESOR Z80

TUJUAN:

1. Mengenalkan konsep memory dan peta memory pada sistem minimum z80
2. Mengenalkan tata cara memproses program dari desain sampai langkah pemrograman
EPROM / EEPROM
3. Mengenalkan proses pengembanganprogram menggunakan Bahasa assembly mulai dari
editing hingga file siap digunakan pada mikroprosesor Z80

ALAT DAN BAHAN :

1. Komputer (1 )
2. Universal Programmer (1)
3. Modul FZ80 CPU (1)
4. Powe Supply (1)
5. Data Sheet Komponen : Z80 – CPU / PPI8255/ RAM 622556/ EEPROM 28C64B (1)
6. IC 28C648 (EEPROM) dan RAM 62256 (1)
7. Instruction Set Z80 (1)

SETTING PERCOBAAN

(Terlampir)

PROSEDUR PERCOBAAN:

A. Menyiapkan File Assembly ( File dalam ekstensi *.ASM)


1. Membuat sebuah folder di drive computer, memastikan dalam folder tersebut terdapat
file ZAS.EXE/OBJTOHEX.EXE/HEXTOBIN
2. Memastikan pada computer telah tersedia tools untuk teks editor. Teks editor yang bias
digunakan seperti crimson editor dan notepad
3. Mengetik program assembly
4. Memastikan tidak ada kesalahan basis program
5. Menyimpan file dalam format Bahasa assembly dengan ekstensi *.ASM
6. File assembly siap digunakan
B. Melakukan proses kompilasi menggunakan Z80 assembler (ZAS.EXE)
1. Membuka command prompt mengarahkan drive ke lokasi file assembler
2. Memastikan file assembly dan assembler (ZAS.EXE) berada pada folder yang sama, bias
digunakan diperintah DIR untuk memastikannya folder
3. Melakukan prose kompilasi dengan cara ketik ZAS.EXE-spasi-nama file.ASM
4. Jika terjadi kesalhan sintaks maka pesan kesalahan akan ditampilkan
5. Jika proses kompilasi berhasil maka akan dihasilakan file baru dengan ekstensi *.OBJ bias
menggunakan perintah DIR untuk memastikannya.
C. Melakukan proses konversi file OBJ ke INTEL HEX (OBJ TO HEX.EXE)
1. Membuka command prompt mengarahkan drive ke lokasi folder file object yang memiliki
ekstensi *.OBJ. Memastikan file object terletak dalam saatu folder dengan tools OBJ TO
HEX.EXE menggunakan perintah DIR untuk memastikannya
2. Melakukan proses konversi file object ke INTEL.HEX dengan cara mengetik
OBJTOHEX.EXE-spasi-nama file. OBJ-spasi-nama file.HEX enter
3. Jika proses berhasil maka akan menghasilakn file baru dengan ekstensi *.HEX, bias
menggunakan perintah DIR untuk memastikannya
D. Mengisikan data ke EEPROM Melalui aplikasi TOPWIN
1. Menyiapkan Universal Proggramer lalu mengkoneksikan ke CPU
2. Membuka aplikasi TOPWIN
3. Memasang EEPRON ke Universal Programmer
4. Menekan sellesct chip, memilih EEP/FLASH>ATMEL>ATL 28C64B (sesuai EEPROM)
E. Data Percobaan
(Terlampir)
DATA PERCOBAAN

1. Percobaan A

Step Add Data


Binner Hexa Biner Hexa
1 0000 0000 0000 0000 0000 0000 0000 0011 0001 0031
2 0000 0000 0000 0011 0003 0000 0000 0000 0000 0000
3 0000 0000 0000 0100 0004 0000 0000 0000 0110 0006
4 0000 0000 0000 0110 0006 0000 0000 0000 0000 0000
5 0000 0000 0000 0111 0007 0000 0000 0001 0000 0010
6 0000 0000 0000 0110 0006 0000 0000 0000 0000 0000
7 0000 0000 0000 0111 0007 0000 0000 0001 0000 0010
8 0000 0000 0000 0110 0006 0000 0000 0000 0000 0000
9 0000 0000 0000 0111 0007 0000 0000 0001 0000 0010
10 0000 0000 0000 0110 0006 0000 0000 0000 0000 0000
11 0000 0000 0000 0111 0007 0000 0000 0001 0000 0010
12 0000 0000 0000 0011 0003 0000 0000 0000 0000 0000
13 0000 0000 0000 0100 0004 0000 0000 0000 0110 0000

Step ADD DATA

Binner Hexa Binner Hexa

1 0000 0000 0000 0000 0000 0000 0011 0001 0031


0000
2 0000 0000 0000 0003 0000 0000 0011 1110 003E
0011
3 0000 0000 0000 0005 0000 0000 1101 0011 00D3
0101
4 0000 0000 0000 0007 0000 0000 1101 1011 00DB
0111
5 0000 0000 0000 0009 0000 0000 1101 0011 00D3
1001
6 0000 0000 0000 0011 0000 0000 1100 0011 00C3
1011
7 0000 0000 0000 0000 0000 0000 0011 0001 0031
0000
8 0000 0000 0000 0003 0000 0000 0011 1110 003E
0011
9 0000 0000 0000 0005 0000 0000 1101 0011 00D3
0101
ANALISA

Pada praktikum kali ini kami telah mempraktikkan proses merancang program
sampai memburning nya ke EEPROM untuk system rangkaian berbasis mikroprosesor
Z80. Ada empat buah program yang kami coba pada praktikum ini, Keempat program
tersebut ditulis ke dalam text editor berupa notepad. Kemudian dilakukan kompilasi
dengan menggunakan ZAS. EEPROM PROGRAMMER membaca program tersebut
dalam bentuk heksa sehingga harus dilakukan konversi ke heksa dengan menggunakan
file OBJTOHEX.
Setelah kami burning programnya dan kami coba pada papan PCB kami dapatkan
data output program hasil percobaan yang telah terlampir. Pada program yang pertama
outptnya keluar setelah di step dua kali dan nilai output yang ditunjukkan oleh LED
sama dengan nilai input yang telah diberikan pada SWITCH sebelumnya. Pada program
yang kedua output keluar setelah diberikan empat kali STEP setelah memberi input dan
nilai outputnya bergeser dua ke kanan dari inputnya. Pada program yang ketiga program
muncul setelah diberikan STEP sebanyak tujuh kali dan nilai output yang ditunjukkan
LED bergeser tiga ke kanan dari input yang diberikan. Lalu pada program yang keempat
nilai output keluar setelah tiga kali STEP dan nilai outputnya adalah nilai inverse dari
input yang diberikan, jika bit inputnya 1 maka akan menjadi 0 pada output dan jika bit
inputnya 0 maka akan menjadi 1 pada output. Banyaknya STEP yang dilakukan dapat
diatur dari program kita, input dimasukkan ketika data berupa DB dan output akan
keluar pada saat data bernilai C3.

KESIMPULAN

Berdasarkan data-data yang telah didapatkan dari hasil praktikumyang telah dilakukan,
dapat disimpulkan bahwa:
1. EEPROM dapat enghapus program dengan menggunakan listrik.
2. EEPROM membaca program dalam bentuk bilangan hexadecimal sehingga program
awal harus dikonversi dulu agar bias terbaca oleh EEPROM.
3. Kita bisa mengatur bagaimana EEPROM bekerja dengan membuat program yang kita
inginkan dan memburningnya ke dalam EEPROM.
4. Dari program yang disediakan kita bisa membuat data output sama dengan input,
bergeser sekian bit dari input, dan juga membuat nilai inverse dari input.

Anda mungkin juga menyukai