11
ANTARMUKA MEMORI 8086, 80186, 80286, DAN 80386SX (16-BIT) Mikroprosesor 8086, 80186, 80286, DAN 80386SX berbeda dari 8088/80188 dalam tiga hal; (1) memiliki bus data selebar 16 bit, menggantikan 8 bit pada 8088, (2) pin IO/ dari 8088 digantikan oleh suatu pin M/IO, dan (3) terdapat sinyal kontrol baru yang disebut bus high enable (BHE). Bit alamat A0 atau BLE juga digunakan secara lain. (karena bagian ini berdasarkan atas materi yang diberikan dalam Bagian 10-3 maka sangat penting bagi Anda untuk membaca bagian sebelumnya terlebih dahulu). Beberapa perbedaan lainnya adalah antara 8086/80186 dan 80286/80386SX. 80286/80386SX berisi suatu bus alamat 24-bit (A23-A0), selain bus alamat 20-bit (A19-A0) pada 8086/80186. Mikroprosesor 8086/80186 berisi sinyal M/IO, sementara sistem 80286 dan mikroprosesor 80386SX berisi sinyal-sinyal MRDC dan MWTC, selain RD dan WR. Kontrol Bus 16-Bit Lebar bus data 8086, 80186, 80286, DAN 80386SX adalah dua kali lebar bus 8088/80188. Bus data yang lebih lebar ini hadir dengan permasalahan khusus yang belum pernah terjadi sebelumnya. Mikroprosesor 8086, 80186, 80286, DAN 80386SX harus mampu menulis data ke lokasi 16-bit mana pun – atau suatu lokasi 8-bit. Artinya, bus data 16-bit harus dibagi ke dalam dua bagian (bank) terpisah, yaitu selebar delapan bit sehingga mikroprosesor bisa menulisinya, baik sebagian (8- bit) atau kedua bagian (16-bit). Gambar 10-27 menggambarkan dua bank memori. Satu bank (bank rendah) memegang semua lokasi memori berangka genap, dan bank lainnya (bank tinggi) memegang semua lokasi memori berangka ganjil. Mikroprosesor 8086, 80186, 80286, DAN 80386SX memakai sinyal BHE (bank tinggi) dan bit alamat A0 atau BLE (Bus Low Enable) untuk memilih satu atau kedua bank memori yang dipakai untuk transfer data. Tabel 10-3 melukiskan level logika pada kedua pin atau bank yang terpilih. Pemilihan bank dilaksanakan dalam dua cara; (1) mengembangkan sebuah sinyal tulis terpisah untuk memilih suatu penulisan ke setiap bank

ANTARMUKA MEMORI 8086

Embed Size (px)

Citation preview

Page 1: ANTARMUKA MEMORI 8086

ANTARMUKA MEMORI 8086, 80186, 80286, DAN 80386SX (16-BIT)

Mikroprosesor 8086, 80186, 80286, DAN 80386SX berbeda dari 8088/80188 dalam tiga hal; (1) memiliki bus data selebar 16 bit, menggantikan 8 bit pada 8088, (2) pin IO/ dari 8088 digantikan oleh suatu pin M/IO, dan (3) terdapat sinyal kontrol baru yang disebut bus high enable (BHE). Bit alamat A0 atau BLE juga digunakan secara lain. (karena bagian ini berdasarkan atas materi yang diberikan dalam Bagian 10-3 maka sangat penting bagi Anda untuk membaca bagian sebelumnya terlebih dahulu). Beberapa perbedaan lainnya adalah antara 8086/80186 dan 80286/80386SX. 80286/80386SX berisi suatu bus alamat 24-bit (A23-A0), selain bus alamat 20-bit (A19-A0) pada 8086/80186. Mikroprosesor 8086/80186 berisi sinyal M/IO, sementara sistem 80286 dan mikroprosesor 80386SX berisi sinyal-sinyal MRDC dan MWTC, selain RD dan WR.

Kontrol Bus 16-Bit

