EE-2623 Mikroprosesor & Antarmuka

Click here to load reader

download EE-2623 Mikroprosesor & Antarmuka

of 35

description

EE-2623 Mikroprosesor & Antarmuka. Materi 6 Interfacing I/O Team Dosen 2006. Interfacing I/O. Secara umum interface I/O sama dengan interface ke memori, hanya ada sedikit perbedaan dalam hal: - PowerPoint PPT Presentation

Transcript of EE-2623 Mikroprosesor & Antarmuka

Interfacing I/O

EE-2623Mikroprosesor & AntarmukaMateri 6Interfacing I/OTeam Dosen20061Interfacing I/OSecara umum interface I/O sama dengan interface ke memori, hanya ada sedikit perbedaan dalam hal:I/O umumnya hanya mempunyai alamat yang jauh lebih sedikit (dibawah 100) dari memori (kB) saluran alamat yang masuk ke Address Decoder akan lebih banyakBeberapa prosesor mempunyai peta I/O terpisah dari peta memori (termasuk i8088 dan turunannya)

2Peta Memori dan I/O intel 8088

I/O 64K0000FFFF

3

ADs/ds/d

LatchAD0AD7D7s/dRAM1RAM8Interface Memori 8 IC RAM4

5Contoh soal:Gambarkan address decoder untuk LPT1 (378h) dan LPT2(278h) (/cs)di prosesor i8088Lakukan dengan bertahap (mulai dari pembuatan tabel sampai pembuatan rangkaian)6Jawaban soal AlamatA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0XXXXXXXXXXXXXXXXLPT13780000001101111000LPT22780000001001111000Pemetaan LPT1 dan LPT2 ke ruang alamat i8088 64kB (A0-A15)(LPT1) /cs = /A15./A14./A13./A12./A11./A10.A9.A8./A7.A6.A5.A4.A3./A2./A1./A0.IO(LPT1) /cs = /A15./A14./A13./A12./A11./A10.A9./A8./A7.A6.A5.A4.A3./A2./A1./A0.IO7Address Decoder LPT1 (378h)

ControllerLPT18D0 D78Contoh soal:Gambarkan address decoder untuk joystick (100h sd 107h) /csdi prosesor i8088Lakukan dengan bertahap (mulai dari pembuatan tabel sampai pembuatan rangkaian)9Konsep I/O InterfacingSebagian besar dari I/O berinterface serialDibutuhkan glue chip (controller) sebagai perantara antara I/O dan uPControllermouseSerialuPParalelAD10Interface I/O UmumTidak berbeda jauh dari memoriMenggunakan latch LS373Menggunakan tranceiver/buffer, untuk I/O menjadi sangat penting karena kec. I/O jumlah kaki ke I/O (A0 sd An)) KhususI/O bisa meminta layanan dari prosesor, sementara memori tidak bisa memerlukan mekanisme permintaan khusus (interupt)

112 Metoda Akses DasarPollingDevais I/O menjadi slave dari prosesor, I/O berkerja hanya atas permintaan prosesorMekanisme: prosesor akan menanyakan (polling) ke setiap I/O apakah perlu dilayani (ada data)Baik untuk jumlah I/O yang sedikitSelama melakukan polling, prosesor tidak bisa melakukan pekerjaan lain 12InteruptProsesor terus bekerja sampai ada permintaan (interupt) dari I/O, jika ada permintaan prosesor menunda pekerjaan tersebut untuk melakukan pelayanan atas permintaanCocok untuk jumlah I/O yang banyakProsesor bisa mengerjakan pekerjaan lain selama tidak ada interuptMembutuhkan sistem yang lebih rumit (implementasinya lebih sukar, melibatkan hardware dan software)

13uPI/OAlamat + ADData12 atau 33 atau 2uPI/OAlamat + ADDatainterupt1234PollingInterupt141. Parallel Peripheral Interface i8255I8255 merupakan periferal pasangan dari i8088

15i8255Punya 3-4 alamat (8bit) yang bisa diakses baca dan tulis3 port (A,B,C) 8 bit kearah I/O

PortA RPortB RPortC RCWRA0A18 bitD0D7/WR/RD

/CS16

17ProgramableProgram = menulis suatu kode ke register control (kendali)Diprogram 24 bit input 1 00 1 1 0 1 1 (9B)24 bit output 1 00 0 0 0 0 0 (80)MOV AL, 10000000bMOV DX,303 alamat control registerOUT DX, AL

18

