Anda di halaman 1dari 16

LAPORAN PRAKTIKUM Microprosessor

Program Menampilkan Karakter pada LED, MONITOR dan 7 Segment

TANGGAL PERCOBAAN : 01 November 2012 NAMA : Najia Al Umri (111331050) KELAS : 2 TC B2

TEKNIK TELEKOMUNIKASI POLITEKNIK NEGERI BANDUNG 2012

Program Menampilkan Karakter pada LED, MONITOR dan 7 Segment I. TUJUAN PRAKTIKUM Saya dan partner saya dapat mengaplikasikan instruksi untuk pemrograman untuk memfungsikan 7 segment, LED dan monitor

II. -

TEORI DASAR Subrutin Membaca Keyboard Alamat awal: $FF1 Register Output : Register C Contoh : 7200 CALL FF1 RST 1 Go tekan tombol A maka register C akan memunculkan kode ASCII dari tombol yang kita tekan. Menampilkan Karakter Ke Layar Monitor Alamat awal: $FEE Register input : Register C Contoh : 7300 MVI C,49 CALL FEE RST 1 Go maka akan muncul huruf I Jika kita ingin membuat tulisan IBU maka programnya menjadi seperti dibawah ini: MVI C,49 CALL FEE MVI C,42 CALL FEE MVI C,55 CALL FEE RST 1 Maka tulisan IBU akan muncul Bagaimana jika karakter yang dimasukkan ada 100 ? Maka kita akan menggunakan program ini

77000 CALL FF1 CALL FEE JMP 7700 Tekan Go tulis kami sedang belajar pemrograman INTEL 8085 tekan CR tekan tombol panah bawah Unit Peraga 7 Segment Kita akan mencoba untuk memfungsikan kedelapan 7 segment yang ada di midicom. Kedelapan 7 segment hanya bisa difungsikan salah satunya saja dalam satu waktu agar : Supaya menghemat daya Supaya lebih mudah dikontrol Supaya jumlah port yg digunakan cukup 2

Pada unit peraga 7 segment akan terlibat 2 port Port 40: harus diisi kode pola karakter Port 42: harus diisi kode posisi karakter

D7

D6

D5

D4

D3

D2

D1

D0

8
50

8
40

8
10

8
00

8
D0

8
C0

8
90

8
80

Port 40 berhubungan dengan segment segment yang ada pada 7 segment

Jika kita ingin membuat angka 2 berarti kita harus memberi logik 1 pada segment H 0 G 1 F 0 E 1 5B D 1 C 0 B 1 A 1

Programnya adalah: MVI A,D0 OUT 42 MVI A,5B OUT 40 RST 1 Instruksikan go maka akan muncul akan 2 pada 7 segment.

III.

LANGKAH PERCOBAAN DAN HASIL PRAKTIKUM

1.

Buat program untuk membaca keyboard dan tampilkan ke layar

Soal ini telah terjawab pada landasan teori diatas 2. Buat program untuk decimal up counter modulus 10 yang outputnya berubah setiap setengah detik. Tampilkan pada unit peraga 7 segment secara berulang. Pertama kita akan menyimpan terlebih daulu karakternya dengan memanfaatkan alamat memori ALAMAT MEMORI B000 B001 B002 B003 B004 B005 B006 B007 B008 ASCII OUTPUT 3F 06 5B 4F 66 6D 7D 07 7F B009 6F

0 1 2 3 4 5 6 7 8
FLOWCHART :

Alamat Hex-code Mnemonics 7700 26 B0 MVI H,B0 7702 3E C0 MVI A,C0 7704 DE 42 OUT 42 7706 06 00 MVI B,00 7708 68 MOV L,B 7709 7E MOV A,M 770A D3 40 OUT 40 770C 11 F401 LXI D,01F4 770F CD FA04 CALL 0FFA 7712 04 INR B 7713 78 MOV A,B

7714 FE 0A CPI 0A 7716 C2 0875 JNZ 7508 7719 C3 0675 JMP 7506 Kita akan menggunakan register B sebagai counter, lalu memilih port mana yang akan digunakan dengan memasukkannya ke akumulator. Lalu kita akan memasukkan register B ke register yang selanjutnya digunakan sebagai counter. Karena kita memanfaatkan alamat memori maka kita masukkan 2 bit terakhir yang tadi kita masukkan ke B ke akumulator. Lalu mengembalikan isi akumulator ke port 40. Untuk delaynya kita gunakan instruksi DE 1F4 dan CALL FFA. 1F4 kita dapatkan setelah merubah 0.5 sekon ke dalam bentuk hexa. Agar membentuk up counter maka kita harus menambahkan register B sebagai counter dengan konstanta 1. Lalu kita bandingkan dengan 0A agar B stop menjadi counter ketika menemukan 0A. Kita akan menggunakan untuk mendeteksi hasil instruksi perbandingan.

3.

Buat program untuk decimal up counter modulus 16 yang outputnya berubah setiap setengah detik. Tampilkan pada unit peraga 7 segment secara berulang. Isi memori terlebih dahulu

ALAMAT MEMORI B000 B001 B002

ASCII OUTPUT 3F 06 5B

B003 B004 B005

4F 66 6D

3 4 5

0 1 2

B006 B007 B008 B009 B00A B00B B00C B00D B00E B00F

7D 07 7F 6F 77 7C 69 53 79 71

6 7 8 9 A b C d E F

FLOWCHART