Lebar bus data 8086, 80186, 80286, DAN 80386SX adalah dua kali lebar bus 8088/80188. Bus data yang lebih lebar ini hadir dengan permasalahan khusus yang belum pernah terjadi sebelumnya.

Mikroprosesor 8086, 80186, 80286, DAN 80386SX harus mampu menulis data ke lokasi 16-bit mana pun – atau suatu lokasi 8-bit. Artinya, bus data 16-bit harus dibagi ke dalam dua bagian (bank) terpisah, yaitu selebar delapan bit sehingga mikroprosesor bisa menulisinya, baik sebagian (8-bit) atau kedua bagian (16-bit). Gambar 10-27 menggambarkan dua bank memori. Satu bank (bank rendah) memegang semua lokasi memori berangka genap, dan bank lainnya (bank tinggi) memegang semua lokasi memori berangka ganjil.

Mikroprosesor 8086, 80186, 80286, DAN 80386SX memakai sinyal BHE (bank tinggi) dan bit alamat A0 atau BLE (Bus Low Enable) untuk memilih satu atau kedua bank memori yang dipakai untuk transfer data. Tabel 10-3 melukiskan level logika pada kedua pin atau bank yang terpilih.

Pemilihan bank dilaksanakan dalam dua cara; (1) mengembangkan sebuah sinyal tulis terpisah untuk memilih suatu penulisan ke setiap bank memori, atau (2) mengenakan decoder terpisah untuk setiap bank. Perbandingan yang cermat menunjukkan, teknik pertama merupakan pendekatan termurah dalam antarmuka memori ke mikroprosesor 8086, 80186, 80286, DAN 80386SX.

Dekoder Bank Terpisah. Pemakaian decoder bank terpisah adalah cara yang paling tidak efektif untuk mendekode alamat memori ke mikroprosesor 8086, 80186, 80286, DAN 80386SX. Cara ini terkadang ditempuh meskipun alasannya memang sulit dipahami dalam sebagian kasus. Salah satu alasan mungkin berkaitan dengan penghematan energi karena hanya bank terpilih yang difungsikan. Ini tidak selalu terjadi dengan sinyal-sinyal baca dan tulis bank yang dibicarakan nanti.

Gambar 10-28 menggambarkan dua dekode 74LS138 yang dipakai untuk memilih komponen memori RAM 64K bagi mikroprosesor 80386SX (alamat 24 bit). Di sini, decoder U2 menghubungkan pin BLE (A0) dengan G2A, dan dekode U3 menghubungkan sinyal masukan BHE ke G2A yang ada. Karena decoder tidak akan aktif hingga semua masukan enable aktif, decoder U2 hanya aktif untuk suatu operasi 16 bit

Page 2: ANTARMUKA MEMORI 8086

atau 8 bit dari bank rendah. Decoder U3 hanya aktif untuk suatu operasi 16 bit atau 8 bit dari bank tinggi.

Kedua decoder ini dan 16 RAM 64K byte yang mereka kontrol mewakili suatu rentang 1M dari sistem memori 80386SX. Dekoder U1 memfungsikan U2 dan U3 untuk rentang alamat memori 000000H – 0FFFFH.

Perhatikan dalam gambar 10-28 bahwa pin alamat A0 tidak terkoneksi ke memori karena memang tidak ada dalam mikroprosesor 80386SX. Juga perhatikan bahwa kedudukan bit bus alamat A1 dihubungkan ke masukan alamat memori A0, kemudian A2 terkoneksi ke A1, dan seterusnya. Alasannya adalah A0 dari 8086/80186 (atau BLE dari 80286/80386SX) sudah terkoneksi ke decoder U2 dan tidak perlu dikoneksikan lagi ke memori. Jika A0 atau BLE dipasang ke pin alamat A0 dari memori, tiap lokasi memori lainnya dalam setiap bank memori akan terpakai. Ini berarti bahwa setengah dari memori terbuang jika A0 atau BLE dihubungkan ke A0.

Stroble Tulis Bank Terpisah. Cara paling efektif untuk menangani pemilihan bank adalah mengembangkan suatu stroble tulis terpisah untuk setiap bank memori. Teknik ini hanya membutuhkan satu decoder untuk memilih memori selebar 16 bit, yang kerap menghemat biaya dan memperkecil jumlah komponen dalam suatu sistem.

MIKROPROSESOR INTEL: ARSITEKTUR, PEMROGAMAN DAN ANTARMUKA

Untuk suatu instruksi I/O. nomor port variabel 16 bit (DX) muncul di atas hubungan alamat A15-A0. Artinya, 256 alamat port I/O awal (00H-FFH) dapat diakses oleh instruksi I/O tetap dan variabel, tetapi suatu alamat I/O dari 0100H-FFFFH hanya diakses dari alamat I/O di dekode sehingga memperkecil jumlah rangkaian yang dibutuhkan untuk pengkodean. Dalam suatu komputer PC, 16 bit bus alamat didekode dengan lokasi 0000H-03XXH, di mana alamat I/O dipakai untuk I/O dalam PC bus ISA (Industri Standart Architecture).

Instrusk INS dan OUTS mengalami suatu piranti I/O dengan menggunakan register DX, tetapi tidak mentransfer data antara akumulator dan piranti I/O sebagaimana IN dan OUT. Selain itu, instruksi ini mentransfer data antara memori dan piranti I/O. Alamat memori ditempatkan di ES:DI untuk instruksi INS, dan DS:DI untuk instruksi OUTS. Sebagaimana instruksi string lainnya, isi pointer akan di-increment atau di-decrement, seperti juga dinyatakan oleh keadaan flag arah (direction flag-DF). Baik INS dan OUTS bisa didahului dengan REP, dan mengizinkan lebih dari satu byte, word, tau doubleword untuk transfer I/O dan memori.

I/O Terisolasi dan Memory-Mapped

Terdapat dua metode berbeda dalam antarmuka I/O ke mikroprosesor. I/O terisolasi (isolated I/O) dan I/O memori mapped. Dalam skema I/O memory-mapped, suatu instruksi yang mengacu memori bisa melaksanakan transfer. Baik I/O terisolasi maupun memori –mapped tetap digunakan sehingga keduanya akan dibicarakan di sini.

Page 3: ANTARMUKA MEMORI 8086

I/O Terisolasi. Teknik transfer I/O yang paling umum dipakai dalam sistem berbasis mikroprosesor Intel adalah I/O yang paling umum dipakai dalam sistem berbasis mikroprosesor Intel adalah I/O terisolasi. Istilah terisolasi menjelaskan bagaimana lokasi I/O diisolasi dari sistem memori dalam suatu ruang alamat I/O terpisah. (Gambar 11-1 menggambarkan ruang alamat terisolasi memori-mapped untuk suatu mikroprosesor intel 80X86 atau Pentium-pentium 4). Alamat untuk piranti I/O terisolasi, disebut port, berada terpisah dari memori. Karena kondisi port yang terpisah, pengguna bisa memperluas memori hingga batas maksimalnya tanpa memanfaatkan ruang memori untuk piranti I/O. Kelemahan I/O terisolasi adalah transfer data antara I/O dan mikroprosesor harus diakses dengan instrusksi IN, INS, OUT dan OUTS. Sinyal-sinyal kontrol terpisah untuk ruang I/O dibuat (memakai M/IO dan W/R), yang mengindikasikan suatu operasi pembacaan I/O (IORC) atau penulisan I/O (IOWC). Sinyal-sinyal ini mengindikasikan suatu alamat port I/O, yang muncul pada bus alamat, digunakan untuk memilih piranti I/O. Dalam komputer personal, port I/O terisolasi digunakan untuk mengendalikan piranti peripheral. Alamat port 8 bit digunakan untuk mengakses piranti yang berlokasi di atas papan sistem, seperti pewaktu dan antarmuka keyboard, sementara port 16 bit digunakan untuk mengakses port-port serial dan paralel seperti sistem video dan disk drive.

