2016年6月8日水曜日

Arduino と 温湿度センサ モジュール AM2320 使ってみた

 準備   

◆Arduinoのソフト(PCにインストール無料)

◆Arduino のハード(ンヘッダー同梱)(360円+送料170円)


◆Arduinoのソフト(PC)とArduinoのハードをつなぐUSBケーブル(100円+送料170円
 

◆温湿度センサ モジュール AM2320(440円+送料170円)

 工作開始
◆全てつなぎましょう

Arduino Unoにスケッチ を書き込みましょう

ツール > マイコンボード > Arduino Uno
 

ツール > シリアルポート > Arduino Unoが接続されているポート
 

スケッチを書く
#include <Wire.h> //by dd647
void setup()

  Wire.begin();      
  Serial.begin(9600);
  delay(100);
}
void loop()
{
  Wire.beginTransmission(0x5c);     // address(0x5c)  sensor(AM2320)
  Wire.write(0x03); //Arduino read senser
  Wire.write(0x00); //address of Humidity
  Wire.write(0x04); //The number of address
                    //(Humidity1,Humidity2,Temperature1,Temperature2)
  Wire.endTransmission();//
  delay(1000); 
  int ans = Wire.requestFrom(0x5c,6);// request 6 bytes from sensor(AM2320)
  
    while(Wire.available() !=0){  
    int H1,H2,T1,T2 = 0;
    float h,t =0; 
        for(int i = 1; i <  ans+1; i++){    
        int c = Wire.read();       
            switch (i){   
            case 5:
            T1 = c;
            break;
            case 6:
            T2 = c;
            break;
            case 3:
            H1 = c;
            break;
            case 4:
            H2 = c; 
            break;
            default:
            break;
            }      
        }      
    h = (H1*256 + H2)/10.0;
    t = (T1*256 + T2)/10.0;
    Serial.print("  Humidity=");
    Serial.print(h);
    Serial.print("   ");
    Serial.print("  Temperature=");
    Serial.println(t);
    }
}


◆シリアルモニタで見てみましょう




1: これでいいのだろうか?Are these correct?
2:OneWireのやりかたが分からない。I don't know how to OneWire

0 件のコメント:

コメントを投稿