working xyz accel
Some checks failed
Some checks failed
This commit is contained in:
@ -126,11 +126,13 @@ int main(void)
|
|||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
struct sensor_value voltage, current, pressure, temperature, accel_z, accel_z_ref, humidity;
|
struct sensor_value voltage, current, pressure, temperature, accel_x, accel_y, accel_z, accel_z_ref, humidity;
|
||||||
char str_v[15] = {0};
|
char str_v[15] = {0};
|
||||||
char str_i[15] = {0};
|
char str_i[15] = {0};
|
||||||
char str_p[16] = {0};
|
char str_p[16] = {0};
|
||||||
char str_t[16] = {0};
|
char str_t[16] = {0};
|
||||||
|
char str_ax[16] = {0};
|
||||||
|
char str_ay[16] = {0};
|
||||||
char str_az[16] = {0};
|
char str_az[16] = {0};
|
||||||
char str_az_ref[16] = {0};
|
char str_az_ref[16] = {0};
|
||||||
char str_h[16] = {0};
|
char str_h[16] = {0};
|
||||||
@ -185,6 +187,18 @@ int main(void)
|
|||||||
LOG_ERR("Could not get temperature (%d)", ret);
|
LOG_ERR("Could not get temperature (%d)", ret);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
ret = sensor_channel_get(bmx, SENSOR_CHAN_ACCEL_X, &accel_x);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
LOG_ERR("Could not get acceleration (%d)", ret);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
ret = sensor_channel_get(bmx, SENSOR_CHAN_ACCEL_Y, &accel_y);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
LOG_ERR("Could not get acceleration (%d)", ret);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
ret = sensor_channel_get(bmx, SENSOR_CHAN_ACCEL_Z, &accel_z);
|
ret = sensor_channel_get(bmx, SENSOR_CHAN_ACCEL_Z, &accel_z);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
{
|
{
|
||||||
@ -222,28 +236,30 @@ int main(void)
|
|||||||
sprintf(str_i, "I :%7.5f", current.val1 + current.val2 * 1e-6);
|
sprintf(str_i, "I :%7.5f", current.val1 + current.val2 * 1e-6);
|
||||||
sprintf(str_p, "P :%7.4f", pressure.val1 + pressure.val2 * 1e-6);
|
sprintf(str_p, "P :%7.4f", pressure.val1 + pressure.val2 * 1e-6);
|
||||||
sprintf(str_t, "T :%7.4f", temperature.val1 + temperature.val2 * 1e-6);
|
sprintf(str_t, "T :%7.4f", temperature.val1 + temperature.val2 * 1e-6);
|
||||||
sprintf(str_az, "Z :%7.4f", accel_z.val1 + accel_z.val2 * 1e-6);
|
sprintf(str_ax, "X :%+7.3f", accel_x.val1 + accel_x.val2 * 1e-6);
|
||||||
sprintf(str_az_ref, "Zr:%7.4f", accel_z_ref.val1 + accel_z_ref.val2 * 1e-6);
|
sprintf(str_ay, "Y :%+7.3f", accel_y.val1 + accel_y.val2 * 1e-6);
|
||||||
|
sprintf(str_az, "Z :%+7.3f", accel_z.val1 + accel_z.val2 * 1e-6);
|
||||||
|
sprintf(str_az_ref, "Zr:%+7.3f", accel_z_ref.val1 + accel_z_ref.val2 * 1e-6);
|
||||||
sprintf(str_h, "H :%7.5f", humidity.val1 + humidity.val2 * 1e-6);
|
sprintf(str_h, "H :%7.5f", humidity.val1 + humidity.val2 * 1e-6);
|
||||||
|
|
||||||
// printf("%s\t%s\t%s\t%s\n", str_v, str_i, str_p, str_t);
|
// printf("%s\t%s\t%s\t%s\n", str_v, str_i, str_p, str_t);
|
||||||
|
|
||||||
cfb_framebuffer_clear(dev, false);
|
cfb_framebuffer_clear(dev, false);
|
||||||
if (cfb_print(dev, str_az, 0, 0))
|
if (cfb_print(dev, str_ax, 0, 0))
|
||||||
{
|
{
|
||||||
printf("Failed to print a string\n");
|
printf("Failed to print a string\n");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (cfb_print(dev, str_az_ref, 0, 16))
|
if (cfb_print(dev, str_ay, 0, 16))
|
||||||
|
{
|
||||||
|
printf("Failed to print a string\n");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (cfb_print(dev, str_az, 0, 16 * 2))
|
||||||
{
|
{
|
||||||
printf("Failed to print a string\n");
|
printf("Failed to print a string\n");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// if (cfb_print(dev, str_az, 0, 16 * 2))
|
|
||||||
// {
|
|
||||||
// printf("Failed to print a string\n");
|
|
||||||
// continue;
|
|
||||||
// }
|
|
||||||
// if (cfb_print(dev, str_az_ref, 0, 16 * 3))
|
// if (cfb_print(dev, str_az_ref, 0, 16 * 3))
|
||||||
// {
|
// {
|
||||||
// printf("Failed to print a string\n");
|
// printf("Failed to print a string\n");
|
||||||
|
@ -154,9 +154,21 @@ static int bmx055_channel_get(const struct device *dev,
|
|||||||
val->val2 = 0; // TODO: don't throw out LSB
|
val->val2 = 0; // TODO: don't throw out LSB
|
||||||
break;
|
break;
|
||||||
case SENSOR_CHAN_ACCEL_X:
|
case SENSOR_CHAN_ACCEL_X:
|
||||||
|
{
|
||||||
|
float accel = data->accel_x * 0.00098 * 9.80665; // to gees, to m/s^2
|
||||||
|
val->val1 = accel;
|
||||||
|
val->val2 = (accel - val->val1) * 1000000;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case SENSOR_CHAN_ACCEL_Y:
|
case SENSOR_CHAN_ACCEL_Y:
|
||||||
return -ENOTSUP;
|
{
|
||||||
|
float accel = data->accel_y * 0.00098 * 9.80665; // to gees, to m/s^2
|
||||||
|
val->val1 = accel;
|
||||||
|
val->val2 = (accel - val->val1) * 1000000;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case SENSOR_CHAN_ACCEL_Z:
|
case SENSOR_CHAN_ACCEL_Z:
|
||||||
|
{
|
||||||
// For now assume 2g since that's the default value
|
// For now assume 2g since that's the default value
|
||||||
// 2g 0.98mg/LSB
|
// 2g 0.98mg/LSB
|
||||||
// 4g 1.95mg/LSB
|
// 4g 1.95mg/LSB
|
||||||
@ -167,6 +179,7 @@ static int bmx055_channel_get(const struct device *dev,
|
|||||||
val->val1 = accel;
|
val->val1 = accel;
|
||||||
val->val2 = (accel - val->val1) * 1000000;
|
val->val2 = (accel - val->val1) * 1000000;
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case SENSOR_CHAN_GYRO_X:
|
case SENSOR_CHAN_GYRO_X:
|
||||||
case SENSOR_CHAN_GYRO_Y:
|
case SENSOR_CHAN_GYRO_Y:
|
||||||
case SENSOR_CHAN_GYRO_Z:
|
case SENSOR_CHAN_GYRO_Z:
|
||||||
|
Reference in New Issue
Block a user