I/O Memory-Mapped. Berbeda dengan I/O terisolasi. I/O memory mapped tidak menggunakan instruksi IN, INS, OUT, atau OUTS. Sebagai gantinya, digunakan sembarang instruksi untuk mentransfer data antara mikroprosesor dan memori. Peranti I/O memory- mapped diperlakukan sebagai suatu lokasi memori dalam peta memori. Kelebihan utama I/O memory-mapped adalah adanya instruksi transfer memori yang bisa digunakan untuk mengakses peranti I/O. Kekurangannya adalah bagian dari sistem memori digunakan sebagai peta I/O sehingga akan memperkecil jumlah memori yang tersedia untuk aplikasi. Namun, masih terkandung manfaat lain yaitu tidak berfungsinya sinyal IORC dan IOWC dalam sistem I/O memory-mapped sehingga dapat memperkecil jumlah rangkaian yang dibutuhkan untuk pendekodean.

Page 4: ANTARMUKA MEMORI 8086

Peta I/O Komputer Personal

Komputer personal memanfaatkan sebagian peta I/O untuk fungsi terdedikasi. Gambar 11- 2 menunjukkan peta I/O untuk PC. Catat bahwa ruang I/O antara port 0000H dan 03FFH biasanya dicadangkan untuk sistem komputer dan bus ISA. Port I/O yang berlokasi pada 0400H—FFFFH pada umumnya tersedia untuk pemakai aplikasi, penggunaan mainboard, dan bus PCI. Catat bahwa koprosesor aritmatika 80287 memakai alamat I/O OOF8H—OOFFH untuk berkomunikasi. Untuk alasan mi, Intel mencadangkan port I/O OOFOH—OOFFH. Mikroprosesor 80386—Pentium 4 memakai port I/O 800000F8-800000FFH untuk komunikasi koprosesor mereka. Port I/O yang berlokasi antara 0000H dan OOFFH diakses melalui instruksi port I/O tetap; port yang berlokasi di atas OOFFH diakses melalui instruksi port I/O variabel.

Antarmuka Masukan dan Keluaran Dasar

Dasar peranti masukan adalah kumpulan penyangga three-state. Dasar peranti keluaran adalah sekumpulan latch data. Istilah IN mengacu pada pemindahan data dan peranti I/O ke mikroprosesor, dan istilah OUT mengacu pada pemindahan data keluar dan mikroprosesor menuju peranti I/O.

Antarmuka Masukan Dasar. Penyangga three-state digunakan untuk membangun port masukan 8-bit yang terlukis dalam Gambar 11-3. Data TTL eksternal (toggle switch sederhana dalam contoh ini) dikoneksikan ke masukan penyangga. Keluaran penyangga dikoneksikan ke bus data Koneksi bus data tergantung pada versi mikroprosesor. Sebagai contoh, 8088 mempunyai koneksi bus data D7—D0, 80486 mempunyai D31—D0, dan Pentium-Pentium 4 mempunyai D63—D0. Rangkaian pada Gambar 11-3 membolehkan mikroprosesor untuk membaca isi dan 8 switch yang terkoneksi ke sembarang bagian 8-bit dan bus data ketika sinyal pilih SEL menjadi berlogika 0. Jadi, ketika instruksi IN dijalankan, isi switch disalin ke dalam register AL.

Ketika mikroprosesor menjalankan suatu instruksi IN, alamat port I/O didekode untuk menghasilkan logika 0 pada SEL. Suatu 0 yang diletakkan pada keluaran masukan kontrol ( IG dan 2G) dan penyangga 74ALS244 menyebabkan koneksi masukan data (A) terkoneksi ke koneksi keluaran data (Y). Ketika suatu logika I diletakkan di atas keluaran kontrol masukan dan penyangga 74ALS244, peranti memasuki mode impedansi tinggi three-state yang secara efektif memutus switch dan bus data.

Rangkaian masukan dasar mi tidak opsional dan harus muncul kapan pun data masukan diantarmuka ke mikroprosesor. Terkadang, ia muncul sebagai suatu bagian diskret dan rangkaian, sebagaimana ditunjukkan dalam Gambar 11-3; terkadang, ia dibentuk dalam suatu peranti I/O yang dapat diprogram.

