スポンサーリンク

解決!「Arduino ‘read’ was not declared in this scope」というコンパイルエラーについて

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」というコンパイルエラーの解決方法についてご紹介させていただきました。

3件のコメント

I am in fact grateful to the holder of this website who has
shared this wonderful article at at this place.

I am really loving the theme/design of your site. Do you ever run into any internet browser compatibility issues?
A number of my blog visitors have complained about my blog
not operating correctly in Explorer but looks great in Opera.
Do you have any suggestions to help fix this problem?