Arduino

Arduino Ether R3

#define THINGER_SERVER "10.10.10.17"

#include <SPI.h>
#include <Ethernet.h>
#include <ThingerEthernet.h>

#define USERNAME "hoge"
#define DEVICE_ID "arduino"
#define DEVICE_CREDENTIAL "hogehoge"

ThingerEthernet thing(USERNAME, DEVICE_ID, DEVICE_CREDENTIAL);

byte mac[] = {0x90,0xA2,0xDA,0x0F,0x8B,0xA2};

void setup() {

  Serial.begin(9600);
  if (Ethernet.begin(mac) == 0) {
    Serial.println("Failed to configure Ethernet using DHCP");
    // no point in carrying on, so do nothing forevermore:
    for(;;)
      ; 
  }
  Serial.print("My IP address: ");
  for (byte thisByte = 0; thisByte < 4; thisByte++) {
    Serial.print(Ethernet.localIP()[thisByte], DEC);
    Serial.print("."); 
  }
  Serial.println();

  pinMode(13, OUTPUT);

  thing["led"] << digitalPin(13);
  thing["millis"] >> outputValue(millis());
}

void loop() {
  thing.handle();
}

BME280

  • センサモジュール利用時の注意点
    AE-BME280
    接続は必ず3.3V系
    J1からJ3まで全てジャンプ
    J3がI2C利用設定
    SD0の短絡の仕方でI2Cアドレスが変更。VCC(0x77)、GND(0x76)
  • Sparkfun280Libraryを使うv204
    • ライブラリインクルードで対応
#include <Wire.h>
#include "SparkFunBME280.h"
BME280 mySensor;

void setup()
{
 Serial.begin(9600);
 Serial.println("Reading basic values from BME280");

 Wire.begin();

 if (mySensor.beginI2C() == false) //Begin communication over I2C
 {
   Serial.println("The sensor did not respond. Please check wiring.");
   while(1); //Freeze
 }
}

void loop()
{
 Serial.print("Humidity: ");
 Serial.print(mySensor.readFloatHumidity(), 0);

 Serial.print(" Pressure: ");
 Serial.print(mySensor.readFloatPressure(), 0);

 Serial.print(" Alt: ");
 //Serial.print(mySensor.readFloatAltitudeMeters(), 1);
 Serial.print(mySensor.readFloatAltitudeFeet(), 1);

 Serial.print(" Temp: ");
 //Serial.print(mySensor.readTempC(), 2);
 Serial.print(mySensor.readTempF(), 2);

 Serial.println();

 delay(50);
}

BME280 by softwire

SoftwreWire by Testato, Koepel v1.5.1を導入
SparkFunBME280.hの中のコメントを削除し有効化する必要あり
SD0をVCCかGNDのいずれかでショートすることでI2Cアドレスが変わる
#include <SoftwareWire.h> //SoftwareWire by Testato. Installed from library manager.

//We use pins 6 and 7 in this example but others can be used
SoftwareWire myWire(7, 8); //SDA, SCL

#include "SparkFunBME280.h"
BME280 mySensor;

void setup()
{
 Serial.begin(9600);
 Serial.println("Example showing alternate I2C addresses");

 myWire.begin();
 if(mySensor.beginI2C(myWire) == false) Serial.println("Sensor A connect failed");
}

void loop()
{
 Serial.print("Humidity: ");
 Serial.print(mySensor.readFloatHumidity(), 0);

 Serial.print(" Pressure: ");
 Serial.print(mySensor.readFloatPressure(), 0);

 Serial.print(" Temp: ");
 //Serial.print(mySensor.readTempC(), 2);
 Serial.print(mySensor.readTempF(), 2);

 Serial.println();

 delay(50);
}

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-03-08 (金) 15:53:21 (833d)