Data 16-bit atau 32-bit juga dapat diantarmuka ke macam-macam versi mikroprosesor, tetapi tidak seumum pada penggunaan data 8-bit. Untuk mengantarmuka 16 bit data, rangkaian dalam Gambar 11-3 digandakan untuk memasukkan duo penyangga 74ALS244

Page 5: ANTARMUKA MEMORI 8086

yang menghubungkan 16-bit data masukan ke 16-bit bus data. Untuk mengantarmuka data 32 bit, rangkaian diperluas 4 kali.

Antarmuka Keluaran Dasar. Antarmuka keluaran dasar menerima data dan rnikroprosesor dan biasanya harus menahannya untuk beberapa peranti eksternal. Latch atau flip-flop, seperti penyangga yang terdapat dalam peranti masukan, seringkali dibangun dalam peranti I/O.

Gambar 11-4 menunjukkan bagaimana delapan light-emitting diode (LED) sederhana terkoneksi ke mikroprosesor melalui suatu kumpulan delapan latch data. Latch menyimpan keluaran angka oleh mikroprosesor dan bus data sehingga LED dapat dinyalakan dengan suatu angka biner 8-bit. Latch dibutuhkan untuk menahan data karena ketika mikroprosesor menjalankan suatu instruksi OUT, data hanya berada pada bus data selama kurang dan 1,0 μs. Tanpa latch, Anda tidak akan pernah melihat LED menyala.

Ketika instruksi OUT dijalankan, data dan AL, AX, atau EAX ditransfer ke latch melalui bus data. Di sini, masukan D dan suatu latch oktal 74ALS374 terkoneksi ke bus data untuk menangkap data keluaran, dan keluaran Q dan latch dihubungkan ke LED. Ketika suatu keluaran Q berlogika 0, LED menyala. Setiap kali instruksi OUT dijalankan, sinyal SEL ke latch menjadi aktif, menangkap data keluaran ke latch dan suatu bagian 8-bit bus data. Data ditahan hingga instruksi OUT berikutnya dijalankan. Jadi, ketika instruksi keluaran dieksekusi dalam rangkaian ini, data register AL muncul pada LED.

Handshaking

Banyak peranti I/O menerima atau menus informasi jauh lebih lambat dari pada mikroprosesor. Metode lain dan kontrol I/O, disebut handshaking atau polling, mensinkronkan peranti I/O dengan mikroprosesor. Contoh peranti yang membutuhkan handshaking adalah suatu printer paralel yang mencetak 100 karakter per detik (CPS). Di sini menjadi jelas bahwa mikroprosesor bisa mengirim lebih dan 100 CPS ke printer sehingga perlu dikembangkan suatu cara untuk memperlambat mikroprosesor agar sesuai dengan kecepatan printer.

Gambar 11-5 menampilkan hubungan masukan dan keluaran umum yang terdapat pada suatu printer. Di sini, data ditransfer melalui suatu serial koneksi data, (D7—DO). BUSY mengindikasikan bahwa printer dalam kondisi sibuk dan STB adalah suatu pulsa clock yang dipakai untuk mengirim ke dalam printer dalam pencetakan.

Data ASCII yang akan dicetak oleh printer diletakkan pada D7—DO, dan suatu pulsa digunakan dalam hubungan STB. Sinyal strobe mengirim atau melakukan clock data ke dalam printer sehingga bisa dicetak. Saat menerima data, printer meletakkan logika 1 pada pin BUSY, mengindikasikan bahwa printer sibuk mencetak data. Perangkat lunak mikroprosesor menyelidiki atau mengetes pin BUSY untuk mengetahui apakah printer sedang sibuk. Ketika printer sibuk, mikroprosesor menunggu; ketika tidak sibuk, mikroprosesor mengirim karakter ASCII lain ke printer. Proses interogasi printer ini disebut handshaking atau polling. Contoh 11-1 menggambarkan suatu prosedur sederhana yang menguji flag

