Skip to main content

Rangkaian Interface Output


Rangkaian Interface Output

1. Dasar Teori [back]

REGISTER-REGISTER MIKROPROSESSOR 8088
            Mikroprosessor 8088 memiliki empat kelompok register 16-bit, yaitu Data Register, Pointer dan Index Register, Flag Register dan Instruction Pointer, dan Segment Register.

Data Register
            Data Register terdiri dari 4 register 16 bit, dimana tiap register dapat dipisah menjadi dua register 8 bit, seperti Tabel 2.
Tabel 2. Data Register 


            Huruf-huruf ‘H’ dan ‘L’ menyatakan status sebagai high byte atau low byte, dan dapat digunakan secara terpisah.
            Register AX berfungsi sebagai accumulator dan berhubungan dengan operasi-operasi khusus seperti IN, OUT, perkalian, pembagian  dan lain-lain.
            Register BX sering dipergunakan sebagai register basis untuk mereferensikan lokasi memory. Dalam hal ini BX menyimpan alamat basis bagi suatu tabel atau array yang lokasi spesifiknya direferensikan dengan menambahkan nilai offset.
            Register CX berfungsi sebagai register pencacah 16-bit untuk mencacah banyaknya byte atau kata dalam string data tertentu selama pelaksanaan operasi-operasi string dan dalam operasi-operasi loop. Register CL yang merupakan bagian dari register CX dipergunakan dalam operasi geser (shift) dan rotasi.
            Register DX dipergunakan dalam operasi perkalian untuk menyimpan sebagian dari hasil kali 32-bit, atau dalam operasi pembagian untuk menyimpan suatu nilai sisa. Dapat juga dipergunakan dalam operasi IN dan OUT untuk menspesifikasikan alamat port I/O yang dipakai.

Pointer dan Index Register
            Pointer dan Index Register sendiri terbagi dalam 4 register 16-bit yang tak dapat dipisah seperti Data Register. Register yang termasuk dalam kelompok ini adalah : SP (stack pointer), BP (Base Pointer), SI (Source Index) dan DI (Destination Index).
Tabel 3. Pointer dan IndexRegister


Register index dan pointer dipakai untuk menyimpan nilai offset guna mengakses lokasi-lokasi memory tertentu yang lazim digunakan, seperti lokasi puncak stack atau blok-blok data dalam suatu segment seperti array serta record-record individual.
Kedua register pointer, yaitu SP dan BP dipakai untuk menyimpan nilai-nilai offset segment stack memori pada saat yang bersangkutan, sedang kedua register indeks, SI dan DI, digunakan untuk menyimpan nilai-nilai offset dalam segment data memori pada saat yang bersangkutan.
Satu hal yang penting diketahui, keempat register ini dapat dipakai dalam operasi aritmatika maupun logika, sehingga memungkinkan nilai-nilai offset yang tersimpan didalamnya merupakan hasil perhitungan-perhitungan sebelumnya.
Register SP merupakan stack pointer yang menunjukkan lokasi puncak stack. Penunjuk stack merupakan register yang secara implisit dipakai oleh instruksi PUSH dan POP yang menyimpan dan mendapatkan kembali data dari stack.
Register SI dapat dipergunakan sebagai register indeks dalam modus pengalamatan tak-langsung tertentu. Juga digunakan untuk menyimpan offset untuk mengalamati lokasi suatu operand sumber selama berlangsungnya operasi string.
Register DI mempunyai fungsi yang hampir sama dengan register SI di atas, bedanya register ini menunjukkan lokasi suatu operand tujuan selama berlangsungnya operasi string.
Flag Register dan Instruction Pointer
            Register Flag adalah sebuah register 2-byte yang berisi sembilan bit flag yang digunakan untuk menyatakan berbagai kondisi selama pelaksanaan suatu program. Bit 0, 2, 4, 6, 7, dan 11 berisi flag-flag status yang menyatakan hasil operasi-operasi program. Bit 8 sampai 10 berisi flag-flag pengendali, bit 1, 3, 5, dan 12 sampai 15 tidak dipergunakan.
            Gambaran kedua register yang termasuk dalam kelompok ini diberikan pada tabel 4., dibawah ini:
Tabel 4. Flag Register dan Instruction Pointer

            Instruction Pointer dipergunakan untuk melokasikan posisi dalam Code Segment pada saat yang bersangkutan, maka suatu alamat 20-bit tertentu dalam segment tersebut dilokasikan dengan menggunakan IP sebagai offset dari CS.

Segment Register
            Daerah-daerah memory yang disediakan bagi program, data dan stack dialamatkan secara terpisah, walaupun daerah-daerah ini mungkin saja saling bertumpang tindih. Pada setiap saat tersedia empat blok memori yang dapat dialamatkan, yang dinamakan segment dan masing-masing panjangnya 64K.
            Register-register segment yang disediakan yaitu CS, DS, SS dan ES yang masing-masing dipakai untuk menunjukkan keempat segment memory yang dapat dialamati : Code Segment, Data Segment, stack Segment dan Extra Segment, seperti pada tabel 5.


Tabel 5. Segment Register
                          
            Lokasi memory tertentu dalam suatu segment dialamatkan dengan menambahkan suatu nilai offset kepada register segment yang bersangkutan. Sebagai contoh, alamat instruksi program berikutnya yang harus dilaksanakan dihitung dengan menambahkan nilai Instruction Pointer kepada nilai Code Segment (CS). Akan tetapi, suatu lokasi memory harus dialamatkan dengan suatu nilai alamat 20-bit, sedangkan CS maupun IP hanya berisi nilai-nilai 16-bit. Oleh karena itu alamat sepenuhnya dihitung dengan menggeser isi register CS empat bit ke kiri dan mereset bit 0 sampai 3 ( sama saja dengan mengalikan CS dengan 16), kemudian menambahkan nilai 16-bit yang terkandung dalam IP.
            Lokasi-lokasi dalam ketiga segment yang lain dapat dihitung dengan cara yang sama, sedangkan kombinasi register segment dan offset bergantung pada jenis operasi yang sedang dilaksanakan.
            Secara umum, jika tidak ditentukan oleh pemakai, maka akan berlaku aturan-aturan berikut;
a)      Jika dipakai offset BX, SI atau DI maka alamat operand diasumsikan berada dalam Data Segment (DS).
b)      Jika offset yang dipakai adalah SP atau BP, maka operand akan dianggap tersimpan dalam Stack Segment (SS).
Sedang untuk instruksi string, untuk sumber (source) digunakan offset SI dengan Data Segment (DS), dan untuk tujuan (destination) dipakai offset DI dengan Extra Segment (ES).



Gambar 65 Segment dan memory yang dialamati

Pada gambar 65 diberikan gambaran umum tentang segment-segment tersebut dan memory yang dialamatinya.
Pada gambar 66. berikut ini diperlihatkan cara untuk menentukan address 20-bit dari segment dan offset yang masing-masing 16-bit.

A.      Antarmuka (Interface)
1.        Slot ISA
Suatu tempat piranti tambahan yang dipasang pada komputer sehingga pada motherboard disediakan tempat yang bisa digunakan untuk memasang piranti tersebut. Ada 2 macam slot yaitu ISA dan PCI yang kegunaannya disesuaikan dengan piranti yang akan dipasang.
Fungsi pin-pin pada slot ISA IBM PC
a.      D0 – D7 (Data 0 – Data 7): Data bus uP8088, 8 bit, bidirectional.
b.  adalah MEMR (MEMory Read) dan MEMW (MEMory Write) yang menandakan µP sedang melakukan pembacaan / penulisan memori.
c. adalah IOR (I/O Read) dan IOW (I/O Write) yang menandakan µP  sedang melakukan pembacaan / penulisan rangkaian I/O.

d.      ALE ( Address Latch Enable ) adalah Menandakan AD0 – AD7 dan A8 – A19 µP 8088 berisi A0 – A19.
e.       AEN (Address Enable) adalah Setiap mikroprosesor mengirimkan Address maka sinyal kontrol AEN diaktifkan.

 
Gambar 66 Pembentukan address 20-bit

Contoh rangkaian interface output seperti ditunjukkan pada gambar 67, yaitu rangkaian aplikasi untuk menghidupkan led melalui PC yang dipasang pada slot ISA. 


Gambar 67  Rangkaian Interface output

2. Rangkaian [back]

  1. 1 LCD 2 X 16
  2. 11 Logic State
  3. 1 Potensio 10k
  4. 1 VCC
  5. 1 Ground


3. Prinsip Kerja [back]

Pertama-tama PC mengirimkan alamat 300H sesuai alamat card interface yang dirancang sehingga output nand gate aktif rendah karena semua inputnya berlogika ‘1’. Output nand gate diumpankan ke kaki E1 IC 74LS 138 yang aktif rendah disamping itu E2 dari pin kontrol AEN dan E3 aktif tinggi dihubungkan ke Vcc maha IC decoder aktif dan siap menyalurkan kondisi input (A, B & C). Dengan alamat 300H maka nilai input A=B=C = ‘0’ dan input kontrol IOW yang aktif rendah maka membuat output gerbang NOR  berlogika ‘1’. Output gerbang NOR yang berlogika ‘1’ diumpankan ke CLK (Clock) IC Latch 73LS374 sehingga IC 73LS374 menyalurkan data D0 : D7 ke output Q0 : Q7. Output-output Q yang berlogika ‘1’ akan menghidupkan led.

4. Video [back]


5. Link Download [back]

Comments

Popular posts from this blog

COVER

KULIAH DAN PRAKTIKUM Dibuat dan Dipublikasikan untuk Memenuhi Tugas Kuliah Elektronika dan Sistem Digital Mikroprosessor dan Mikrokontroller By: Adelina Utari 1610952030 Dosen Pembimbing : Darwison, M.T TEKNIK ELEKTRO FAKULTAS TEKNIK PADANG 2018 Referensi: Hall, D. V., “Microprocessors and Interfacing: Programming and Hardware”, McGraw-Hill, Inc., New York Darwison, 2010, Teknik Interface: Perancangan Hardware dan simulasi Software serta Aplikasinya”, Unand Press, Padang. Darwison, 2009, “Panduan Praktikum Elektronika Digital”, Teknik Elektro – Unand, Padang. Darwison, 2009, “Diktat Mikroprosesor”, Teknik Elektro – Unand, Padang Gaonkar, S., 1988, “Microprocessors, Architecture, Programming, and Interfacing”, Jhon Wiley and Sons. Rachmad Setiawan, 2006, “Teknik Interface”, Graha Ilmu, Yogyakarta. John Crisp, Introduction to Microprocessors and Microcontrollers, 2nd edition, Newness, 2004. Darwis...