Arduino IDEで発生した「Arduino ‘read’ was not declared in this scope」というコンパイルエラーの解決方法を今回はご紹介します。
今回はセンサで測定した値をArduinoからNode.jsのサーバへ送信するというプログラムを書きました。
いつもの通り、Arduino IDEでスケッチをコンパイルすると以下のようなエラーが発生してコンパイルできませんでした。
⇨「Arduino ‘read’ was not declared in this scope」
プログラムがおかしくないのにこれが発生した場合、以下のいずれかの方法で解決できるかもしれません。
なお、次のエラーの場合も同様の方法で解決できるかもしれません。
○’i’ was not declared in this scope
○’serial’ was not declared in this scope
○’wifi’ was not declared in this scope
○‘read’ was not declared in this scope
解決方法①:呼び出される関数の記述位置を前にする
解決方法として、「void loop()」の記述よりも前に「read(value)」という関数を記述することでエラーを解消できました。
以下のように「void loop()」の記述よりも前に「read(value)」の記述を移動します。
他にも原因はあったりするかもしれませんが、簡単なので当分の間はこの方法でも大丈夫かなと思っています。
解決方法②:ArduinoIDEのバージョンを最新にする
ArduinoIDEのバージョンによってはコンパイルエラーが発生するものがあるようです。私も最初は『1.6.13』のバージョンを使用していましたが、このバージョンではコンパイルエラーが発生してしまいましたので、現時点の最新バージョンである『1.8.5』を入れ直すとエラーが発生することなく書き込めることができました。
以上、今回は「Arduino ‘read’ was not declared in this scope」というコンパイルエラーの解決方法についてご紹介させていただきました。