• ベストアンサー

Arduino SHT11温度・湿度センサについて

ArduinoでSHT11を用いて温度と湿度を測ろうと思い、SHT1Xのライブラリを追加してサンプルをコンパイルしようとしたところ下記のエラーが出て先に進みません。この1年程いろいろプログラムを作製しましたが、このようなエラーがでたのは、初めてです。 「C:\Arduino\arduino-0021\libraries\sht1x\_sht1x.c :1: error: stray '\2' in program」 IDEを替えてみたりしましたがだめでした。 どなたか、解決策を教えていただけないでしょうか OS・Windows XP  Arduinoバージョン0021

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.2

http://timothytwillman.com/itp_blog/?page_id=213 から取得したもの…ですかね? 既に書かれている通り、展開に失敗しているような気もしますが。 ちなみに、上記のものだった場合、「_sht1x.c」というファイルは存在しません。 MacOS向けと思われる「._sht1x.c」というファイルはありますが。 >_sht1x.c :1: error: stray '\2' in program 恐らく、バイナリの0x02が1行目にある。 ということかと…。 ._sht1x.cならば、6バイト目に0x02はありますが… # その前に0x00や0x05、0x07、0x16なんかがあったり。 libraries\sht1x\にあるべきファイルは… sht1x.c、sht1x.h、sht1x_hw.hの3つです。 Mac向けの ._sht1x.c、._sht1x.h、._sht1x_hw.h は不要です。 # 入っていると…[Sketch]-[Import Library]-[sht1x]をした際に._sht1x.h、._sht1x_hw.hの2つも取り込まれ… # 「~\._sht1x.h:1: error: stray '\5' in program」なんてことになります。(この後にもstray '\xx' in programって感じで続く)

y_david
質問者

お礼

  ありがとうございます。「._sht1x.c、._sht1x.h、._sht1x_hw.h」の3ファイルを削除して問題なくコンパイルできました。   

その他の回答 (1)

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

元がtar.gzで、Windows上でそのようなエラーが出るなら、ライブラリの文字コードか改行文字が怪しいと考えます。 適当なフリーソフトで、そのライブラリの文字コードをShiftJISに、改行をCR+LFに変えてみたらどうなりますか?

