ピンがシンクできる電流に制限はありますか?


13

私は、Arduino Unoによって制御される8x8 LEDマトリックスを実験してきました。典型的だと思うので、マトリックスは各行に共通のアノードを使用し、各列に共通のカソードを使用します。

現時点では、すべてのマトリックスピンをUnoのIOピンに直接接続しており、LEDを1つずつ点灯させるのに問題はありません。このようにマトリックス全体を移動すると、更新が少し遅くなります。つまり、LEDが私が望むほど明るくはありません。

私の知る限り、Unoの個々のピンは同時に8つの個別のLEDを駆動するのに十分な電流を供給できないため、行全体を一度に安全に点灯させることはできません(少なくとも10mAが必要です)十分に明るい)。

その逆のほうが安全かもしれないと思いました。一度に列全体を点灯させる場合、各ピンは1つのLEDに十分な電流を供給するだけで問題ありません。ただし、1つのピンに依存して、8つすべてから合計80mA以上の電流をシンクする可能性があります。

これは可能ですか、それともボードを炒めますか?


どのようなディスプレイを使用していますか(データシート)、それと直列抵抗を使用していますか?たぶん、あなたはあなたのArduinoではなく時間表示を揚げます。
ジッピー14

部品番号はないため、正確なデータシートはありません。各LEDの順方向電圧は2Vで、現時点では(テスト中)390Ωの直列抵抗を控えめに使用していると想定しました。それは私が思うにそれぞれ約8mAでそれらを駆動していることを意味します。
ピーターブルームフィールド14

それは問題ないはずです。
ジッピー14

あなたがやっていることについてもう少し詳しく話してください。私が尋ねている理由は、私が同じことをしたいからであり、私は初心者です。私はRTFMingであり、あなたの質問は私の検索の最大のヒットでした。私はjeffsilverm@gm4il.c0mです。ありがとうございました。
user1928764

回答:


13

ボードを揚げますか?

かなりありそうな結果。その理由は次のとおりです。

Arduino UnoはatMEGA328マイクロコントローラーを使用します。これは、GPIOごとに40 mAのソースまたはシンクの絶対最大定格があります。また、電源またはグランドレールを流れる合計電流(つまり、OPがGPIOピンにシンクまたはソースさせるすべての電流の合計)の最大定格は150 200 mAです。

現実的には、atMEGA328データシートの電流グラフは40 mAまで完全には行かないため、GPIOごとに合計20 mAに電流を制限するのが最も安全です。

言い換えれば、GPIOがソースとして使用されるかシンクとして使用されるかにかかわらず、制限はかなり低いままであり、実際には、絶対最大定格よりもはるかに低く保つ必要があります。絶対最大値を下回っていても、マイクロコントローラーを高すぎる温度で実行すると寿命が短くなります。

解決策

BJT、MOSFET、またはULN2003などのドライバーICを使用して、実際にLEDを流れる電流を駆動します。


2
最大150mAをどこで見つけましたか。パッケージのために?絶対最大定格では200mA です。
ジッピー14

@jippie私は馬鹿げた:-)
アニンドゴーシュ14

9

前回のarduino SEの試みでこの質問に答えたときから答えを盗みます。


これは少し複雑です。基本的に、いくつかの制限要因があります。

マイクロコントローラーからのIOライン(つまり、アナログピンとデジタルピン)には、集約(たとえば合計)電流制限とピンごとの制限の両方があります。

ここに画像の説明を入力してください
ATmega328Pデータシートから。

ただし、Arduinoの「ピン」の定義方法によっては、これだけではありません。

arduinoの5Vピンは、マイクロコントローラーを介して接続されていません。そのため、大幅に多くの電力を供給することができます。arduinoにUSBから電力を供給している場合、USBインターフェースは総消費電力を500 mAに制限します。これは、arduinoボード上のデバイスと共有されるため、使用可能な電力はやや少なくなります。
バレル電源コネクタを介して外部電源を使用している場合、最大1アンペアの定格のローカル5Vレギュレーターによって制限されます。ただし、これは熱的にも制限されており、電力を供給するとレギュレータが熱くなることを意味します。過熱すると、一時的にシャットダウンします。

3.3V安定化出力は、最大150mAを供給できます。これは3.3Vレギュレータの制限です。


要約すれば

  • 単一のIOピンの絶対最大値40 mAですこれは最大値です。実際にピンから40 mAを完全に引き出すことは絶対にしないでください。基本的に、Atmelがチップの損傷を保証できないしきい値です。この現在の制限を安全に下回っていることを常に確認する必要があります。
  • すべてのIOピンを合わせた合計電流は最大200 mA
  • 5V出力ピンは、USBでは最大400 mA、外部電源アダプターを使用する場合は最大900 mAに適しています
    • 900 mAは、〜7Vを供給するアダプター用です。アダプタの電圧が増加すると、レギュレータが処理する必要のある熱量も増加するため、電圧が増加すると最大電流が低下します。これは熱制限と呼ばれます
  • 3.3V出力は150 mAを供給できます。
    • 注-3.3Vレールから引き出される電力は、5Vレールを通過する必要があります。したがって、3.3V出力に100 mAのデバイスがある場合、5Vの合計電流に対してカウントする必要があります。

注:これはArduino Dueには適用されず、Arduino Megaにはいくつかの違いがある可能性があります。ATmega328マイクロコントローラーをベースにしたArduinoについては、一般的に正しいでしょう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.