Apakah shifter level dua arah berbasis MOSFET saya gila?

25

Di saat murahnya, saya memutuskan untuk tidak memesan shifter level 5v ke 3.3v dari Sparkfun, tapi malah memasangnya sendiri. The skematik asli menggunakan BSS138 MOSFET, tapi karena aku menikmati permukaan-mount solder tentang sebanyak perawatan saluran akar, saya memutuskan untuk menggunakan MOSFET yang sama tampak yang melalui lubang terpasang dan mudah tersedia dari pemasok pilihan saya.

Hasil ini kurang optimal. Ketika menarik garis 5v ke tanah, semuanya baik-baik saja - sisi 3.3v pergi ke 0,07v. Tetapi ketika menarik 3.3v ke tanah, garis 5v menunjukkan sekitar 4.14v (itu adalah sentuhan di atas 5.1v). Pada pembacaan yang lebih dekat dari lembar data yang terlibat, serta catatan aplikasi Philips asli pada subjek, saya mulai sampai pada kesimpulan bahwa tegangan ambang gerbang adalah masalahnya.

Dengan mengubah skema dan mengikat gerbang MOSFET ke 5v bukannya 3.3v, kedua belah pihak tampaknya berfungsi dengan baik. Menarik kedua sisi rendah menyebabkan sisi lain menjadi rendah. Namun, saya sama sekali tidak yakin bahwa ini sebenarnya adalah hal yang waras untuk dilakukan. Pemahaman saya tentang skema asli tidak cukup dalam untuk membentuk pendapat yang masuk akal.

Apakah skematik yang dimodifikasi ini bekerja, atau apakah hasil bagus saat ini yang saya lihat hanya kebetulan atau pendahulu untuk sesuatu yang melepaskan asap ajaib?

Jon Bright
sumber

Jawaban:

45

Jawaban singkat

  • Dalam rangkaian ini, Vth (gerbang ke sumber tegangan tempat MOSFET dihidupkan) sangat penting. Vth harus jauh lebih rendah dari Vh-Vl = 5V - 3.3V = 1.7V.

    BSS138 memiliki Vth 0,8 / 1,3 / 1,5 mnt / tipikal / maks.
    Jadi sementara secara teori itu akan "cukup baik" di sini sebagai 1,7> 1,5, margin itu sangat kecil.

    Sayangnya, alternatif yang Anda pilih bahkan lebih buruk daripada BSS138.
    FQN1N60C memiliki Vth dari 2 / - / 4 V. yaitu pada kasus terbaiknya Vth dari 2V itu lebih tinggi dari 1.7V yang dibutuhkan dan dapat memiliki Vth sebanyak 4V yang jauh lebih dari 1.7V dalam aplikasi ini. .

    TOOS MOSFET (hanya) yang dapat diterima yang tersedia di Digikey adalah Zetex / Diodes Inc ZVNL110a .
    Ini memiliki Vth dari 0,75 / - / 1,5 Volts. Ini hampir sama dengan BSS138.


Lebih lama:

  • BSS138 adalah, relatif, sebongkah sampah. Ini memiliki tempatnya tetapi itu melampaui kemampuannya yang aman di sirkuit ini. Sayangnya, alternatif yang Anda pilih, FQN1N60C, bahkan lebih buruk.

  • Tegangan Anda yang meningkat LV ke tegangan yang setara dengan HV mengatasi nilai Vth tinggi FQN1N60C.

Alasan sirkuit asli Anda bekerja dengan buruk adalah karena FQN1N60C adalah spesimen yang sangat menyesal dari seni MOSFET, dan alasan bahwa sirkuit revisi Anda berfungsi dengan baik juga karena FQN1N60C adalah spesimen yang sangat menyesal dari seni MOSFET. VOS MOSFET rendah akan bekerja dengan baik di sirkuit asli dan gagal di yang direvisi.

Ini karena dalam rangkaian asli, FQN1N60C Vth terlalu tinggi untuk Vth yang tersedia dan tidak menyala dengan benar. Sebuah MOSFET dengan Vth cukup rendah akan menyala dengan baik dengan tegangan yang tersedia. Di sirkuit yang direvisi Anda telah memberikan FQN1N60C dengan tegangan gerbang yang cukup dalam keadaan dioperasikan tetapi tidak terlalu banyak sehingga akan dioperasikan secara tidak sengaja. Jika Anda menggunakan VOS MOSFET rendah itu akan dihidupkan oleh tegangan nasib yang tersedia ketika itu dimaksudkan untuk dimatikan dan sirkuit akan gagal.

Rangkaian ini sangat pintar, TETAPI kepintarannya tergantung pada MOSFET yang memiliki cukup tegangan gerbang untuk mengendarainya ketika TX_LV rendah tetapi tidak cukup tegangan untuk mengendarainya ketika TC_LV tinggi. Biasanya LV = T_LV ketika TX_LV tinggi, sehingga MOSFET tidak melihat tegangan gerbang. Dengan meningkatkan LV ke HV Anda memberikan tegangan gerbang (HV-LV) saat TX_LV tinggi. Karena HV-LV = 5-3.3 = 1.7V FQN1N60C tidak memicu salah karena Vth praktisnya adalah> 1.7V.