Page 6: ANTARMUKA MEMORI 8086

BUSY printer dan kemudian mengirim data ke printer ketika tidak sibuk. Prosedur PRINT mencetak isi berkode ASCII dan BL hanya ketika flag BUSY berlogika 0, mengindikasikan bahwa printer tidak sibuk. Prosedur ini dipanggil setiap saat suatu karakter akan dicetak.

Catatan Antarmuka Rangkaian

Bagian tertentu antarmuka membutuhkan beberapa pengetahuan tentang elektronika. Bagian pengenalan antarmuka menguji beberapa fakta tentang antarmuka elektronika. Sebelum suatu rangkaian peranti dapat diantarmuka ke mikroprosesor, karakteristik terminal dan mikroprosesor dan komponen antarmuka yang berhubungan harus diketahui. (Diperkenalkan pada awal Bab 9.)

Peranti Masukan. Peranti masukan adalah TTL dan bersifat kompatibel sehingga bisa terkoneksi ke mikroprosesor dan komponen antarmukanya, atau mereka berbasis switch. Sebagian peranti berbasis switch adalah terbuka atau terkoneksi. Ini bukan level TTL-level TTL merupakan suatu logika 0 (0,0 V — 0,8 V) atau logika 1 (2,0 V — 5,0 V). Agar suatu peranti berbasis switch bisa digunakan sebagai suatu peranti masukan kompatibel TTL, beberapa syarat harus terpenuhi. Gambar 11-6 menunjukkan suatu toggle switch sederhana yang dikoneksikan dengan tepat untuk digunakan sebagai suatu peranti masukan. Perhatikan bahwa suatu resistor pull-up digunakan untuk meyakinkan bahwa ketika switch terbuka, sinyal keluaran menjadi berlogika 1; ketika switch tertutup, ia terkoneksi ke ground, menimbulkan suatu level logika 0. Nilai pull-up resistor adalah tidak kritis — ia hanya menjamin bahwa sinyal berada pada suatu logika 1. Rentang standar nilai resistor pull-up biasanya antara 1K 2 hingga 10K 12.

Kontak switch mekanis secara fisik memantul (bounce) ketika tertutup, yang bisa menimbulkan masalah ketika switch digunakan sebagai sinyal clock untuk rangkaian digital. Sebagai antisipasi masalah pemantulan, satu dan dua rangkaian yang terlukis dalam Gambar I 17 dapat dikonstruksi. Rangkaian pertarna (a) adalah suatu pembatas pantulan klasik; yang kedua (b) adalah suatu versi lebih praktis dan rangkaian yang sama. Karena versi pertama lebih mahal untuk dibuat pada praktiknya, yang kedua akan dipakai karena tidak membutuhkan resistor pull-up dan hanya dua inverter selain dua gate NAND.

Anda mungkin telah mengamati bahwa kedua rangkaian dalam Gambar 11-7 adalah flip-flop asinkron. Rangkaian (b) berfungsi dengan cara berikut. Anggaplah switch saat ini berada pada kedudukan Q. Jika ia bergerak menuju Q, tetapi belum menyentuhnya, keluaran Q dan rangkaian adalah logika 0. Keadaan berlogika 0 akan diingat inverter. Keluaran dari inverter B terkoneksi ke masukan dan inverter A. Karena keluaran dan inverter B berlogika 0, keluaran dan inverter A akan berlogika 1. Keluaran logika 1 dan inventer A menjaga keluaran logika 0 dan inverter B. Flip-flop tetap berada dalam keadaan ini hingga kotak switch bergerak pertama kali menyentuh hubungan Q. Segera setelah masukan Q dan switch berlogika 0, ia mengubah keadaan flip-flop. Jika kotak memantul dari masukan Q flip-flop akan mengingatnya dan tidak ada perubahan yang terjadi sehingga mengurangi pemantulan.

Page 7: ANTARMUKA MEMORI 8086

