5

ESP8266 ESP-12 を動作させようとして、しばらく苦労してきました。NodeMCU ソフトウェアをロードすることができました。これで、ボードは常に再起動します。スクリプトがロードされているかどうかに関係なく、モジュールは継続的に再起動しているようです。ESPlorer を使用していますが、NodeMCU への接続を確認できます。その後、ボードは数秒から数分後に再起動します。この問題を解決するには、さまざまなピン配置、コンデンサなどを試しましたが、うまくいきませんでした。私はずっと探していましたが、解決策を見つけることができませんでした。どんな助けでも大歓迎です。ここに私の現在のピン配置があります:

ESP-12          -----------      TTY 3.3v Serial
================================================
TX ----------------------------- RX    
RX ----------------------------- TX    
GND, GPIO15 -------------------- GND    
VCC, CH_PD, GPIO0, (RST) ------- LD1117v33 voltage regulator +3.3v    
GND, GPIO15 -------------------- LD1117v33 voltage regulator GND

助けてくれてありがとう!

4

7 に答える 7

3

ハードウェアに問題がなく、適切なバイナリがロードされていると仮定すると、それはほぼ間違いなく電源の問題です。

1) 使用している電圧レギュレーターの定格が 200mA 以上であることを確認してください。あなたの場合、LD1117は800mAを供給できるので、それは良いことです。

2) アップストリームの電源が 200mA 以上を供給できることを確認してください。USB ハブから電力を供給している場合は、ハブに電力が供給されていることを確認してください。

3) GND と 3.3v の間にいくつかの大きな低 ESR コンデンサがあることを確認してください。 2 つのコンデンサ: 10uF と 100uF でうまくいきました (これらの正確な値に魔法はありません。10 ~ 100uF でうまくいくはずです)。ESP8266 は、起動中または送信中に、短時間に大量の (比較的) 大量の電流を引き込むことができます。これにより、電源に不適切な過渡現象が発生し、システムが再起動され、無限の再起動サイクルが発生する可能性があります。

于 2015-10-04T19:29:27.993 に答える
1

私は NodeMCU 開発ボードを持っていましたが、それは数時間は正常に動作し、その後突然再起動して稼働しなくなりました。電源コンデンサを追加したり、別の電源を使用したりしてみましたが、無駄でした。

私にとってそれを修正したのは、ウォッチドッグタイマーを毎秒リセットすることでした:

tmr.alarm(6, 1000, 1, function() tmr.wdclr() end)

ウォッチドッグ タイマーは定期的にリセットする必要があります。どのくらいの頻度かわかりません。私のデバイスは、約 35 ~ 40 秒の稼働時間の後にリセットされていました。私のコード (タイマーから 30 秒ごとに実行された) は、ウォッチドッグ自体をリセットしていました。どういうわけか、これでは十分ではありませんでした。

于 2015-10-07T06:21:50.713 に答える
1

"terminal v1.9b by br@y++" という名前のシリアル ターミナル プログラムを入手します。この回答を書いている間、ダウンロードできませんでした。リンクを見つけたら、コメントに追加します。プログラムを実行し、ボー レートをカスタムに設定し、値 74880 または 74400 を入力します。これにより、fw メッセージを表示できるようになります。このメッセージには、再起動の理由コードが含まれています。コードは次のとおりです。

  • 0 -> 電源投入による通常起動
  • 1 -> ハードウェア ウォッチドッグのリセット
  • 2 -> ソフトウェア ウォッチドッグ リセット (例外から)
  • 3 -> ソフトウェア ウォッチドッグ リセット system_restart (おそらく供給されていない wd が怒った)
  • 4 -> ソフト再起動 (おそらく再起動コマンドによる)
  • 5 -> 深い眠りから覚める

提供されたコードを見ると、チップが再起動する理由を判断できます。

于 2015-11-26T10:26:27.840 に答える
1

VCC に直接接続するのではなく、RST ラインにプルアップ抵抗を使用します。4.7K を使用しましたが、実際の値は重要ではありません。

于 2015-10-15T12:01:54.593 に答える
0

ハードウェアが良好であれば、問題はコード内にあるはずです。また、コードの終了に時間がかかりすぎると、ウォッチドッグの再起動がトリガーされます。

于 2015-11-06T06:01:37.557 に答える