Berapa nilai minimum / tegangan / arus minimum yang dapat ditangani pin gpio?

36

Saya ingin mulai menggunakan pin GPIO tetapi saya khawatir tentang korsleting atau menggunakan terlalu banyak ampere dan menggoreng raspi saya. Berapa nilai Min / Max Voltage dan Current yang dapat ditangani rasppi? Apa tegangan dan arus tipikal? Seberapa sensitif raspi terhadap korsleting dan hal-hal seperti itu?


Saya telah melihat papan yang dirancang untuk 'melindungi' raspi Anda:

Saya tidak benar-benar ingin 'memperpanjang' kegunaan raspi saya, saya hanya ingin melindunginya dari gorengan pin GPIO saya. Saya bermaksud membuat sirkuit penyangga yang akan mencegah raspi saya dari kerusakan bereksperimen dengan pin GPIO.

John
sumber
Anda akan mendapatkan banyak spekulasi liar di antara balasan. Sementara data pada gpio pi terbatas, sebagian besar IC modern akan mentolerir celana pendek sementara antara output yang digerakkan dan ground, rel suplai yang menyalakannya, atau output lainnya. Apa yang seringkali tidak akan mereka toleransi adalah koneksi singkat ke suplai tegangan yang lebih tinggi, seperti pin 5v pada konektor yang sama.
Chris Stratton
Agar aman, gunakan papan breakout. Jika Anda tidak ingin membeli satu maka sepele untuk membuat sirkuit perlindungan
Jivings
Asalkan Anda tidak menggunakan protokol kecepatan sangat tinggi, hanya menggunakan resistor seri 1K mungkin merupakan keseimbangan perlindungan dan kesederhanaan yang baik; solusi apa pun yang dirancang oleh juri (terutama jika memiliki perangkat aktif yang membutuhkan daya) berisiko mengambil tempat tambahan untuk celana pendek yang tidak disengaja ...
Chris Stratton
Anda dapat merujuk tautan ini elinux.org/RPi_Low-level_peripherals . ini akan membantu kamu.
Shiny Fathima
Beberapa diskusi tambahan di sini: electronics.stackexchange.com/questions/397388/…
Sampo

Jawaban:

33

TL; DR

  • Ini adalah perangkat 3.3V .
  • Keluaran
    • Total maksimum semua pin 50 mA.
    • Maks maks 8 mA per pin. (Kembali ke konfigurasi ini setelah reset.)
    • Perangkat lunak dapat dikonfigurasi dari 2 mA hingga 16 mA. Jangan sumber atau tenggelam lebih dari apa yang Anda konfigurasikan.
    • Jangan menggerakkan muatan kapasitif.
  • Memasukkan
    • Ambang batas 1.8V
    • Maksimum 0,5 mA
    • Gunakan resistor 6Kohm untuk memastikan arus dari sumber 3.3V tidak melebihi 0,5 mA
      • ( 3,3 V / 6000 Ω = .00055 A )

Referensi

dari: http://elinux.org/RPi_Low-level_peripherals#General_Purpose_Input.2FOutput_.28GPIO.29

Level tegangan GPIO 3.3V dan tidak toleran 5V . Tidak ada perlindungan over-voltage pada board - maksudnya adalah orang yang tertarik dengan interfacing serius akan menggunakan papan eksternal dengan buffer, konversi level, dan I / O analog daripada menyolder langsung ke papan utama.

Ini mudah ditangani dengan konverter tingkat logika dua arah .

dari: http://www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi/gpio-pin-electrical-specifications#rpi-gpio-input-voltage-and-output-current-limitations

Pin GPIO diatur ke input

Ini adalah pin logika 3,3 volt. Tegangan dekat 3,3 V diartikan sebagai logika sedangkan tegangan dekat nol volt adalah logika nol. Pin GPIO tidak boleh dihubungkan ke sumber tegangan yang lebih besar dari 3.3V atau kurang dari 0V, karena kerusakan yang cepat pada chip dapat terjadi karena dioda substrat pin input (ditampilkan sebagai FET parasit pada Gambar 1). Mungkin ada saat-saat ketika Anda mungkin perlu menghubungkannya ke tegangan di luar kisaran - dalam kasus tersebut arus pin input harus dibatasi oleh resistor eksternal ke nilai yang mencegah kerusakan pada chip. Saya sarankan Anda tidak pernah sumber atau tenggelam lebih dari 0,5 mA ke dalam pin input.