Peranti Keluaran. Peranti keluaran lebih bervariasi daripada peranti masukan, tetapi banyak yang diantarmuka dalam cara seragam. Sebelum suatu peranti keluaran dapat diantarmuka, kita harus mengetahui apakah tegangan dan arus berasal dan mikroprosesor, atau komponen antarmuka TTL. Tegangan bersifat kompatibel TTL dari elemen antarmuka mikroprosesor. (Logika 0 = 0,0 V hingga 0,4 V; logika 1=2,4 V hingga 5,0 V.) Arus untuk mikroprosesor dan banyak komponen antarmuka mikroprosesor adalah lebih kecil dari standar komponen TTL. (Logika 0 = 0,0 hingga 2,0 mA; logika 1 = 0,0 hingga 400 μA)

Sekali arus keluaran diketahui, kita bisa mengantarmuka peranti ke salah satu satu keluaran. Gambar 11-8 menunjukkan bagaimana mengantarmuka suatu LED sederhana ke pin peralatan mikroprosesor. Perhatikan bahwa suatu pengarah transistor digunakan dalam Gambar 11-8 (a). dan demikian juga dengan inverter TTL dalam Gambar 11-8(b). TTL inverter (versi standar) memberikan arus hingga 16 mA pada level logika 0, lebih dan cukup untuk menjalankan suatu LED standar. Suatu LED standar membutuhkan arus bisa maju 10 mA untuk menyala. Dalam kedua rangkaian, kita mengasumsikan bahwa penurunan tegangan yang melewati LED adalah sekitar 2,0 V. Datasheet untuk suatu LED menyatakan bahwa penurunan tegangan nominal adalah 1,65 V, tetapi kita tahu berdasarkan pengalaman bahwa penurunan tegangan berada di antara 1,5 V dan 20 V. mi berarti nilai resistor pembatas arus adalah 3,0 V/10 mA atau 300 Ω. Karena 300 Ω bukan nilai standar resistor, kita memilih untuk menggunakan resistor 330 Ω.

Dalam rangkaian Gambar 11-8(a), kita memilih memakai suatu transistor switching sebagai pengganti penyangga TTL. 2N2222 adalah suatu transistor switching umum yang mempunyai suatu penambahan minimum 100. Dalam rangkaian ini, arus kolektor adalah 10 mA sehingga arus basis adalah 1/100 arus kolektor, yaitu 0,1 mA. Untuk menetapkan nilai resistor pembatas arus basis, kita memakai ants 0,1 mA dan penurunan tegangan 1,7 V. Sinyal masukan TTL mempunyai nilai minimum 2,4 V dan penurunan tegangan melalui persimpangan emitor-basis adalah 0,7 V. Selisihnya sebesar 1,7 V, yang berupa penurunan tegangan melewati resistor. Nilai resistor adalah 1.7V/0.1mA atau 17K Ω. Karena 17K Ω bukan nilai standar, kita memakai resistor 1 8K 2.

Misalnya kita memerlukan antarmuka suatu motor DC 12 V ke mikroprosesor dan arus motor adalah 1 A. Jelas, kita tidak dapat memakai inverter TTL untuk keduanya karena sinyal 12 V akan membakar inverter dan jumlah arus jauh melebihi arus maksimum inverter 16 mA. Kita tidak bisa memakai transistor 2N2222 juga karena jumlah arus maksimum adalah 250 mA hingga 500 mA, tergantung pada tipe paket. Oleh karena itu, solusinya adalah memakai pasangan Darlington.

Gambar 11-9 menggambarkan motor yang terkoneksi ke pasangan Darlington. Pasangan Darlington mempunyai penambahan arus minimum 7000 dan arus maksimum 4 A. Nilai resistor bias dihitung seperti yang digunakan dalam pengarah LED. Arus yang melalui resistor adalah I A/7000, atau sekitar 0, 143 mA. Penurunan tegangan melewati resistor adalah sebesar 0,9 V karena kita mempunyai dua penurunan dioda, bukan hanya satu. Nilai resistor bias adalah O.9V/0.143 mA atau 6,2.9 K2. Nilai standar 6,2 KΩ digunakan dalam rangkaian. Suhu