Analisa flowchart pada nomor 3 ini sama saja dengan nomor dua yang dirubah hanya pada saat membandingkan isi akumulator menjadi dengan 10 karena kita kini menggunakan modulus 16.

Programnya Alamat Hex-code Mnemonics 7700 26 B0 MVI H,B0 7702 3E C0 MVI A,C0 7704 DE 42 OUT 42 7706 06 00 MVI B,00 7708 68 MOV L,B 7709 7E MOV A,M 770A D3 40 OUT 40 770C 11 F401 LXI D,01F4 770F CD FA04 CALL 0FFA

7712 7713 7714 7716 7719

04 78 FE 10 C2 0875 C3 0675

INR B MOV A,B CPI 10 JNZ 7508 JMP 7506

4.

Buat program untuk decimal up counter modulus 16 yang outputnya berubah setiap setengah detik. Tampilkan pada unit peraga 7 segment secara berulang beserta LED FLOWCHART

Analisa pada flowchart ini sama saja dengan flowchart nomor 3 dan 2 hanya saja sebelum delay kita menambahkan 2 instruksi yang selanjutnya kita gunakan untuk

memfungsikan LED. Lalu kita menyisipkan programnya dengan menggunakan menu Z sebagai relocator. Caranya: Z Masukan alamat awal, alamat ahir , alamat dimana program akan disisipkan masukkan program yang akan disisipkan
CR

PROGRAMNYA Alamat Hex-code Mnemonics 7700 26 B0 MVI H,B0 7702 3E C0 MVI A,C0 7704 DE 42 OUT 42 7706 06 00 MVI B,00 7708 68 MOV L,B 7709 7E MOV A,M 770A D3 40 OUT 40 770C 11 F401 LXI D,01F4 770F CD FA04 CALL 0FFA 7712 78 MOV A,B 7713 D3 50 OUT 50 7715 04 INR B 7716 78 MOV A,B 7717 FE 10 CPI 10 7719 C2 0875 JNZ 7508 771C C3 0675 JMP 7506

5.

Buat program untuk decimal up counter modulus 16 yang outputnya berubah setiap setengah detik. Tampilkan pada unit peraga 7 segment secara berulang beserta LED dan Monitor.

Kini kita mempunyai 2 kelompok data yaitu Output 0 1 2 3 4 5 6 7 8 9 A B C D E F Data output + 07 + 30 Data ouput + 30 ASCII

FLOWCHARTNYA

Analisa untuk flowchart ini hampir sama dengan flowchart nomor 4 hanya saja sebelum delay kita menambahkan beberapa instruksi yang akan mengatur pemasukan 2 data berbeda diatas. Pertama kelompok kita data akan memproses yaitu

pertama

kelompok angka register B dimasukan ke akumulator lalu di tambah konstanta 30, lalu kita bandingkan dengan 3A, jika data lebih kecil dari 3A maka carry sama dengan 1 dan akan langsung ke proses menampilkan dan jika data lebih besar maka carry sama dengan 0 dan akan diproses untuk selanjutnya ditambah dengan 07 karena termasuk kelompok data 2 yaitu huruf yang perlu ditambah 07 lagi untuk menghasilkan outputnya.

Programnya Alamat 7700 Hex-code 26 B0 Mnemonics MVI H,B0

7702 7704 7706 7708 7709 770A 770C 770D 770F 7711 7714 7713 7717 771A 771D 7720 7721 7723 7724 7725 7727 772A

3E C0 MVI A,C0 DE 42 OUT 42 06 00 MVI B,00 68 MOV L,B 7E MOV A,M D3 40 OUT 40 78 MOV A,B C6 30 ADI 30 FE 3A CPI 3A DA 16 JC C6 07 ADI 07 77 MOV C,A CD EEOF CALL FEE 11 F401 LXI D,01F4 CD FA04 CALL 0FFA 78 MOV A,B D3 50 OUT 50 04 INR B 78 MOV A,B FE 10 CPI 10 C2 0875 JNZ 7508 C3 0675 JMP 7506

6.

Lakukan soal nomor 5 hanya saja output monitor tidak berjalan jadi aktifkan backspace agar data tetap di satu tempat. Programnya Alamat Hex-code Mnemonics 7700 26 B0 MVI H,B0 7702 3E C0 MVI A,C0 7704 DE 42 OUT 42 7706 06 00 MVI B,00 7708 68 MOV L,B 7709 7E MOV A,M 770A D3 40 OUT 40 770C 78 MOV A,B 770D C6 30 ADI 30 770F FE 3A CPI 3A 7711 DA 16 JC 7714 C6 07 ADI 07 7713 77 MOV C,A 7717 CD EEOF CALL FEE 771A 11 F401 LXI D,01F4 771D CD FA04 CALL 0FFA 7720 0E 08 MVI C,08 7722 CD EE0F CALL FEE 7725 78 MOV A,B 7726 D3 50 OUT 50 7728 04 INR B 7729 78 MOV A,B 772A FE 10 CPI 10 772C C2 0875 JNZ 7508 772F C3 0675 JMP 7506

FLOWCHART

Pada analisa kali ini kita hanya menambahkan 2 buah program setelah delay, kita memasukan konstanta 08 ke dalam register C untuk mengaktifkan backspace agar output tetap keluar di tempat yang sama

KESIMPULAN

Kita dapat melihat output di 7 segment, LED maupun monitor dengan menggunakan beberapa instruksi. Kali ini kita harus lebih memahami kode ASCII agar lebih mudah mempelajari subrutin

Anda mungkin juga menyukai