M5StickCで水温計を作ろうとしています。
手元に市販品のFS304-SHT30温度センサーがあったのでこれをはんだ付けなどで加工し、Grove側の端子に挿して使うつもりです。
Adruinoを使ってプログラムを作ろうとしたのですが、下のようにしてもうまく動きません。ENVⅡセンサーなどのPIN側を使うセンサーなら動くのですが、Groveは認識してくれないのか、全く温度を計測してくれません。
C
1 #include <M5StickC.h> 2 #include <SPI.h> 3 #include "DHT12.h" 4 #include <Wire.h> 5 #include "SHT3X.h" 6 7 SHT3X sht3x; 8 float celsius = 0; 9 long TimerSecond=175000; 10 11 void setup(void) { 12 Wire.begin(0,26); 13 } 14 15 void ondokei(){ 16 if (TimerSecond >= 175000){ 17 int count = 0; 18 delay(500); 19 int SHT_status = sht3x.get(); 20 M5.Lcd.printf("%4.1fC\n", sht3x.cTemp); 21 TimerSecond = 0; 22 } 23 } 24 25 void loop(){ 26 M5.begin(); 27 M5.update(); 28 TimerSecond = TimerSecond + 1; 29 ondokei(); 30 delay(1); 31 } 32 33コード
どこを直せば温度を測れるようになるでしょうか。
まずはセンサを接続した回路図を提示しましょう
市販のセンサー(https://www.amazon.co.jp/FS304-SHT30-35%E6%B8%A9%E5%BA%A6%E6%B9%BF%E5%BA%A6%E3%82%BB%E3%83%B3%E3%82%B5%E3%83%BC-%E5%9C%9F%E5%A3%8C%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB%E6%B8%A9%E5%BA%A6%EF%BC%86%E6%B9%BF%E5%BA%A6%E3%82%BB%E3%83%B3%E3%82%B5%E3%83%BC%E3%83%97%E3%83%AD%E3%83%BC%E3%83%96-%E3%82%B9%E3%83%86%E3%83%B3%E3%83%AC%E3%82%B9%E9%8B%BC%E3%83%97%E3%83%A9%E3%82%B9%E3%83%81%E3%83%83%E3%82%AF%E3%83%8F%E3%82%A6%E3%82%B8%E3%83%B3%E3%82%B0-FS304-SHT3X/dp/B081ZTGHF7 )の接続部分をはんだでソケットと接続し、M5StickCに差し込んだだけなので、回路図は自分でも作ってないし分かりません。
回路図がないと難しいですか?
接続が間違っていれば、いくらコードが正しくても結果は出てきません。
どの線をどこに接続したかの結線情報がとりあえずあればいいです。
(てきとうに空いてるピンにつなげたわけじゃないでしょう?)
あとSHT3X.hの素性がわかりません。どこから入手したものですか?
「うまく動かない」とはなんですか?
回答1件
あなたの回答
tips
プレビュー