Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Wire.h>
- #include <SHTSensor.h>
- SHTSensor sht0(SHTSensor::SHT3X);
- SHTSensor sht1(SHTSensor::SHT3X);
- SHTSensor sht2(SHTSensor::SHT3X);
- SHTSensor sht3(SHTSensor::SHT3X);//setting up instances of the sensor
- SHTSensor sht4(SHTSensor::SHT3X);
- SHTSensor sht5(SHTSensor::SHT3X);
- SHTSensor sht6(SHTSensor::SHT3X);
- SHTSensor sht7(SHTSensor::SHT3X);
- String inputs;
- int inputs_INT = 7;
- #define TCAADDR 0x77
- void tcaselect(uint8_t i) {
- if (i > 7) return;
- Wire.beginTransmission(TCAADDR);
- Wire.write(1 << i);
- Wire.endTransmission();
- }
- void setup() {
- Wire.begin();
- Serial.begin(115200);
- delay(1000); //to make the serial become stable
- //initialize sensors
- tcaselect(0);
- sht0.init();
- delay(25);
- tcaselect(1);
- sht1.init();
- delay(25);
- tcaselect(2);
- sht2.init();
- delay(25);
- tcaselect(3);
- sht3.init();
- delay(25);
- tcaselect(4);
- sht4.init();
- delay(25);
- tcaselect(5);
- sht5.init();
- delay(25);
- tcaselect(6);
- sht6.init();
- delay(25);
- tcaselect(7);
- sht7.init();
- delay(25);
- }
- void loop() {
- while(Serial.available()) {
- delay(10); //Only to make it stable, I have no idea why
- char c = Serial.read(); //serial read
- if (c == '#'){
- break; //stop the loop
- }
- inputs += c; //make the serial a character
- }
- for (inputs_INT = 0; inputs_INT < 8; inputs_INT++) {
- //if (inputs.length() > 0) {
- //inputs_INT = inputs.toInt(); //Prepare string for case select use
- Serial.print("Sensor = ");Serial.print(inputs_INT); Serial.print("\t");
- //Serial.println(inputs);
- switch (inputs_INT) {
- case 0:
- tcaselect(0); //select I2C sensor and print values
- delay(25);
- sht0.readSample();
- Serial.print("RH=");
- Serial.print(sht0.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht0.getTemperature(),2);
- break;
- case 1:
- tcaselect(1);
- delay(25);
- sht1.readSample();
- Serial.print("RH=");
- Serial.print(sht1.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht1.getTemperature(),2);
- break;
- case 2:
- tcaselect(2);
- delay(25);
- sht2.readSample();
- Serial.print("RH=");
- Serial.print(sht2.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht2.getTemperature(),2);
- break;
- case 3:
- tcaselect(3);
- delay(25);
- sht3.readSample();
- Serial.print("RH=");
- Serial.print(sht3.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht3.getTemperature(),2);
- break;
- case 4:
- tcaselect(4);
- delay(25);
- sht4.readSample();
- Serial.print("RH=");
- Serial.print(sht4.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht4.getTemperature(),2);
- break;
- case 5:
- tcaselect(5);
- delay(25);
- sht5.readSample();
- Serial.print("RH=");
- Serial.print(sht5.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht5.getTemperature(),2);
- break;
- case 6:
- tcaselect(6);
- delay(25);
- sht6.readSample();
- Serial.print("RH=");
- Serial.print(sht6.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht6.getTemperature(),2);
- break;
- case 7:
- tcaselect(7);
- delay(25);
- sht7.readSample();
- Serial.print("RH=");
- Serial.print(sht7.getHumidity(),2);
- Serial.print(" T=");
- Serial.println(sht7.getTemperature(),2);
- break;
- }
- delay(475);
- }
- inputs_INT = 0;
- //}
- inputs = "";
- //delay(300);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement