質問:
EPS8266 ESP-01:LED操作がシリアル通信を妨害しているようです
user2224350
2017-08-15 04:11:41 UTC
view on stackexchange narkive permalink

私はこの udp-exampleで遊んでいます。これとまばたきの例はどちらも完全に機能します。ここで、LEDを使用して、ESPが現在何を行っているかを示し、シリアルを介していくつかのデータを読み取りたいと思います。私のコードは次のようになります:

  void setup(){Serial.begin(115200); Serial.setTimeout(500); while(Serial.available()== 0){} String password = Serial.readStringUntil( '。'); Serial.println(パスワード); WiFi.begin(ssid.c_str()、password.c_str()); // pinMode(LED_BUILTIN、OUTPUT); while(WiFi.status()!= WL_CONNECTED){// digitalWrite(LED_BUILTIN、LOW); delay(250); // digitalWrite(LED_BUILTIN、HIGH);遅延(250); } Serial.println( "connected"); Udp.begin(localUdpPort);}  

正常に機能しますが、LEDのコメントを外すと、シリアル通信が機能しなくなったようです。シリアルモニターに印刷されているものがすべて台無しになっています(文字がないなど)。コードに問題がありますか、それとも他に何がうまくいかない可能性がありますか?

編集:最近同じコードを再試行しましたが、チップに追加の電源(3.3V、500mA)を使用しました。ただし、これでは問題は解決しませんでした。

ボーレートを9600に下げて、それが役立つかどうかを確認します。また、 `setTimeout`呼び出しについてもわかりません。
ボーレートを9600に設定しても、LEDがコメントアウトされている場合は効果がありませんが、コメントアウトされていない場合、SerialMonitorには何も表示されません(setTimeoutもコメントアウトされています)
LEDのドライバーはありますか、それともESP-01に直接接続されていますか?そして、VccとGND上の電力安定装置として追加のコンデンサがありますか?
それは私が使用しているespに組み込まれているLEDです。 USB / ftdi-チップ(ノートブックに接続されている)のVCCにVCCを接続しました。
AzDelivery FTDI AdapterFT232RLのこのチップを使用しています
短い `delay`または` yield`であっても、バックグラウンドアクティビティを続行できるようにするために、whileループの本体に何かを追加することをお勧めします。
あなたは最初のものを意味しますか?なぜこれが何かを変える必要があるのですか?
別のモジュールでも同じ結果が得られますか?シリアルモニターから何か入力しましたか? `Serial.println(password)`の後に `while(1);`を配置して、少なくともそれが印刷されるかどうかを確認できますか?たぶん、 `while(Serial.available()== 0){}`ループに `yield()`を配置します。
1 回答:
Mazaryk
2017-09-05 07:06:15 UTC
view on stackexchange narkive permalink

内蔵のLEDピンはシリアルインターフェースのTXピンでもあると思います。

こちらの LEDピンセクションを確認してください: http://www.esp8266.com/wiki/doku.php?id=esp8266_gpio_pin_allocations

LEDピン

GPIO1はTXでもあり、多くのデバイスの青色LEDに配線されています。 LEDはアクティブロー(Vccに接続され、チップを介してグランドにシンク)であるため、論理値を0に設定するとLEDが点灯することに注意してください。 GPIO1はTXピンでもあるため、TX / RXピンを切り替えない限り、LEDの点滅とシリアル通信を同時に実行することはできません。

これは、次の場合に確認されます。シリアル通信がアクティブになると、LEDが点滅します。

この場合、別のピンに独自のLEDを追加するか、RX / TXピンを切り替える必要があります。

私は同意します、ref。 https://github.com/esp8266/Arduino/issues/3165


このQ&Aは英語から自動的に翻訳されました。オリジナルのコンテンツはstackexchangeで入手できます。これは、配布されているcc by-sa 3.0ライセンスに感謝します。
Loading...