関連するQ&A

  • Arduino SHT1x温度・湿度センサのライブラリのダウンロードに

    Arduino SHT1x温度・湿度センサのライブラリのダウンロードについて 今回ArduinoでSHT71を用いて温度と湿度を測ろうと思ったのですがライブラリに新しく追加しなければならないというので ttp://timothytwillman.com/?page_id=213 というリンクからCode(.tgz)を押し必要なファイルをダウンロードしました。 しかし、そのファイルの拡張子は.tarになりそれを解凍すると拡張子のない"sht1x"というファイルしかありませんでした。 これをライブラリに置いたとしてもどうにもならないと思うのでどなたか解決策を教えていただけないでしょうか OS・Windows VISTA  Arduinoバージョン0021 lhaplusで解凍

  • コンパイル時のエラーについての質問です。

    プログラミングについての質問です。 ArduinoLeonardoでコンパイル時にエラーが出てしまいました。 以下のメッセージが出てきました。 C:\Users\ZZ0711\AppData\Local\Temp\ccJJkwZc.ltrans0.ltrans.o: In function `main': C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/main.cpp:43: undefined reference to `setup' collect2.exe: error: ld returned 1 exit status 次のフォルダのライブラリsrcを使用中:C:\Program Files (x86)\Arduino\libraries\src (legacy) 次のフォルダのライブラリHIDバージョン1.0を使用中:C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\HID exit status 1 ボードArduino Leonardoに対するコンパイル時にエラーが発生しました。 自力で調べてみましたが何度試しても解決しません。 何とかして書き込みたいです。よろしくお願いします。

  • Arduinoでビルドエラーが出てくる。

    現在ESP-WROOM-32でAWS IoTなどのプログラムを勉強中です。 事務所のPCで作ったプログラムでAWS Iotのサーバに接続できるスケッチを作成して、ビルドも成功しました。 そのスケッチファイルをgoogle driveで共有したフォルダに入れているので、途中の作業を自宅のmacのPCで行おうと思ったのですが、次のようなエラーが出てビルドが失敗してしまいます。 (エラー内容) Arduino:1.8.8 (Mac OS X), ボード:"ESP32 Dev Module, Disabled, Default, QIO, 80MHz, 4MB (32Mb), 115200, None" In file included from /Users/myName/Documents/Arduino/hardware/espressif/esp32/tools/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/stdexcept:39:0, 「WiFi.h」に対して複数のライブラリが見つかりました 使用済:/Users/myName/Documents/Arduino/hardware/espressif/esp32/libraries/WiFi 未使用:/Users/myName/Desktop/Arduino.app/Contents/Java/libraries/WiFi from /Users/myName/Documents/Arduino/hardware/espressif/esp32/tools/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/array:38, from /Users/myName/Documents/Arduino/hardware/espressif/esp32/tools/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/tuple:39, from /Users/myName/Documents/Arduino/hardware/espressif/esp32/tools/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/functional:55, from /Users/myName/Documents/Arduino/hardware/espressif/esp32/libraries/WiFi/src/WiFiGeneric.h:28, from /Users/myName/Documents/Arduino/hardware/espressif/esp32/libraries/WiFi/src/WiFiSTA.h:28, from /Users/myName/Documents/Arduino/hardware/espressif/esp32/libraries/WiFi/src/WiFi.h:32, from /Users/myName/Documents/Arduino/hardware/espressif/esp32/libraries/WiFiClientSecure/src/WiFiClientSecure.h:25, from /Users/myName/Google Drive/AWS_IoT_ESP32/AWS_IoT_ESP32.ino:1: /Users/myName/Documents/Arduino/hardware/espressif/esp32/tools/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/string:53:34: fatal error: bits/basic_string.tcc: No such file or directory compilation terminated. exit status 1 ボードESP32 Dev Moduleに対するコンパイル時にエラーが発生しました。 「ファイル」メニューの「環境設定」から 「より詳細な情報を表示する:コンパイル」を有効にすると より詳しい情報が表示されます。 このようなエラー内容から、解決方法などご教示頂きますようよろしくお願い致します。

  • Arduinoでコンパイルができない

    Arduinoでコンパイルができません。 新規購入したArduinoでLED点灯の初歩のコードをコンパイルしようとしましたが、エラーが出ます。 「致命的なエラーが発生しました。ESP32への接続に失敗した、パケットヘッダの待機がタイムアウトした。」 と出ます これは、なにが原因でしょうか、 環境は,Windows10  ArduinoUNO  Arduino IDE1.8.12 です。 現在Arduinoは、橙色LEDが点滅、緑色LED点灯しています。 どなたか解決策がありましたら教えて頂けませんか。     

  • Arduinoのコンパイルエラー 複数の~について

    私用で、初めてArduinoを購入しました。 Arduino Leonardo (ATmega32u4チップ搭載)へ任天堂switcコントローラーへの操作命令を出すプログラムを書きもうとしたのですが、以下のエラーが出てしまい、書き込めませんでした。 プログラム自体は、別の方が使用しているものをそのまま写させていただいたので、間違っていないと思います。エラー内容をPCで調べ、他の方の事例を見て試行錯誤してみましたが、原因が分かりません。環境設定でコンパイラの警告は「全て」に設定済みです。 また、No such file or directoryとあるので、「SwitchControlLibrary.h」フォルダの場所が悪いのかと思い確認してみましたが、表示されているアドレスに既定のファイルはありました。ボード、シリアルボード名も一致しています。 下記のエラーコードから何か分かる方、詳しい方居れば、ご助言をいただきたく願います…💦 // 以下 エラーコード // 「SwitchControlLibrary.h」に対して複数のライブラリが見つかりました In file included from C:\Users\ユーザー名\AppData\Local\Temp\arduino_modified_sketch_55341\Blink.ino:1:0: 使用済:C:\Users\ユーザー名\Documents\Arduino\libraries\SwitchControlLibrary-master C:\Users\�͂񂴂�\Documents\Arduino\libraries\SwitchControlLibrary-master\src/SwitchControlLibrary.h:1:10: fatal error: ArduinoSTL.h: No such file or directory #include <ArduinoSTL.h> ^~~~~~~~~~~~~~ compilation terminated. exit status 1 ボードArduino Leonardoに対するコンパイル時にエラーが発生しました。 このようなエラー内容から、解決方法などご教示頂きますようよろしくお願い致します。

  • arduinoで作ったプログラムとC言語の違い

    arduinoで作ったプログラムとC言語で作ったプログラム、どちらもC言語にコンパイルされるらしいが、中身は同じでしょうか。工業用には問題ないでしょうか。arduinoは単なるおもちゃでしょうか。お願いします。

  • C言語、コンパイルエラーの原因?

    いつも大変お世話になり誠にありがとうございます。 標記の件。 shift jifでコンパイルしているのですが コンパイルエラーが発生します。 下記にコードとエラーメッセージを書きます。 コード #include <stdio.h> int main(void) { printf("8進数101の文字コードをもつ文字は%cです。\n", '\101'); printf("16進数61の文字コードをもつ文字は%cです。\n", '\x61');      return 0; } コンパイルエラー gcc text4.c -o text4 text4.c: In function 'main': text4.c:7:1: error: stray '\201' in program    ^ text4.c:7:2: error: stray '@' in program    ^ text4.c:7:3: error: stray '\201' in program    ^ text4.c:7:4: error: stray '@' in program    ^ text4.c:8:1: error: stray '\201' in program   return 0; ^ text4.c:8:2: error: stray '@' in program   return 0; ^ text4.c:8:3: error: stray '\201' in program   return 0; ^ text4.c:8:4: error: stray '@' in program   return 0; 上記のようになります。 どうすればいいでしょうか? ご多忙中申し訳ございません。 ご回答の程宜しくお願い申し上げます。           高橋耕造

  • C言語ファイルのコンパイルができない。

    先日からVineLinux3.1を使い始めました。 C言語ファイルa.c(「a」という文字を出力するだけのごく簡単なものです。このファイル自体には問題はありません。)をコンパイルしようと cc a.c と入力すると、 a.c:2:9: #include は”ファイル名”あるいは<ファイル名>を必要とします a.c:3: error: stray '\241' in program a.c:3: error: stray '\241' in program a.c:3: error: stray '\241' in program a.c:3: error: stray '\241' in program a.c: 関数 'main' 内: a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:6: error: stray '\241' in program a.c:4: 警告: 'main'の戻り値の型が 'int'ではありません と出てコンパイルできません。 Linuxのことはまだほとんど分からないので、できるだけ丁寧におしえていただけるとうれしいです。 よろしくお願いします。

  • Arduinoスケッチがリセットしないと動作しない

    Arduino UNO R3とArduino Nano互換機でI2Cで動く液晶を、標準Wireライブラリーでコントロールするスケッチをプログラミングしました。 しかしながら、Arduino IDEでスケッチを描き込んだ直後は動作するのですが、電源を入れ直すと電源ランプが点灯するだけで、プログラムが実行されなくなります。 一方で、この状態でリセットボタンを押すと、意図したとおりにプログラムが動作するので、おそらく一度はリセットしないと、正しく動かないようです。 ArduinoのFAQではブートローダーによるシリアル通信の関係で、RXを10kΩの抵抗を介してGNDにつなげるか、RXとTXをショートさせると良いとあったのですが、この方法では解決しませんでした。 Arduino単体(パソコンにつなげずに電源のみの供給)で、スケッチを正しく起動させるにはどうしたらよいでしょうか。

  • MacのターミナルでC言語コンパイルエラー

    Macのターミナルで"HelloWorld.c"のコンパイルで以下のエラーが出ます。 HelloWorld.c:1: error: expected identifier or ‘(’ before ‘{’ token HelloWorld.c:1: error: stray ‘\’ in program HelloWorld.c:1: error: stray ‘\’ in program HelloWorld.c:1: error: stray ‘\’ in program HelloWorld.c:1: error: stray ‘\’ in program HelloWorld.c:1: error: stray ‘\’ in program HelloWorld.c:2: error: stray ‘\’ in program HelloWorld.c:2: error: stray ‘\’ in program HelloWorld.c:2: error: stray ‘\’ in program HelloWorld.c:2: error: stray ‘\’ in program HelloWorld.c:3: error: stray ‘\’ in program HelloWorld.c:3: error: stray ‘\’ in program HelloWorld.c:3: error: stray ‘\’ in program HelloWorld.c:3: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:4: error: stray ‘\’ in program HelloWorld.c:5: error: stray ‘\’ in program HelloWorld.c:6: error: stray ‘\’ in program HelloWorld.c:6: error: stray ‘\’ in program HelloWorld.c:6: error: stray ‘\’ in program HelloWorld.c:6: error: stray ‘\’ in program HelloWorld.c:8: error: stray ‘\’ in program HelloWorld.c:8: error: stray ‘\’ in program HelloWorld.c:8: error: stray ‘\’ in program HelloWorld.c:8: error: stray ‘#’ in program HelloWorld.c:8:24: warning: backslash-newline at end of file HelloWorld.c:8: error: stray ‘\’ in program HelloWorld.c:8: error: stray ‘\’ in program ソースは以下 #include int main(void) { printf("Hello, World!¥n"); return 0; } どなたかお助けを!! まだ、プログラム超初心者です。よろしくお願いします。