Seperti yang dicatat oleh @ AutomatedMike dalam komentar, Anda dapat mengasuransikan ini dengan resistor 2 Kohm per volt . ( 3,3 V / 6000 Ω = .00055 A )

Pin GPIO diatur ke output

Pin GPIO Raspberry Pi sangat fleksibel, dan Anda dapat memodifikasi banyak karakteristiknya dari perangkat lunak. Anda dapat menghidupkan / mematikan histeresis pin input, membatasi laju perubahan tegangan keluaran, dan mengontrol sumber dan menenggelamkan kemampuan drive saat ini dari 2 mA hingga 16 mA dalam peningkatan 2 mA. Properti ini ditetapkan untuk blok GPIO secara keseluruhan, bukan pada basis pin-demi-pin.


Untuk mencegah pemborosan daya yang berlebihan dalam chip, Anda tidak harus sumber / tenggelam lebih banyak arus dari pin daripada batas yang diprogram . Jadi, jika Anda telah mengatur kemampuan saat ini menjadi 2 mA, jangan menarik lebih dari 2 mA dari pin.


Kemampuan sumber / sink saat ini tidak membatasi arus masuk atau keluar dari pin, tetapi hanya menentukan arus maksimum yang akan dipenuhi oleh sinyal keluaran spesifikasi tegangan tinggi / rendah. Jika disalahgunakan, pin keluaran dapat rusak oleh arus berlebih terlepas dari sumber / arus tenggelam yang diprogram. Setelah reset , RPi muncul dengan output GPIO yang diatur ke kemampuan drive 8 mA .


Arus yang bersumber dari output diambil dari suplai 3,3 V, yang hanya dapat memasok maksimum 50 mA. Akibatnya, maksimum yang Anda dapat sumber dari semua output GPIO secara bersamaan adalah kurang dari 50 mA . Anda mungkin dapat menggambar arus transien di luar batas itu karena ditarik dari kapasitor bypass pada rel 3,3 V, tetapi jangan mendorong amplop!

Peringatan:

Ada pertimbangan tambahan untuk beban kapasitif. Anda benar-benar harus membaca dokumen yang banyak dikutip di sini.

Bruno Bronosky
sumber
5
0,5mA tampaknya terlalu konservatif, dan akan membuat RPi tidak berguna untuk berinteraksi dengan sebagian besar sensor, yang biasanya menarik setidaknya beberapa mA. Dokumen-dokumen ini mengatakan bahwa RPi dikonfigurasi secara default ke sink / source 8mA dan dapat dikonfigurasi untuk sink / source hingga 16mA.
Cerin
@ Cerin, Anda benar bahwa saya mengutip nomor konservatif. Apakah Anda memperhatikan bahwa Anda menautkan ke dokumen yang sama dengan yang saya kutip (tetapi tanpa jangkar)? Jika orang ingin mendorong amplop, mereka perlu membaca dokumen itu dan belajar lebih banyak daripada yang saya ajarkan di sini. Saya mengarahkan mereka ke arah itu. Saya hanya tidak ingin bertanggung jawab jika mereka mendapatkan lebih dari 50mA secara kumulatif.
Bruno Bronosky
6
Angka 8ma dan 16ma merujuk pada pin yang dikonfigurasi untuk output. 0,5mA adalah untuk pin yang dikonfigurasi untuk input. Pastikan saja selalu ada setidaknya (Vss * 2Kohm) resistensi antara Vss dan pin maka tidak lebih dari 0,5mma yang dapat mengalir ke input.
AutomatedMike
Apa yang akan menjadi batas arus yang dapat diterima jika saya menghubungkan tegangan yang lebih besar dari 3.3V pada GPIO dalam output True state? (Solusi dioda Zener di electronics.stackexchange.com/questions/353218/... ) @AutomatedMike
Pygmalion
Terima kasih atas semua umpan balik yang bagus. Saya telah menambahkan lebih banyak info ke jawaban saya.
Bruno Bronosky