laporan pratikum 11 raisa

24
LAPORAN PRAKTIKUM Microprosessor PEMBANGKIT PULSA DAN GELOMBANG TANGGAL PERCOBAAN : 29 November 2012 NAMA : Raisa Putri (111331052) PARTNER : Rega Nugraha (111331054) Shanti Mayang E (111331058) KELAS : 2 TC B2 TEKNIK TELEKOMUNIKASI POLITEKNIK NEGERI BANDUNG 2012

Upload: kawai11

Post on 15-Dec-2014

114 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Laporan Pratikum 11 Raisa

LAPORAN PRAKTIKUM

Microprosessor

PEMBANGKIT PULSA DAN GELOMBANG

TANGGAL PERCOBAAN : 29 November 2012

NAMA :

Raisa Putri (111331052)

PARTNER :

Rega Nugraha (111331054)

Shanti Mayang E (111331058)

KELAS : 2 TC B2

TEKNIK TELEKOMUNIKASI

POLITEKNIK NEGERI BANDUNG

2012

Page 2: Laporan Pratikum 11 Raisa

Pembangkit Gelombang Pulsa dan Tampilan Display

I. Tujuan

Adapun tujuan dari praktikum ini adalah sebagai berikut:

Mengetahui berbagai macam output dari pembangkit gelombang pulsa.

Mengetahui cara membuat diagram alir dan program untuk menampilkan

pembangkit gelombang pulsa.

Mengamati tampilan berbagai pembangkit gelombang pulsa pada

osiloskop.

Memahami konsep ADC dan DAC.

Mengamati outpup up counter dan down counter pada 7 segment display.

II. Landasan Teori

Sebagian sinyal langsung ditemui dalam ilmu dan teknik yang terus menerus:

intensitas cahaya yang berubah dengan jarak, tegangan yang bervariasi dari waktu

ke waktu, sebuah reaksi kimia tingkat yang tergantung pada temperatur, dll Analog-

to-Digital Konversi (ADC) dan Digital-to Analog-Konversi (DAC) adalah proses yang

memungkinkan komputer digital untuk berinteraksi dengan sinyal-sinyal sehari-hari.

Informasi digital berbeda dari rekan terus-menerus dalam dua hal penting:

itu sampel, dan terkuantisasi. Kedua membatasi berapa banyak informasi sinyal

digital dapat berisi. Bab ini adalah tentang manajemen informasi: memahami

informasi apa yang Anda butuhkan untuk mempertahankan, dan informasi apa yang

Anda mampu untuk kehilangan. Pada gilirannya, ini menentukan pemilihan frekuensi

sampling, jumlah bit, dan jenis penyaringan analog yang diperlukan untuk

mengkonversi antara alam analog dan digital.

Salah satu komponen penting dalam sistem akuisisi data adalah

pengubah besaran analog ke digital atau disebut juga ADC (Analog to Digital

Converter).Pengubah ini akan mengubah besaran - besaran analog menjadi bilangan-bilangan

digital sehingga bisa diproses dengan komputer. IC ADC 0804 dianggap dapat memenuhi

kebutuhan dari rangkaian yang akan dibuat. IC jenis ini bekerja secaracermat dengan

menambahkan sedikit komponen sesuai dengan spesifikasi yangharus diberikan dan

dapat mengkonversikan secara cepat suatu masukan tegangan.

Page 3: Laporan Pratikum 11 Raisa

Hal-hal yang juga perlu diperhatikan dalam penggunaan ADC ini adalahtegangan

maksimum yang dapat dikonversikan oleh ADC dari rangkaian pengkondisi sinyal,

resolusi, pewaktu eksternal ADC, tipe keluaran, ketepatan dan waktu konversinya.

Beberapa karakteristik penting ADC :

1. Waktu konversi

2. Resolusi

3. Ketidaklinieran

4. Akurasi

Contoh aplikasi ADC ini bisa kita lihat misalnya pada voltmeter digital, sampling

suara dengan komputer, sehingga suara dapat disimpan secara digital dalam disket,

dan kamera digital. Konsep pengubah analog ke digital ini adalah sampling

(mengambil contoh dalam waktu tertentu) kemudian mewakilinya dengan bilangan

digital dengan batas yang sudah diberikan.

Ada banyak cara yang dapat digunakan untuk mengubah sinyal analogmenjadi

sinyal digital yang nilainya proposional. Jenis ADC yang biasadigunakan dalam

perancangan adalah jenis successive approximation convertionatau pendekatan

bertingkat yang memiliki waktu konversi jauh lebih singkat dan tidak tergantung pada nilai

masukan analognya atau sinyal yang akan diubah.

III. Alat dan Komponen yang Digunakan

Adapun alat dan komponen yang digun akan pada praktikum ini adalah sebagai

berikut:

1) Midicom INTEL 8085

2) Mikroprosesor 8085 (CPU)

3) Set Monitor

4) Set Keyboard

5) Frequency Counter

6) Osiloskop

IV. Langkah Percobaan

Adapun langkah kerja yang dilakukan saat praktikum adalah sebagai berikut:

1. Langkah awal yang kami lakukan adalah mengaktifkan saklar pada modul.

Page 4: Laporan Pratikum 11 Raisa

2. Memastikan keempat LED yang berada dipinggir dari modul tersebut

menyala. LED disini menyatakan power supply. Jadi bila salah satu ada yang

tidak menyala, kemungkinan komputer yang akan kita gunakan rusak.

Berbeda dengan LED,

3. 7segmen display pada modul tidak boleh menyala. Namun bila menyala,

tekan tombol berwarna merah atau tombol reset di bagian bawah kiri modul.

4. Menyalakan Layar LM 8801 dengan menekan switch di belakang bagian

kanan layar. Ini merupakan komputer asli, dan tulisan-tulisan yang ada pada

layar berwarna orange.

5. Menekan space bar untuk menampilkan menu-menu perintah.

6. Memilih menu Fill untuk mengisi data

7. Memahami soal-soal yang diberikan.

8. Menjawab soal-soal yang diberikan dengan membuat diagram alir serta

programnya.

9. Mengaplikasikan jawaban yang sudah didapat pada midicom.

10. Mengamati hasil dari pengerjaan program pada midicom.

11. Mengamati output pada keyboard, monitor, LED, dan 7Segment.

12. Mencatat dan mendokumentasikan hasil pengamatan praktikum tersebut.

13. Mematikan monitor dan menonaktifkan saklar yanga ada pada modul.

14. Dalam setiap membuat program, selalu menggunakan menu assembler,

menu go. Bila ada data yang akan disisipkan gunakan perintah menu

Zelocator. Untuk mengecek data program digunakan kembali menu perintah

Dissambler.

15. Menampilkan output di osiloskop dengan menyambungkan probe positif dan

negatif dari channel di osiloskop ke modul.

16. Menampilkan output frekuensi di frequency counter dengan dengan

menyambungkan probe positif dan negatif dari channel di osiloskop ke

modul.

Page 5: Laporan Pratikum 11 Raisa

V. Hasil Percobaan

Berikut adalah hasil praktikum yang dilakukan:

I. Hasil Percobaan1. Diagram alir dan program untuk gelombang kotak

FLOWCHART Program Subrutin

Frekuensi = 500Hz

Alamat Hex-code Mnemonics7100 06 15 MVI B,157102 05 DCR B7103 C2 0271 JNZ 71027106 00 NOP7107 00 NOP7108 00 NOP7109 00 NOP710A C9 RET

Alamat Mnemonic7000 MVI A,A27002 OUT 537004 MVI A,087006 OUT 537008 MVI A,04700A OUT 52700C MVI A,00700E OUT 507010 CALL 72007013 MVI A,667015 OUT 507017 CALL 7200701A JMP 700C

ANALISA SUBRUTIN :

Langkah pertama, masukkan subrutin dahulu dengan program delay. Isi B dengan bilangan 15 lalu, kurangi dengan B-1 apabila zero flag = 0 maka akan balik lagi ke intruksi awal karenayang akan disisipkannya adala 16Tc maka masukkan intruksi NOP 4x karena nilai setiap NOP adalah 4Tc.

Page 6: Laporan Pratikum 11 Raisa

2. Diagram alir dan program untuk membangkitkan pulsa kotak FLOWCHART PROGRAM SUBRUTIN

Alamat Hex-code Mnemonics7300 01 D200 LXI B,00D27303 0B DCX B7304 78 MOV A,B7305 B1 ORA C7306 C2 0373 JNZ 73037309 0B DCX B730A 0B DCX B730B 06 00 MVI B,00730D 06 00 MVI B,00730F C9 RET

Alamat Mnemonic7400 MVI A,A27402 OUT 537404 MVI A,087406 OUT 537408 MVI A,04740A OUT 52740C LXI

SP,FFFF740F MVI A,007411 OUT 507413 OUT 507415 CALL 73007418 MVI A,66741A OUT 50741F CALL 7300741C JMP 740F

ANALISA FLOWCHART :

Langkah pertama, masukkan subrutin delay lalu beri 6 intruksi. Setelah itu, isi dahulu dengan 00 ke akumulator lalu kirim data ke output untuk delay X setelah itu isi konstanta 66 ke akumulator sebagai nilai puncak pada gelombang setelah itu akan dikirimkan sebagai delay Y.

Page 7: Laporan Pratikum 11 Raisa

Frekuensi = 333,3Hz

ANALISA SUBRUTIN :

Langkah pertama, masukkan subrutin delay dahulu yaitu isi pasangan register BC dengan D2 (diambil dari heksadesimal 201). Setelah itu, kurangi pasangan register BC dengan 1 lalu pindahkan register B ke akumulator dan OR kan dengan C apabila zero flag = 0 maka akan kembali ke intruksi awal. Setelah itu, karena yang akan disisipkan 26Tc maka masukan intruksi DCX B sebanyak 2x karena nilai DCX B = 7Tc * 2= 14 ditamnah dengan intruksi MVI B,00 sebanyak 2x karena nilai MVI = 6Tc * 2 = 12 maka jumlah sisipan sebanyak 26Tc.

ANALISA FLOWCHART :

Setelah membuat subrutin delay maka buatlah flowchart dengan 6 intruksi. Karena register A akan digunakan maka lebih dahulu isi register akumulator dengan nilai 00.setelah itu, gunakan intruksi PORT 50 sebagai output dan panggil DELAY dan isi konstanta 66 sebagai nilai puncak ke akumulator, dan masukkan output lalu panggil delay.

Page 8: Laporan Pratikum 11 Raisa

3. Diagram alir dan program untuk membangkitkan gelombang segitigaFLOWCHART Program subrutin :

Frekuensi = 333,3Hz

Alamat Hex-code Mnemonics7500 06 09 MVI B,097502 05 DCR B7503 C2 0275 JNZ 75027506 32 00D0 STA D0007509 C9 RET

Alamat Mnemonic7700 MVI A,A27702 OUT 537704 MVI A,087706 OUT 537708 MVI A,04770A OUT 52770C MVI A,00770E OUT 507710 CALL 76007713 ADI 057715 CPI 507717 JNZ 770E771A MVI A,46771C OUT 50771E CALL 76007721 SUI 057723 CPI 007725 JNZ 771C7728 JMP 770C

Page 9: Laporan Pratikum 11 Raisa

ANALISA SUBRUTIN :

Langkah pertama, masukkan subrutin delay yang akan digunakan lalu isi register B dengan 09 setelah itu kurangi register dengan 1 apabila zero flag = 0 maka akan masuk ke intruksi sebelumnya dan isi alamat memori D00 ke akumulator.

ANALISA FLOWCHART :

Langkah pertama, masukkan 6intruksi. Lalu, isi konstanta 00 ke akumulator dan kirim data ke output alamat 50H lakukan delay I. kemudian +5 kirim ke akumulator dan bandingkan dengan 50H agar tidak terjadi kesalahan dalam membuat gelombang segitiga dengan nilai puncak 50 apabila zero flag = 0 maka akan ke intruksi awal dimana akumulator diisi dengan konstanta 00. Setelah itu kita akan masuk ke proses turun dalam gelombang segitiga pada saat turun akan (-5) maka isi konstanta 46H ke akumalator lalu kirim sinyal ke output dan lakukan delay 2 dengan mengurangi (-5) ke akumulator dan bandingkan dengan konstanta 00 apabila zero flag = 0 maka akan ke intruksi sebelumnya .

Page 10: Laporan Pratikum 11 Raisa

4. Diagram alir dan program untuk menampilkan up counter 3 digit pada unit peraga 7 segmentFLOWCHART

Page 11: Laporan Pratikum 11 Raisa

Alamat Mnemonic

7800 LXI SP,FFFF

7825 MOV A,M 784C ADI 01

7803 MVI H,00 7826 OUT 40 784E DAA7805 LXI D,0000 7828 MVI A,40 784F MOV E,A7808 MVI B,06 782A OUT 42 7850 MOV A,D780A MOV A,D 782C PUSH D 7851 ACI 00780B ANI 0F 782D LXI D,0005 7853 DAA780D MOV L,A 7830 CALL FFA 7854 MOV D,A780E MOV A,M 7833 POP D 7855 CPI 10780F OUT 40 7834 MOV A,E 7857 JNZ 78087811 MVI A,50 7835 ANI 0F 785A JMP 78057813 OUT 42 7837 MOV L,A

7815 PUSH D 7838 MOV A,M

7816 LXI D,0005 7839 OUT 40

7819 CALL FFA 783B MVI A,10

781C POP D 783D OUT 42

781D MOV A,E 783F PUSH D

781E ANI F0 7840 LXI D,0005

7820 RRC 7843 CALL FFA

7821 RRC 7846 POP D

7822 RRC 7847 DCR B

7823 RRC 7848 JNZ 780A

7824 MOV L,A 784B MOV A,E

Setelah di berikan perintah GO , maka pada display 7-segment akan muncul :

........

Page 12: Laporan Pratikum 11 Raisa

ANALISA FLOWCHART

Langkah pertama, ,masukkan nilai FFFF ke SP setelah itu isi register H dengan C0 (sebagai alamat awal). Lalu, isi konstanta 00 ke pasangan register DE, pasangan register ini sebagai nilai ratusan dan isi konstanta 06 ke register B (untuk menentukan cepat lambatnya output) lalu, masukkan register D ke akumulator dan kita akan mencari satuannya terlebih dahulu maka OR kan dan simpan di akumulator lalu pindahkan ke register L dan dari memori pindahkan ke akumulator kemudian kita akan menampilkan output di C0 (sebagai posisi seven segment) lalu simpan gulu pasangan register DE ke stack dan mendelay selama 5 detik lalu akan menampilkan ke unit peraga seven segment setelah itu stack akan mengembalikan pasangan register DE dan akan memindahkan dari register E ke akumulator kemudian kita akan mencari nilai puluhan makan 0R dengan F0 lalu geser sebanyak 4x dan pindahkan register A ke L dan memori ke akumulator dan akan menampilkan pada posisi 40 di seven segment. Setelah itu, simpan pasangan register DE ke stack lalu akan mendelay selama 5detik dan akan menampilkan ke unit peraga seven segment dan akan mengembalikan kembali pada pasangan register DE. Pindahkan register E ke akumulator daan OR kan dengan 0F(karena register E disini sebagai nilai puluhan dan satuan) lalu pindahkan dari akumulator ke register L dan dari memori ke akumulator dan akan menempatkan posisi pada 10 do output seven segment dan pasangan register DE akan disimpan distack lalu akan mendelay selama 5 detik dan akan menampilkan ke unit peraga seven segment dan akan dikembalikan ke pasangan register DE lalu akan mengcounter ke data berikut apabila zero flag = 0 maka akan ke intruksi awal apabila langsung maka akan masuk ke proses register E ke akumulator lalu tambahkan dengan 01 dan jangan lupa koreksi dengan BCD dan pindahkan kembali dari register A ke E dan dari register D ke A dan tambahkan dengan carry dengan konstanta 00 dan koreksi dengan BCD lalu pindahkan dari register A ke D dan bandingkan dengan 10 apabila zero flag = 0 maka akan ke intruksi sebelumnya.

