2017-09-07 7 views
1

LuaとGPIOモジュールをNodeMCUと一緒に使用すると、私の高い値と低い値が逆に発生しています。私はNodeMCUカスタムから私のビルドのビルドをダウンロードLuaを使用しているときにNodeMCUがgpioを逆に起動するのはなぜですか?

Link

を青をオンにするには、通常、あなたがハイにGPIOピン0を設定し、ESP8266上のLED。私のために起こっていることは、それを低く設定しなければならないということです。

この

は、私は青色のLEDを点灯するために、シリアルコンソールで実行してるものです:

gpio.write(0, gpio.LOW) 

私はこのピンを取り、直接地面にそれを接続した場合には、それはまた、青色LEDを点灯しているI信じている

NodeMCUで低い値と高い値が正しく読み込まれない原因は何ですか?

答えて

2

これは正常です - オンボードLEDはLOW値で点灯し、HIGH値で消灯します。 私はLuaとArduinoの両方でこれらをプログラミングしました。オンボードLEDも同じように動作します。

通常のLEDを同じピンに接続してみます。それは反転であることに気付くでしょう - それはHIGH値でオンになり、LOW値でオフになります。

+0

あなたは正しいです、私が期待しているようにLEDを接続すると動作します。一方、私はリレーが接続されていると、私はそれが 'LOW'時にオンになり、' HIGH'時にオフになるのを見ています。 – Sawtaytoes

1

HIGHは、ピンが電源電圧(「ソース」電圧)に設定され、LOWが0V(「シンク」電圧)に設定されていることを意味します。

(gpio.writeで「0」がdiagram hereあたりGPIO16ハードウェアピンを指していることに注意してください)このボードは、それらのほとんどのように配線され、これはLEDの大まかな概略図であると仮定すると: Diagram of the GPIO16 pin

することができますGPIO16の方に向いているダイオードが点灯するように、ダイオードが電流を流す方向にダイオードが「指す」ことを確認してください。したがって、電流を流すには、GPIO16をLOW(0V)に設定して電圧差があるようにする必要があります。それ以外の場合、ダイオードの両側は3.3Vにあり、電流は流れません。

関連する問題