Di bawah ini adalah diagram sirkuit level shifter asli.

BSS138 adalah N Channel MOSFET - sehingga ia melakukan ketika gerbangnya positif relatif terhadap sumber, biasanya drainnya lebih tinggi daripada sumbernya, dan dioda tubuh internal blok ketika Vds adalah + ve dan melakukan ketika Vds negatif .

masukkan deskripsi gambar di sini

Pengoperasian normal
Dengan TXLV dan TXHV tinggi, gate berada di LV (aslinya 3V3, sumbernya ada di TX_LV = 3.3 jadi Vgs = 0 jadi FET mati.
Sumber ada di TX_LV ditarik ke sana oleh R3.

Kirim logika 0 kiri ke kanan.
Tarik TX_LV rendah. Sumber = 0V, gerbang = 3V3. Jadi Vgs = 3V3. Karena ini> Vth BSS138 dihidupkan. Saat sumber = 0V dan FET aktif, TX_HV juga akan ditarik ke rendah. Itu mudah :-).

Kirim logika 0 kanan ke kiri.
Tarik TX_HV rendah. Tiriskan = 0. Gerbang adalah 3V3 melalui koneksi keras.
Sumber = 3V3 (tetapi lihat di bawah) Jadi: Vgs = 0. FET mati. Vds = - 3V3.
TETAPI BSS138 memiliki dioda internal S ke D. Dioda ini sekarang akan melakukan, menarik TX_LV ke penurunan dioda di atas TX_HV.
Juga mudah.

SEKARANG ganti BSS138 dengan FQN1N60C.
VOS MOSFET adalah> ke >> 1.7V margin antara 5V dan 3V3.
Sekarang, dalam mengirim logika 0 KIRI KE KANAN, sumber pentanahan memberikan Vgs = 3V3 = <4V kasus terburuk. Jika benar Vth ada di suatu tempat sekitar 1,7V rangkaian akan bekerja.

Meningkatkan LV ke 5V berfungsi seperti sekarang Vgs = 5V.
TETAPI ketika TX_LV tinggi, masih ada 5-3.3 = 1.7V drive ke MOSFET, meskipun seharusnya 0V, dan sebelumnya.

Jika Anda sekarang mengganti MOSFET yang memiliki Vth <1,7V itu akan selalu dihidupkan. yaitu kualitas MOSFET yang lebih baik bekerja lebih buruk (atau tidak sama sekali). "Obat" adalah menggunakan MOSFET awalnya dengan Vth <to << 1.7V.

Russell McMahon
sumber
Itu jawaban super luar biasa kedua yang Anda berikan kepada saya dalam beberapa hari terakhir. Terima kasih banyak atas bantuan Anda!
Jon Bright
@Russel - Aneh bahwa Anda tidak menyebutkan klasifikasi "level logika" dari FET di mana pun dalam jawaban ini ...
Kevin Vermeer
1
@Kevin Vermeer - Saya menganggapnya hanya sesaat. Jika saya menggunakannya itu akan mengatakan bahwa itu adalah istilah yang sangat subyektif - tidak cukup jargon pemasaran tetapi lebih dekat dengan yang nyaman. Dan dalam hal ini ada dua "level logika" yang terlibat. BSS138 diklaim sebagai "level logika" dan itu bisa ditoleransi pada 5V dan super marginal pada 3V untuk arus di dekat nilai maksimumnya. Alasannya semacam itu berfungsi dalam aplikasi ini adalah bahwa Vth biasanya khas dan bukan kasus terburuk, dan karena arus kecil. Sebaliknya saya lebih spesifik tentang apa yang diharapkan dan dapat diterima oleh Vth.
Russell McMahon
3
Saya tidak berpikir bahwa vh-vl> vth penting. Saya pikir yang penting adalah Vl> vth (perhatikan ini juga kesimpulan analisis Anda jika saya membacanya dengan benar)
mazurnifikasi
4
Saya biasanya berusaha keras untuk menghindari menyerah pada godaan untuk memanggil orang "bodoh" secara online (atau di tempat lain) meskipun istilah itu memiliki makna formal yang baik * dan kadang-kadang cocok. Entah bagaimana 2 poin diambil dari jawaban ini minggu ini dan ada 1 downvote. Hilangnya "perwakilan" tentu saja sama sekali tidak penting tetapi menyedihkan untuk berpikir bahwa ada orang bodoh dalam daftar ini yang benar-benar berpikir jawaban ini "tidak berguna" mengingat semua info yang tersedia. Sebuah pertanyaan mungkin telah membantu orang yang lebih ragu. | * Moron = IQ 50-75. Setuju dalam bidang diskusi jika tidak di semua bidang kehidupan dalam beberapa kasus, seperti ini.
Russell McMahon