質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

解決済

2回答

2199閲覧

esp8266で一定時間milkcocoaからデータを受け取らなかったとき

go6887

総合スコア10

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2016/10/03 18:31

現在esp8266とwebアプリケーションをmilkcocoaでつないだ作品をつくっています。javascriptでデータを送りそのデータに応じてesp8266の方のLEDがパターンごと光るようになっているのですが、もし一定時間javascriptの方からデータがこなかったときまた違うパターンで光るといったことは可能でしょうか?

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

取りあえず途中経過。

Arduino

1#include <MsTimer2.h>

これでタイマー割り込み(定期的に割り込み処理がかかる)で信号が無かったときの処理のために、どの位信号が無かったかを計測できる。

Arduino

1 wait_count = 0; 2 MsTimer2::set(500, waiting); // 500ms毎にflash( )割込み関数を呼び出す様に設定 3 MsTimer2::start();

setupの中にこれを書くと0.5秒ごとにvoid waiting()に飛ぶ。
グローバル変数にint wait_count;を定義。

arduino

1void waiting() 2{ 3 wait_count++; 4}

割り込み処理waitingではカウントアップだけ。

そして

arduino

1void loop() 2{ 3// 4// javascriptからのデータを受信 5// 6// 例えば文字としてLEDのパターンを’A'なら1の処理、’B'なら2の処理などをする。 7(中略) 8 switch(Recv) 9 { 10 case 'A': 11 (処理1) 12 // 受信できたので、無信号のカウンターをリセット 13 wait_count = 0; 14 break; 15 case 'B': 16 (処理2) 17 // 受信できたので、無信号のカウンターをリセット 18 wait_count = 0; 19 break; 20 default: 21 // 未定義の受信 22 (何か処理が必要なら) 23 } 24 if( wait_count >= 120 ) // 1分以上無信号ならば 25 { 26 (無信号の処理) 27 wait_count = 0; 28 } 29}

で、javascriptではなくターミナルで検証できました。

投稿2016/11/17 09:32

MasahikoHirata

総合スコア3747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

最近ESP8266での開発をしていますが、解決したのでしょうか?

投稿2016/11/09 11:07

MasahikoHirata

総合スコア3747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

go6887

2016/11/09 11:32

この問題は結局解決できていないままです
MasahikoHirata

2016/11/09 15:18

これは十分可能なものと期待して回答しました。ESP8266は単体ですか?それともArduinoのシールドですか?
go6887

2016/11/10 05:45

ESP8266単体です
MasahikoHirata

2016/11/10 05:49

ではarduinoのスケッチでOKですか?
go6887

2016/11/10 05:56

はい、arduinoIDEでかいています
MasahikoHirata

2016/11/10 06:13

ESP8266への接続はjavascript側からESP8266のwebにと考えていいですか?
MasahikoHirata

2016/11/16 11:23

取りあえず、シリアル(回答が無かったのでJavascriptが定期的に何かの文字を送信しているとの仮定で)での通信が途絶えたと仮定でのスケッチを明日に開示します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問