#include <M5AtomS3.h>
#include <Wire.h>
#include <ClosedCube_TCA9548A.h>
#include <M5_DLight.h>
#include <Wire.h>
#include <ClosedCube_TCA9548A.h>
#include <M5_DLight.h>
//Pa.HUBのアドレス:0x70~0x77
#define PaHub_I2C_ADDRESS 0x70
const int sensor_num = 3;
M5_DLight sensor;
uint16_t lux[sensor_num];
ClosedCube::Driver::I2CDevice i2c;
ClosedCube::Wired::TCA9548A tca9548a;
void setup() {
AtomS3.begin(false);
USBSerial.begin(9600);
Wire.begin();
Wire.setPins(2,1); // SDA=2, SCL=1
i2c = ClosedCube::Driver::I2CDevice(&Wire);
tca9548a = ClosedCube::Wired::TCA9548A(i2c);
#define PaHub_I2C_ADDRESS 0x70
const int sensor_num = 3;
M5_DLight sensor;
uint16_t lux[sensor_num];
ClosedCube::Driver::I2CDevice i2c;
ClosedCube::Wired::TCA9548A tca9548a;
void setup() {
AtomS3.begin(false);
USBSerial.begin(9600);
Wire.begin();
Wire.setPins(2,1); // SDA=2, SCL=1
i2c = ClosedCube::Driver::I2CDevice(&Wire);
tca9548a = ClosedCube::Wired::TCA9548A(i2c);
//PaHubのアドレスを指定0x70~0x77
tca9548a.address(PaHub_I2C_ADDRESS);
tca9548a.address(PaHub_I2C_ADDRESS);
//各チャンネルのセンサの初期化
for(int i = 0; i < sensor_num; i++){
tca9548a.selectChannel(i);
sensor.begin(&Wire); // SDA=2, SCL=1
sensor.setMode(CONTINUOUSLY_H_RESOLUTION_MODE);
}
}
for(int i = 0; i < sensor_num; i++){
tca9548a.selectChannel(i);
sensor.begin(&Wire); // SDA=2, SCL=1
sensor.setMode(CONTINUOUSLY_H_RESOLUTION_MODE);
}
}
char info[40];
CRGB dispColor( uint8_t r, uint8_t g, uint8_t b) {
return ( CRGB)( ( r << 16 ) | ( g << 8 ) | b);
}
void loop() {
for ( int i = 0; i < sensor_num ; i++ ) {
tca9548a.selectChannel(i);
lux[i] = sensor.getLUX();
}
sprintf(info, "lux[0]: %d, lux[1]: %d, lux[2]: %d", lux[0],lux[1],lux[2]);
USBSerial.println(info);
delay(500);
}
CRGB dispColor( uint8_t r, uint8_t g, uint8_t b) {
return ( CRGB)( ( r << 16 ) | ( g << 8 ) | b);
}
void loop() {
for ( int i = 0; i < sensor_num ; i++ ) {
tca9548a.selectChannel(i);
lux[i] = sensor.getLUX();
}
sprintf(info, "lux[0]: %d, lux[1]: %d, lux[2]: %d", lux[0],lux[1],lux[2]);
USBSerial.println(info);
delay(500);
}