Page 13: Laporan Pratikum 11 Raisa

5. Diagram alir dan program untuk menampilkan down counter 3 digit pada unit peraga 7 segment

FLOWCHART

Page 14: Laporan Pratikum 11 Raisa

Alamat Mnemonic

7800 LXI SP,FFFF

7825 MOV A,M 784C ADI 99

7803 MVI H,00 7826 OUT 40 784E DAA7805 LXI D,999 7828 MVI A,40 784F MOV E,A7808 MVI B,06 782A OUT 42 7850 MOV A,D780A MOV A,D 782C PUSH D 7851 ACI 99780B ANI 0F 782D LXI D,0005 7853 DAA780D MOV L,A 7830 CALL FFA 7854 MOV D,A780E MOV A,M 7833 POP D 7855 CPI FF780F OUT 40 7834 MOV A,E 7857 JNZ 78087811 MVI A,50 7835 ANI 0F 785A JMP 78057813 OUT 42 7837 MOV L,A

7815 PUSH D 7838 MOV A,M

7816 LXI D,0005 7839 OUT 40

7819 CALL FFA 783B MVI A,10

781C POP D 783D OUT 42

781D MOV A,E 783F PUSH D

781E ANI F0 7840 LXI D,0005

7820 RRC 7843 CALL FFA

7821 RRC 7846 POP D

7822 RRC 7847 DCR B

7823 RRC 7848 JNZ 780A

7824 MOV L,A 784B MOV A,E

Setelah di berikan perintah GO , maka pada display 7-segment akan muncul :

........

Page 15: Laporan Pratikum 11 Raisa
Page 16: Laporan Pratikum 11 Raisa

ANALISA FLOWCHART

Langkah pertama, ,masukkan nilai FFFF ke SP setelah itu isi register H dengan C0 (sebagai alamat awal). Lalu, isi konstanta 999 ke pasangan register DE, pasangan register ini sebagai nilai ratusan dan isi konstanta 06 ke register B (untuk menentukan cepat lambatnya output) lalu, masukkan register D ke akumulator dan kita akan mencari satuannya terlebih dahulu maka OR kan dan simpan di akumulator lalu pindahkan ke register L dan dari memori pindahkan ke akumulator kemudian kita akan menampilkan output di C0 (sebagai posisi seven segment) lalu simpan gulu pasangan register DE ke stack dan mendelay selama 5 detik lalu akan menampilkan ke unit peraga seven segment setelah itu stack akan mengembalikan pasangan register DE dan akan memindahkan dari register E ke akumulator kemudian kita akan mencari nilai puluhan makan 0R dengan F0 lalu geser sebanyak 4x dan pindahkan register A ke L dan memori ke akumulator dan akan menampilkan pada posisi 40 di seven segment. Setelah itu, simpan pasangan register DE ke stack lalu akan mendelay selama 5detik dan akan menampilkan ke unit peraga seven segment dan akan mengembalikan kembali pada pasangan register DE. Pindahkan register E ke akumulator daan OR kan dengan 0F(karena register E disini sebagai nilai puluhan dan satuan) lalu pindahkan dari akumulator ke register L dan dari memori ke akumulator dan akan menempatkan posisi pada 10 di output seven segment dan pasangan register DE akan disimpan distack lalu akan mendelay selama 5 detik dan akan menampilkan ke unit peraga seven segment dan akan dikembalikan ke pasangan register DE lalu akan mengcounter ke data berikut apabila zero flag = 0 maka akan ke intruksi awal apabila langsung maka akan masuk ke proses register E ke akumulator lalu tambahkan dengan 99 dan jangan lupa koreksi dengan BCD dan pindahkan kembali dari register A ke E dan dari register D ke A dan tambahkan dengan carry dengan konstanta 99 dan koreksi dengan BCD lalu pindahkan dari register A ke D dan bandingkan dengan 10 apabila zero flag = 0 maka akan ke intruksi sebelumnya.

Page 17: Laporan Pratikum 11 Raisa

6. Membuat down counter 3digit dengan turun sebanyak 3x.

Page 18: Laporan Pratikum 11 Raisa

PROGRAM UTAMA

Alamat Mnemonic

7800 LXI SP,FFFF

7825 MOV A,M 784C ADI 97

7803 MVI H,00 7826 OUT 40 784E DAA7805 LXI D,999 7828 MVI A,40 784F MOV E,A7808 MVI B,18 782A OUT 42 7850 MOV A,D780A MOV A,D 782C PUSH D 7851 ACI 99780B ANI 0F 782D LXI D,0005 7853 DAA780D MOV L,A 7830 CALL FFA 7854 MOV D,A780E MOV A,M 7833 POP D 7855 CPI FF780F OUT 40 7834 MOV A,E 7857 JNZ 78087811 MVI A,50 7835 ANI 0F 785A JMP 78057813 OUT 42 7837 MOV L,A

7815 PUSH D 7838 MOV A,M

7816 LXI D,0005 7839 OUT 40

7819 CALL FFA 783B MVI A,10

781C POP D 783D OUT 42

781D MOV A,E 783F PUSH D

781E ANI F0 7840 LXI D,0005

7820 RRC 7843 CALL FFA

7821 RRC 7846 POP D

7822 RRC 7847 DCR B

7823 RRC 7848 JNZ 780A

7824 MOV L,A 784B MOV A,E

Setelah di berikan perintah GO , maka pada display 7-segment akan muncul :

.........

Page 19: Laporan Pratikum 11 Raisa

7. Diagram alir dan program untuk menampilkan gelombang sinus.Masukkan alamat memori dibawah ini.

Alamat Data input

A000...........................

A01D

0A141F29323A4250565B5F61636463615F5B5650423A32291F140A00

ANALISA FLOWCHART :

Langkah ini sama seperti soal sebelumnya hanya saja kita mesti merubah penjumlahan yang tadinya 99 menjadi 97 karena kita akan menurunkan nilai sebanyak 3x. contohnya : 99,97,94,91

Page 20: Laporan Pratikum 11 Raisa

FLOWCHART PROGRAM

Alamat Mnemonic7600 MVI A,A27602 OUT 537604 MVI A,087606 OUT 537608 MVI A,04760A OUT 52760C LXI

SP,FFFF760F LXI

H,A01D7612 MOV A,M7613 OUT 507615 NOP7616 MVI C,777618 CALL 8500761B DCR L761C JP 7612761F MVI L,107621 MOV A,M7622 CMA7623 ADI 017625 OUT 507627 CALL 8500762A DCR L762B JP 7621762E JMP 760F

Page 21: Laporan Pratikum 11 Raisa

VI. Kesimpulan

Pada hasil percobaan diatas dapat disimpulkan bahwa setiap pembuatan

gelombang mempunyai perhitungan sendiri dan intruksi. Dari hasil percobaan diatas

kita membuat gelombang segitiga, kotak, dan sinus. Dan kita dapat memahami

tentang ADC dan DAC dan perhatikan setiap step yang digunakan dalam membuat

gelombang.

Analisa subrutin :

Langkah pertama, carilah delay agar mengetahui berapa nilai yang harus disisipkan

Maka, setelah dilakukan perhitungan di dapat n = 8, dengan selisih delay 19Tc. Maka disisipkan MVI 1x dan DCX 2x.

Analisa diagram alir :

Langakh pertama, masukkan 6 intruksi setelah itu berikan instruksi L 1D untuk bisa membaca 0. Lalu dikomplemenkan. Karena jumlah periode clock pada saat segment naik atau turun tidak sama , maka disisipkan NOP dan MVI pada segment atas atau pada saat naik.