Sahara's WebLog

日記のような、備忘録のような、うらみつらみのような、自慢のような…。

ESP8266モジュール(ESP-WROOM-02)を試す その57 Arduino IDE – Serial.flush(); -

PIC10F322過放電防止回路 + 18650 + ESP8266 – PICで電源管理 –」に関して。
ESP8266での処理が済んだら、そのことをPIC10F322に伝え、それを受けたPIC10F322が電源を切る、というのをやっている。

ESP8266の終了直前の処理は、TalkBackから返ってくる7桁の数字をシリアル・モニタに表示することだ。
Serial.print(hogejhoge);
の直後に終了信号(LowからHighに)を送るとこうなる。

バッファ内のデータを送信し始めるとすぐに終了信号がHighになる。
バッファの内容をチェックして、送信が完了したことを知るにはどうするのか調べたら、
Serial.flush();
というのが見つかったので試してみる。
Serial.print(hogejhoge);
Serial.flush();
とするだけだ。
結果は下のようになる。

それでもデータを完全に送り終える前に終了信号が出るので、そこまでせっかちにせんでもええやろ、って感じだ。
もう300usほど後でもいいので、結局、さらに1msのディレイを入れることにした。

追記
ESP8266がWi-Fiがらみで処理をしていると、電圧がバタバタする。
なので、PIC10322でのADCの処理を、終了信号を受け取ってから行うことにした。
したがって、時間的に余裕が出来て、上の件は実質的には問題なくなった。
ESP8266関連記事一覧へ

このエントリーをはてなブックマークに追加

Posted under: ESP8266


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.