Cara membalikkan sinyal digital

29

Saya perlu cara untuk membalikkan sinyal digital yaitu jika inputnya tinggi, saya ingin outputnya rendah dan jika inputnya rendah saya ingin outputnya tinggi.

Saya pikir ini dapat dicapai dengan transistor PNP tunggal, tetapi ingin memverifikasi itu di sini. Tegangan yang saya hadapi kurang dari 5V.

Matt Ruwe
sumber
Perawatan terperinci dari inverter BJT: EE 307 Bagian 2 Proyek MoHAT - "Tujuan halaman ini adalah untuk membimbing mereka yang tertarik pada operasi mendasar dari inverter BJT."
Peter Mortensen

Jawaban:

34

Atau, karena Anda berbicara tentang sinyal digital, Anda menggunakan inverter .

masukkan deskripsi gambar di sini

Aadalah input (untuk gerbang dengan lebih masukan yang akan menjadi A, B, C, dll), Yadalah output. Jika tidak menyulitkan skema Anda, letakkan simbol dengan input di sebelah kiri.

NXP memiliki inverter satu pintu . Hanya empat koneksi: catu daya, ground, input dan output.

Ini dapat dilakukan dengan transistor dan dua resistor. Ini skema sederhana, tetapi Anda masih harus membuat beberapa perhitungan sederhana. Anda akan memiliki koneksi yang sama persis dengan inverter.
BTW, PNP adalah opsi, tetapi lebih sering NPN akan digunakan.

edit (berikan komentar Anda)

masukkan deskripsi gambar di sini

Jika sinyal input tinggi akan mengalir arus melalui R2 dan basis-emitor junction transistor (basis, bukan gerbang). Arus ini akan diperkuat, dan arus kolektor melalui R1 akan menyebabkan penurunan tegangan sehingga output akan rendah. Input tinggi, output rendah.
Jika sinyal input rendah, tidak akan ada arus basis, dan tidak ada arus kolektor. Tidak ada arus melalui R1 berarti tidak ada drop tegangan, sehingga output akan berada pada + V. Input rendah, keluaran tinggi.

Ini sudah mengarah sedikit lebih jauh, tapi seperti saya katakan di komentar untuk sandun outputnya sangat asimetris. Jika output terhubung ke kapasitor, tingkat output yang tinggi akan berarti bahwa kapasitor dibebankan melalui R1, yang akan menghasilkan kemiringan eksponensial dengan konstanta waktu R1C. Ketika output rendah, kapasitor akan dikeluarkan melalui resistansi yang jauh lebih rendah dan kemiringan akan jauh lebih curam. Anda tidak akan mendapatkan perbedaan ini dengan gerbang CMOS, yang memiliki kemampuan sumber / wastafel simetris.

Input versi transistor juga akan menarik arus (kecil) saat tinggi. Versi CMOS hanya akan memiliki arus bocor kecil baik saat tinggi maupun rendah.

Secara keseluruhan gerbang logika terintegrasi adalah pemenangnya.

stevenvh
sumber
Saya tentu bisa bingung di sini, tetapi NPN menyala ketika daya disuplai ke gerbang dan PNP mati saat daya disuplai. Masuk akal untuk menggunakan NPN untuk amplifikasi sinyal, tetapi tidak akan menyebabkan sinyal terbalik. Pikiran?
Matt Ruwe
2
Gates adalah untuk MOSFET, bukan BJT. NFET menyala dan PFET mati. Tetapi Anda harus memastikan sumber terhubung dengan benar. NPN dan PNP adalah BJT dan memerlukan lebih banyak matematika untuk memastikan mereka berfungsi dengan benar
ajs410
ketika datang ke NXP Anda memiliki ruang kebebasan yang sangat kecil. Ada kendala seperti pengaturan waktu, kipas masuk, kipas keluar, margin kebisingan input, gangguan dll. Dalam hal ini lebih mudah menggunakan transistor. Hanya karena Anda tidak dikunci oleh kendala itu.
Standard Sandun
@Matt - mengedit jawaban saya.
stevenvh
1
@sandundhammika, Jika Anda membangun sendiri, Anda masih memiliki batasan pada fan-out dan margin noise (fan-in tidak berlaku di sini). Tetapi Anda harus menghitung sendiri batas-batas itu. Jika Anda menggunakan gerbang di luar rak, Anda bisa membaca lembar data untuk mengetahuinya. Selain itu, konsumsi daya (kendala sistem lainnya) cenderung jauh lebih baik untuk gerbang off-the-shelf.
The Photon
24

Ya, ini dapat dicapai dengan satu transistor dan resistor, tetapi ada chip yang dirancang khusus untuk membalikkan sinyal digital. Anehnya, mereka disebut inverter . Lihat 74HC04, misalnya. Itu memberi Anda enam inverter terpisah dalam satu paket 14 pin. Ada juga inverter tunggal (dan gerbang logika kecil lainnya) yang tersedia dalam paket SOT-23 kecil, yang merupakan paket yang sama dengan masing-masing transistor.

Ada sedikit alasan untuk mencoba membuat inverter Anda sendiri, tetapi ya, itu mungkin.

Ditambahkan dalam menanggapi komentar:

Seperti yang saya katakan, transistor bipolar tunggal dapat digunakan sebagai dasar untuk inverter sederhana. Minimal, Anda memerlukan transistor dan basis resistor. Untuk kelengkapan saya juga akan menambahkan resistor beban keluaran, yang harus Anda asumsikan diperlukan kecuali Anda tahu apa pun yang akan terhubung ke output akan menyediakan beban yang diperlukan. Tidak ada keajaiban tentang transistor PNP pada khususnya. NPN dapat digunakan juga. Inilah cara masing-masing akan digunakan:

Perhatikan bahwa masing-masing memiliki 4 koneksi: daya, arde, input, dan output. Perbedaan antara keduanya adalah arah mana yang memuat input dan arah mana output didorong secara aktif versus secara pasif ditarik oleh beban. Jika Anda tidak peduli dengan masalah ini, maka kedua sirkuit secara fungsional setara.

Namun, ini lebih mudah:

Ini juga lebih cepat, membutuhkan daya yang kurang stabil, memiliki impedansi imput lebih tinggi, dan lebih kecil. Ini memiliki empat koneksi yang sama seperti yang dilakukan inverter di atas. Gerbang tunggal seperti ini tersedia dalam paket SOT-23, yang merupakan paket yang sama dengan transistor tunggal. Ini hanya memerlukan satu bagian eksternal, tutup bypass. Tidak perlu resistor beban karena outputnya secara aktif menggerakkan kedua arah.

Sungguh, untuk pembalikan umum dari sinyal digital, membuat inverter Anda sendiri konyol untuk aplikasi normal.

Di luar topik disamping tentang gambar skematik:

Script ini sebenarnya hanya tiga baris. Ini seluruh file:

@echo mati
rem
rem MAKE_SCHEM_GIF
rem
rem Membuat file skematis GIF yang difilter dengan baik dari output Eagle mentah
rem /temp/a.tif. File GIF yang dihasilkan adalah /temp/b.gif, dan akan menjadi
skala abu-abu rem.
rem
image_filter /temp/a.tif /temp/b.img -shrink 5
image_copy /temp/b.img /temp/b.gif -form-greay
image_disp /temp/b.gif -zoom 1 -dev medium

Ini adalah skrip satu kali yang sangat spesifik, tetapi berfungsi cukup baik untuk tujuan tersebut. Di Eagle saya mengekspor skema ke file gambar \ temp \ a.tif, jalankan script yang membuat \ temp \ b.gif. Pengaturan Elang untuk ekspor gambar adalah 600 DPI dan monokrom. Sungguh, hanya itu yang ada untuk itu. Mungkin terdengar lebih rumit daripada itu.

Olin Lathrop
sumber
1
@MattRuwe itu akan "cukup" tetapi poin Olin adalah bahwa chip khusus akan melakukan lebih baik (waktu naik dan turun akan lebih simetris). PNP dapat "menarik" ke Vdd, tetapi Anda perlu sesuatu untuk menariknya kembali ketika PNP membiarkan output mengambang. "Sesuatu" itu akan menciptakan asimetri pada waktu naik / turun, berdasarkan pada impedansinya.
ajs410
Gotcha, masuk akal
Matt Ruwe
1
Kenapa skematismu terlihat lebih cantik daripada milikku? :-)
stevenvh
4
@stevenvh: Pasti karena saya hanya lebih baik. Serius, saya menggunakan Elang dan berhati-hati. Setelah menggambar di Eagle, saya mengekspor skematis pada 600 DPI ke file gambar, kemudian menjalankan skrip yang menyaring dan menyusut 5x dan menulis hasilnya ke file GIF skala abu-abu. Itu membuat hasil ukuran yang wajar tanpa artefak piksel. Itu memang membuat garis sedikit kabur, yang merupakan tradeoff untuk tidak memiliki aliasing dan terlihat jelas.
Olin Lathrop
1
@ abdullah: Lihat tambahan untuk menjawab.
Olin Lathrop
8

Berikut adalah beberapa nilai resistor yang berfungsi untuk sinyal CMOS:

Saya menemukan utas ini karena saya ingin menghubungkan "Ransel Digital LCD" yang lebih lama ke Arduino. Arduino mengeluarkan sinyal serial positif, dan ransel digital menginginkan sinyal terbalik. Versi yang lebih baru dari pengontrol LCD memiliki jumper terbalik / tidak terbalik, tetapi milik saya tidak. Demikian pula, dimungkinkan untuk menghasilkan sinyal serial terbalik melalui perangkat lunak, tetapi melibatkan menjalankan perpustakaan non-standar. Saya ingin menggunakan Serial.writeperintah standar .

Saya awalnya memasang salah satu dari 4 NOR di 4001 CMOS quad NOR gate sebagai inverter, tapi itu membutuhkan banyak ruang di papan tempat memotong roti saya, dan karena Anda seharusnya mengikat semua input yang tidak digunakan ke tanah, melibatkan banyak kabel. (Saya pikir saya perlu menghubungkan semua kecuali 3 dari 14 pin pada paket; semuanya kecuali output pada 3 NOR yang tidak digunakan.)

Saya ingin solusi yang lebih sederhana. Saya menggunakan sirkuit yang disediakan oleh @stevenvh.

Tertaut di sini:

masukkan deskripsi gambar di sini

Saya berurusan dengan logika CMOS 5V pada 9600 baud, jadi impedansi input sangat tinggi / arus sangat rendah. Karena saya hanya beralih pada 9600 baud, saya tidak berpikir perilaku asimetris dari inverter berbasis transistor sangat menyakitkan saya.

Saya menemukan bahwa resistor 100K pada input (R2 dalam diagram stevenvh) bekerja, dan menggunakan resistor 3.3k sebagai resistor pull-up di R1. Berdasarkan perhitungan saya (I = V / R, 5/3300) pengaturan ini akan menarik <= 1,5 mA dalam keadaan ON (Agak kurang karena hambatan internal transistor.) Saya mungkin memasang pot dan melihat seberapa besar sebuah resistor saya bisa lolos dengan LCD masih menerima sinyal.

Duncan C
sumber
4

Inilah cara Anda melakukannya dengan cara CMOS:

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Tegangan power rail bisa setinggi yang Anda mau asalkan lebih rendah dari voltase breakdown gate.

Maxthon Chan
sumber