pull/13/head
alanbjohnston 7 years ago committed by GitHub
parent 7d099f362a
commit 3db862c41b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -152,8 +152,8 @@ struct SensorConfig config_sensor(char *bus, int address, int milliAmps) {
return data;
}
struct SensorConfig sensor[8]; // 7 current sensors in Solar Power PCB plus one in MoPower UPS V2
struct SensorData reading[8]; // 7 current sensors in Solar Power PCB plus one in MoPower UPS V2
struct SensorConfig sensorV;
struct SensorData readingV;
struct SensorConfig tempSensor;
int main(int argc, char *argv[]) {
@ -166,32 +166,59 @@ int main(int argc, char *argv[]) {
printf("\n");
sensor[PLUS_X] = config_sensor("/dev/i2c-1", 0x40, 400);
reading = read_sensor_data(sensor[PLUS_X]);
printf("+X | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
PLUS_X, reading[PLUS_X].voltage, reading[PLUS_X].current, reading[PLUS_X].power);
sensorV = config_sensor("/dev/i2c-1", 0x40, 400);
readingV = read_sensor_data(sensorV);
printf("+X | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
PLUS_X, readingV.voltage, readingV.current, readingV.power);
sensor[PLUS_Y] = config_sensor("/dev/i2c-1", 0x41, 400);
reading = read_sensor_data(sensor[PLUS_Y]);
printf("+Y | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
PLUS_Y , reading[PLUS_Y].voltage, reading[PLUS_Y].current, reading[PLUS_Y].power);
sensorV = config_sensor("/dev/i2c-1", 0x41, 400);
readingV = read_sensor_data(sensorV);
printf("+Y | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
PLUS_Y, readingV.voltage, readingV.current, readingV.power);
sensor[PLUS_Z] = config_sensor("/dev/i2c-1", 0x44, 400);
// read_sensor_data(sensor[]);
// printf("+ | [%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
// , reading[].voltage, reading[].current, reading[].power);
sensor[BAT] = config_sensor("/dev/i2c-1", 0x45, 400);
sensorV = config_sensor("/dev/i2c-1", 0x44, 400);
readingV = read_sensor_data(sensorV);
printf("+Z | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
PLUS_Z, readingV.voltage, readingV.current, readingV.power);
sensor[BUS] = config_sensor("/dev/i2c-1", 0x4a, 2000);
sensor[MINUS_X] = config_sensor("/dev/i2c-0", 0x40, 400);
sensor[MINUS_Y] = config_sensor("/dev/i2c-0", 0x41, 400);
sensor[MINUS_Z] = config_sensor("/dev/i2c-0", 0x44, 400);
sensorV = config_sensor("/dev/i2c-0", 0x40, 400);
readingV = read_sensor_data(sensorV);
printf("-X | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
MINUS_X, readingV.voltage, readingV.current, readingV.power);
sensorV = config_sensor("/dev/i2c-0", 0x41, 400);
readingV = read_sensor_data(sensorV);
printf("-Y | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
MINUS_Y, readingV.voltage, readingV.current, readingV.power);
sensorV = config_sensor("/dev/i2c-0", 0x44, 400);
readingV = read_sensor_data(sensorV);
printf("-Z | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
MINUS_Z, readingV.voltage, readingV.current, readingV.power);
sensorV = config_sensor("/dev/i2c-1", 0x45, 400);
readingV = read_sensor_data(sensorV);
printf("Bat | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
BAT, readingV.voltage, readingV.current, readingV.power);
sensorV = config_sensor("/dev/i2c-1", 0x4a, 2000);
readingV = read_sensor_data(sensorV);
printf("Bus | sensor[%d] % 4.2fV % 6.1fmA % 6.1fmW \n",
BUS, readingV.voltage, readingV.current, readingV.power);
tempSensor = config_sensor("/dev/i2c-3", 0x48, 0);
sensorV = config_sensor("/dev/i2c-1", 0x45, 400);
if (sensorV.fd != OFF) {
int tempValue = wiringPiI2CReadReg16(SensorV.fd, 0);
uint8_t upper = (uint8_t) (tempValue >> 8);
uint8_t lower = (uint8_t) (tempValue & 0xff);
float temp = (float)lower + ((float)upper / 0x100);
printf("T | % 4.1f C \n", temp);
}
printf("\n\n");
return 0;

Loading…
Cancel
Save

Powered by TurnKey Linux.