19ModeMode 0Tanpa handshaking antara PPI dan devais yang terhubung tidak ada negosiasi/persetujuan/tanda (PPI akan menulis/membaca data tanpa devais luar siap)Pilihan24 bit input24 bit output12 input dan 12(atau 8) output12 output dan 12(atau 8) input8 bit input dan 16(atau 8) bit output8 bit output dan 16(atau 8) bit input

20

21`Mode 1 InputSingle handshaking1. STB2. data (devais PPI)3. IBF4. INTR (memberi tahu uP ada data)5. RD6. data (ppi uP)

uPPPIdevaisSTBIBFINTRRD22

23Mode 1 Output1. WR2. data (uP PPI)3. OBF4. data (PPI devais)5. ACK6. INTR (memberi tahu uP, PPI siap menerima data)

uPPPIdevaisOBFINTRWRACK24Port APort CHPort CLPort BMode 0 8bitMode 0 4bitMode 0 4bitMode 0 8bitMode 0 8bitMode 0 4bitCtrl BMode 1 8bitMode 1 8 bitCtrl ACtrl A + BMode 1 8bitMode 1 8 bitCtrl ACtrl AMode 0 8bitMode 2 8 bitCtrl ACtrl AMode 0 8bitMode 0 input atau output sajaMode 1 input atau output saja dengan handshakingMode 2 input dan output dengan handshakingContoh soal

(a) Temukan alamat-alamat port dan control: (b) Tentukan program CWR, jika PA =out, PB=in, PC0 PC3 =in, dan PC4 - PC7=out.(c) Buat program 8255 untuk mendapat data dari port B dan kirimkan ke port A. Juga data dari port C Low dikirim ke CPU.CH26Jawaban/CS= /(A2.A3.A4.A5.A6./A7) 0111 11XXport A 0111 1100 = 7Cport B 0111 1101 = 7Dport C 0111 1110 = 7ECWR 0111 1111 = 7F

Program CWR jika PA=out,PB=in,PCL=in,PCH=out CWR = 10000011 (83h)mov DX,xx7Fmov AL,1000 0011 out DX,AL

Program (setelah CWR selesai di init CWR= 1001 x001)mov DX,xx7Cin AL,DXmov DX,xx7Dout DX,ALmov DX,xx7Ein AL,DXand AL,OF

27BSR (bit set/reset) Sifat khas dari port C adalah bisa diprogram bit demi bit. Mode BSR bisa membuat setiap bit di PC0 sampai PC7 sebagai 0 atau 1.

28Contoh penggunaanProgram PC4 digambar ini untuk menghasilkan sebuah pulsa 50 ms dengan duty cycle 50%.

29Jawab:8255 diprogram di mode BSR, bit D7 dari control word harus low. Membuat PC4 high, control word nya adalah 0xxx1001". Membuat PC4 low , control word nya adalah 0xxx1000". X adalah "don't care" dan umumnya di set 0.

MOV AL.00001001B ;muat byte control (PC4=1)OUT 93H,AL ;set PC4 high, kirim ke CWRCALL DELAY ;waktu delay 0.5 * 50 msMOV AL,00001 OOOB ;muat byte control (PC4=0) OUT 93,AL ;set PC4 low, kirim ke CWRCALL DELAY ;waktu delay 0.5 * 50 ms30Mode 2: I/O bidirectional dengan handshakingUntuk mentransfer data baik masuk mapun keluar melalui port yang sama dengan kemampuan handshaking, port A digunakan di mode 2. Sinyal handshaking untuk port A disediakan dengan memilih bit di port C. Di mode 2 selain port A, dapat digunakan port B di mode 0 or 1.31PC3

PA7-PA0

PC7

PC6

PC4

PC5

PB7-0B1

PC1

PC2

PC0

Mode 2 and Mode 1 output1xxx0xControl wordRDWRINTRA

OBFA

ACKA

STBA

IBFA

OBFB

ACKB

INTRB

1132PC3

PA7-PA0

PC7

PC6

PC4

PC5

PB7-0B1

PC1

PC2

PC0

Mode 2 and Mode 1 Input111xxx1xControl wordRDWRINTRA

OBFA

ACKA

STBA

IBFA

IBFB

STBB

INTRB

33Interfacing dengan DIP Switch

PPI34PPI sebagai controller LED 7 segmenPPI351

A15

A14

A13

A12

A11

A10

A9

A8

A7

A0

A1

A2

A6

A5

A4

A3

IO

CS

D0

D1

D7

D6

D5

D4

D3

D2

ON

5 KOhm x 8

+5 V

8088

AddressDecoder

}

AddressBus