drivers/sensors/lsm303agr: fix compilation warnings and run through nxstyle; drivers/sensors/lsm6dsl: run through nxstyle

This commit is contained in:
raiden00pl
2020-01-16 16:11:12 +01:00
committed by Alan Carvalho de Assis
parent 177c037aa9
commit e23d58e86d
4 changed files with 164 additions and 173 deletions
+131 -143
View File
@@ -79,9 +79,6 @@ static int lsm303agr_readreg8(FAR struct lsm303agr_dev_s *priv,
uint8_t regaddr, FAR uint8_t * regval);
static int lsm303agr_writereg8(FAR struct lsm303agr_dev_s *priv,
uint8_t regaddr, uint8_t regval);
static int lsm303agr_modifyreg8(FAR struct lsm303agr_dev_s *priv,
uint8_t regaddr,
uint8_t clearbits, uint8_t setbits);
/* Other Helpers */
@@ -95,7 +92,7 @@ static int lsm303agr_sensor_config(FAR struct lsm303agr_dev_s *priv);
static int lsm303agr_sensor_start(FAR struct lsm303agr_dev_s *priv);
static int lsm303agr_sensor_stop(FAR struct lsm303agr_dev_s *priv);
static int lsm303agr_sensor_read(FAR struct lsm303agr_dev_s *priv,
FAR struct lsm303agr_sensor_data_s *sensor_data);
FAR struct lsm303agr_sensor_data_s *sdata);
static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv,
uint32_t mode);
@@ -263,45 +260,6 @@ static int lsm303agr_writereg8(FAR struct lsm303agr_dev_s *priv,
return OK;
}
/****************************************************************************
* Name: lsm303agr_modifyreg8
*
* Description:
* Modify an 8-bit register.
*
****************************************************************************/
static int lsm303agr_modifyreg8(FAR struct lsm303agr_dev_s *priv,
uint8_t regaddr,
uint8_t clearbits, uint8_t setbits)
{
int ret;
uint8_t regval;
/* Sanity check */
DEBUGASSERT(priv != NULL);
ret = lsm303agr_readreg8(priv, regaddr, &regval);
if (ret < 0)
{
snerr("ERROR: lsm303agr_readreg8 failed: %d\n", ret);
return ret;
}
regval &= ~clearbits;
regval |= setbits;
ret = lsm303agr_writereg8(priv, regaddr, regval);
if (ret < 0)
{
snerr("ERROR: lsm303agr_writereg8 failed: %d\n", ret);
return ret;
}
return OK;
}
/****************************************************************************
* Name: lsm303agr_find_minimum
*
@@ -424,8 +382,6 @@ static int lsm303agr_sensor_start(FAR struct lsm303agr_dev_s *priv)
{
/* readreg8 is not necessary to modify. Clearbits can be 0x00 or 0xff */
uint8_t value;
/* Enable the accelerometer */
/* Reset values */
@@ -485,7 +441,8 @@ static int lsm303agr_sensor_stop(FAR struct lsm303agr_dev_s *priv)
*
****************************************************************************/
static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv,
uint32_t mode)
{
int samples = 5;
int i;
@@ -513,13 +470,6 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
int16_t OUTY_ST[samples];
int16_t OUTZ_ST[samples];
int16_t AVR_OUTX_NOST[samples];
int16_t AVR_OUTY_NOST[samples];
int16_t AVR_OUTZ_NOST[samples];
int16_t AVR_OUTX_ST[samples];
int16_t AVR_OUTY_ST[samples];
int16_t AVR_OUTZ_ST[samples];
int16_t avr_x = 0;
int16_t avr_y = 0;
int16_t avr_z = 0;
@@ -541,11 +491,6 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
int16_t max_yst = 0;
int16_t max_zst = 0;
int16_t ltemp;
int16_t htemp;
int16_t tempi;
int16_t temp = 0;
int16_t raw_xst = 0;
int16_t raw_yst = 0;
int16_t raw_zst = 0;
@@ -606,14 +551,26 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
/* Read OUT registers Gyro is starting at 22h and Accelero at 28h */
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_L_A + registershift, &lox);
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_H_A + registershift, &hix);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_L_A + registershift,
(FAR uint8_t *)&lox);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_H_A + registershift,
(FAR uint8_t *)&hix);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_L_A + registershift, &loy);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_H_A + registershift, &hiy);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_L_A + registershift,
(FAR uint8_t *)&loy);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_H_A + registershift,
(FAR uint8_t *)&hiy);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_L_A + registershift, &loz);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_H_A + registershift, &hiz);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_L_A + registershift,
(FAR uint8_t *)&loz);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_H_A + registershift,
(FAR uint8_t *)&hiz);
/* check XLDA 5 times */
@@ -634,16 +591,28 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
* http://ozzmaker.com/accelerometer-to-g/
*/
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_L_A + registershift, &lox);
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_H_A + registershift, &hix);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_L_A + registershift,
(FAR uint8_t *)&lox);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_H_A + registershift,
(FAR uint8_t *)&hix);
raw_x = (int16_t) (((uint16_t) hix << 8U) | (uint16_t) lox);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_L_A + registershift, &loy);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_H_A + registershift, &hiy);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_L_A + registershift,
(FAR uint8_t *)&loy);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_H_A + registershift,
(FAR uint8_t *)&hiy);
raw_y = (int16_t) (((uint16_t) hiy << 8U) | (uint16_t) loy);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_L_A + registershift, &loz);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_H_A + registershift, &hiz);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_L_A + registershift,
(FAR uint8_t *)&loz);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_H_A + registershift,
(FAR uint8_t *)&hiz);
raw_z = (int16_t) (((uint16_t) hiz << 8U) | (uint16_t) loz);
/* selftest only uses raw values */
@@ -685,14 +654,26 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
/* Now do all the ST values */
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_L_A + registershift, &loxst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_H_A + registershift, &hixst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_L_A + registershift,
(FAR uint8_t *)&loxst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_H_A + registershift,
(FAR uint8_t *)&hixst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_L_A + registershift, &loyst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_H_A + registershift, &hiyst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_L_A + registershift,
(FAR uint8_t *)&loyst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_H_A + registershift,
(FAR uint8_t *)&hiyst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_L_A + registershift, &lozst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_H_A + registershift, &hizst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_L_A + registershift,
(FAR uint8_t *)&lozst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_H_A + registershift,
(FAR uint8_t *)&hizst);
for (i2 = 0; i2 < samples; i2++)
{
@@ -709,16 +690,28 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
nxsig_usleep(100000); /* 100ms */
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_L_A + registershift, &loxst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_X_H_A + registershift, &hixst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_L_A + registershift,
(FAR uint8_t *)&loxst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_X_H_A + registershift,
(FAR uint8_t *)&hixst);
raw_xst = (int16_t) (((uint16_t) hixst << 8U) | (uint16_t) loxst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_L_A + registershift, &loyst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Y_H_A + registershift, &hiyst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_L_A + registershift,
(FAR uint8_t *)&loyst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Y_H_A + registershift,
(FAR uint8_t *)&hiyst);
raw_yst = (int16_t) (((uint16_t) hiyst << 8U) | (uint16_t) loyst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_L_A + registershift, &lozst);
lsm303agr_readreg8(priv, LSM303AGR_OUT_Z_H_A + registershift, &hizst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_L_A + registershift,
(FAR uint8_t *)&lozst);
lsm303agr_readreg8(priv,
LSM303AGR_OUT_Z_H_A + registershift,
(FAR uint8_t *)&hizst);
raw_zst = (int16_t) (((uint16_t) hizst << 8U) | (uint16_t) lozst);
/* Selftest only uses raw values */
@@ -876,42 +869,18 @@ static int lsm303agr_selftest(FAR struct lsm303agr_dev_s *priv, uint32_t mode)
****************************************************************************/
static int lsm303agr_sensor_read(FAR struct lsm303agr_dev_s *priv,
FAR struct lsm303agr_sensor_data_s *sensor_data)
FAR struct lsm303agr_sensor_data_s *sdata)
{
int16_t lo = 0;
int16_t lox = 0;
int16_t loxg = 0;
int16_t hi = 0;
int16_t hix = 0;
int16_t hixg = 0;
int16_t loy = 0;
int16_t loyg = 0;
int16_t hiy = 0;
int16_t hiyg = 0;
int16_t loz = 0;
int16_t lozg = 0;
int16_t hiz = 0;
int16_t hizg = 0;
int16_t templ = 0;
int16_t temph = 0;
uint8_t status1 = 0;
uint8_t status2 = 0;
uint8_t status3 = 0;
uint8_t status4 = 0;
uint8_t value = 0;
uint8_t tstamp0 = 0;
uint8_t tstamp1 = 0;
uint8_t tstamp2 = 0;
uint8_t tstamp3 = 0;
uint32_t ts = 0;
int16_t x_val = 0;
int16_t y_val = 0;
int16_t z_val = 0;
int16_t tempi = 0;
int16_t temp_val = 0;
@@ -921,19 +890,19 @@ static int lsm303agr_sensor_read(FAR struct lsm303agr_dev_s *priv,
/* Magneto */
lsm303agr_readreg8(priv, LSM303AGR_OUTX_L_REG_M, &loxg);
lsm303agr_readreg8(priv, LSM303AGR_OUTX_H_REG_M, &hixg);
lsm303agr_readreg8(priv, LSM303AGR_OUTX_L_REG_M, (FAR uint8_t *)&loxg);
lsm303agr_readreg8(priv, LSM303AGR_OUTX_H_REG_M, (FAR uint8_t *)&hixg);
lsm303agr_readreg8(priv, LSM303AGR_OUTY_L_REG_M, &loyg);
lsm303agr_readreg8(priv, LSM303AGR_OUTY_H_REG_M, &hiyg);
lsm303agr_readreg8(priv, LSM303AGR_OUTY_L_REG_M, (FAR uint8_t *)&loyg);
lsm303agr_readreg8(priv, LSM303AGR_OUTY_H_REG_M, (FAR uint8_t *)&hiyg);
lsm303agr_readreg8(priv, LSM303AGR_OUTZ_L_REG_M, &lozg);
lsm303agr_readreg8(priv, LSM303AGR_OUTZ_H_REG_M, &hizg);
lsm303agr_readreg8(priv, LSM303AGR_OUTZ_L_REG_M, (FAR uint8_t *)&lozg);
lsm303agr_readreg8(priv, LSM303AGR_OUTZ_H_REG_M, (FAR uint8_t *)&hizg);
/* Temperature */
lsm303agr_readreg8(priv, LSM303AGR_OUT_TEMP_L_A, &templ);
lsm303agr_readreg8(priv, LSM303AGR_OUT_TEMP_H_A, &temph);
lsm303agr_readreg8(priv, LSM303AGR_OUT_TEMP_L_A, (FAR uint8_t *)&templ);
lsm303agr_readreg8(priv, LSM303AGR_OUT_TEMP_H_A, (FAR uint8_t *)&temph);
tempi = (int16_t) ((((int16_t) temph << 8) | (int16_t) templ));
@@ -941,19 +910,22 @@ static int lsm303agr_sensor_read(FAR struct lsm303agr_dev_s *priv,
sninfo("Data 16-bit TEMP--->: %d Celsius\n", temp_val);
sensor_data->temperature = temp_val;
sdata->temperature = temp_val;
x_valg = (int16_t) (((hixg) << 8) | loxg);
y_valg = (int16_t) (((hiyg) << 8) | loyg);
z_valg = (int16_t) (((hizg) << 8) | lozg);
sninfo("Data 16-bit M_X--->: %d mguass\n", (short)(x_valg * g_magnetofactor));
sninfo("Data 16-bit M_Y--->: %d mguass\n", (short)(y_valg * g_magnetofactor));
sninfo("Data 16-bit M_Z--->: %d mguass\n", (short)(z_valg * g_magnetofactor));
sninfo("Data 16-bit M_X--->: %d mguass\n",
(short)(x_valg * g_magnetofactor));
sninfo("Data 16-bit M_Y--->: %d mguass\n",
(short)(y_valg * g_magnetofactor));
sninfo("Data 16-bit M_Z--->: %d mguass\n",
(short)(z_valg * g_magnetofactor));
sensor_data->m_x_data = x_valg;
sensor_data->m_y_data = y_valg;
sensor_data->m_z_data = z_valg;
sdata->m_x_data = x_valg;
sdata->m_y_data = y_valg;
sdata->m_z_data = z_valg;
return OK;
}
@@ -1126,7 +1098,8 @@ static ssize_t lsm303agr_write(FAR struct file *filep,
*
****************************************************************************/
static int lsm303agr_ioctl(FAR struct file *filep, int cmd, unsigned long arg)
static int lsm303agr_ioctl(FAR struct file *filep, int cmd,
unsigned long arg)
{
FAR struct inode *inode;
FAR struct lsm303agr_dev_s *priv;
@@ -1148,30 +1121,43 @@ static int lsm303agr_ioctl(FAR struct file *filep, int cmd, unsigned long arg)
{
/* Start converting. Arg: None. */
case SNIOC_START:
ret = priv->ops->start(priv);
break;
case SNIOC_START:
{
ret = priv->ops->start(priv);
break;
}
/* Stop converting. Arg: None. */
case SNIOC_STOP:
ret = priv->ops->stop(priv);
break;
case SNIOC_STOP:
{
ret = priv->ops->stop(priv);
break;
}
case SNIOC_LSM303AGRSENSORREAD:
ret = priv->ops->sensor_read(priv, (FAR struct lsm303agr_sensor_data_s *) arg);
break;
case SNIOC_LSM303AGRSENSORREAD:
{
FAR struct lsm303agr_sensor_data_s *d =
(FAR struct lsm303agr_sensor_data_s *)arg;
case SNIOC_START_SELFTEST:
ret = priv->ops->selftest(priv, (uint32_t) arg);
break;
ret = priv->ops->sensor_read(priv, d);
break;
}
case SNIOC_START_SELFTEST:
{
ret = priv->ops->selftest(priv, (uint32_t)arg);
break;
}
/* Unrecognized commands */
default:
snerr("ERROR: Unrecognized cmd: %d arg: %lu\n", cmd, arg);
ret = -ENOTTY;
break;
default:
{
snerr("ERROR: Unrecognized cmd: %d arg: %lu\n", cmd, arg);
ret = -ENOTTY;
break;
}
}
return ret;
@@ -1184,8 +1170,8 @@ static int lsm303agr_ioctl(FAR struct file *filep, int cmd, unsigned long arg)
* Register the LSM303AGR accelerometer, gyroscope device as 'devpath'.
*
* Input Parameters:
* devpath - The full path to the driver to register, e.g., "/dev/lsm303agr0",
* "/dev/gyro0" or "/dev/mag0".
* devpath - The full path to the driver to register, e.g.
* "/dev/lsm303agr0", "/dev/gyro0" or "/dev/mag0".
* i2c - An I2C driver instance.
* addr - The I2C address of the LSM303AGR accelerometer, gyroscope or
* magnetometer.
@@ -1263,7 +1249,8 @@ static int lsm303agr_register(FAR const char *devpath,
* Register the LSM303AGR accelerometer character device as 'devpath'.
*
* Input Parameters:
* devpath - The full path to the driver to register, e.g., "/dev/lsm303agr0".
* devpath - The full path to the driver to register,
* e.g. "/dev/lsm303agr0".
* i2c - An I2C driver instance.
* addr - The I2C address of the LSM303AGR accelerometer.
*
@@ -1277,7 +1264,8 @@ int lsm303agr_sensor_register(FAR const char *devpath,
{
struct lsm303agr_sensor_data_s sensor_data;
DEBUGASSERT(addr == LSM303AGRACCELERO_ADDR || addr == LSM303AGRMAGNETO_ADDR);
DEBUGASSERT(addr == LSM303AGRACCELERO_ADDR ||
addr == LSM303AGRMAGNETO_ADDR);
sninfo("Trying to register accel\n");
+22 -17
View File
@@ -95,7 +95,7 @@ static int lsm6dsl_sensor_config(FAR struct lsm6dsl_dev_s *priv);
static int lsm6dsl_sensor_start(FAR struct lsm6dsl_dev_s *priv);
static int lsm6dsl_sensor_stop(FAR struct lsm6dsl_dev_s *priv);
static int lsm6dsl_sensor_read(FAR struct lsm6dsl_dev_s *priv,
FAR struct lsm6dsl_sensor_data_s *sensor_data);
FAR struct lsm6dsl_sensor_data_s *sdata);
static int lsm6dsl_selftest(FAR struct lsm6dsl_dev_s *priv, uint32_t mode);
/* Character Driver Methods */
@@ -929,7 +929,7 @@ static int lsm6dsl_selftest(FAR struct lsm6dsl_dev_s *priv, uint32_t mode)
****************************************************************************/
static int lsm6dsl_sensor_read(FAR struct lsm6dsl_dev_s *priv,
FAR struct lsm6dsl_sensor_data_s *sensor_data)
FAR struct lsm6dsl_sensor_data_s *sdata)
{
int16_t lox = 0;
int16_t loxg = 0;
@@ -1006,16 +1006,20 @@ static int lsm6dsl_sensor_read(FAR struct lsm6dsl_dev_s *priv,
temp_val = (tempi / 256) + 25;
sninfo("Data 16-bit XL_X--->: %d mg\n", (short)(xf_val * g_accelerofactor));
sninfo("Data 16-bit XL_Y--->: %d mg\n", (short)(yf_val * g_accelerofactor));
sninfo("Data 16-bit XL_Z--->: %d mg\n", (short)(zf_val * g_accelerofactor));
sninfo("Data 16-bit TEMP--->: %d Celsius\n", temp_val);
sninfo("Data 16-bit XL_X--->: %d mg\n",
(short)(xf_val * g_accelerofactor));
sninfo("Data 16-bit XL_Y--->: %d mg\n",
(short)(yf_val * g_accelerofactor));
sninfo("Data 16-bit XL_Z--->: %d mg\n",
(short)(zf_val * g_accelerofactor));
sninfo("Data 16-bit TEMP--->: %d Celsius\n",
temp_val);
sensor_data->x_data = xf_val * g_accelerofactor;
sensor_data->y_data = yf_val * g_accelerofactor;
sensor_data->z_data = zf_val * g_accelerofactor;
sensor_data->temperature = temp_val;
sensor_data->timestamp = ts;
sdata->x_data = xf_val * g_accelerofactor;
sdata->y_data = yf_val * g_accelerofactor;
sdata->z_data = zf_val * g_accelerofactor;
sdata->temperature = temp_val;
sdata->timestamp = ts;
x_valg = (int16_t) (((hixg) << 8) | loxg);
y_valg = (int16_t) (((hiyg) << 8) | loyg);
@@ -1025,9 +1029,9 @@ static int lsm6dsl_sensor_read(FAR struct lsm6dsl_dev_s *priv,
sninfo("Data 16-bit G_Y--->: %d mdps\n", (short)(y_valg * g_gyrofactor));
sninfo("Data 16-bit G_Z--->: %d mdps\n", (short)(z_valg * g_gyrofactor));
sensor_data->g_x_data = x_valg * g_gyrofactor;
sensor_data->g_y_data = y_valg * g_gyrofactor;
sensor_data->g_z_data = z_valg * g_gyrofactor;
sdata->g_x_data = x_valg * g_gyrofactor;
sdata->g_y_data = y_valg * g_gyrofactor;
sdata->g_z_data = z_valg * g_gyrofactor;
return OK;
}
@@ -1261,8 +1265,8 @@ static int lsm6dsl_ioctl(FAR struct file *filep, int cmd, unsigned long arg)
* Register the LSM6DSL accelerometer, gyroscope device as 'devpath'.
*
* Input Parameters:
* devpath - The full path to the driver to register, e.g., "/dev/lsm6dsl0",
* "/dev/gyro0" or "/dev/mag0".
* devpath - The full path to the driver to register, e.g.
* "/dev/lsm6dsl0", "/dev/gyro0" or "/dev/mag0".
* i2c - An I2C driver instance.
* addr - The I2C address of the LSM6DSL accelerometer, gyroscope or
* magnetometer.
@@ -1340,7 +1344,8 @@ static int lsm6dsl_register(FAR const char *devpath,
* Register the LSM6DSL accelerometer character device as 'devpath'.
*
* Input Parameters:
* devpath - The full path to the driver to register, e.g., "/dev/lsm6dsl0".
* devpath - The full path to the driver to register,
* e.g. "/dev/lsm6dsl0".
* i2c - An I2C driver instance.
* addr - The I2C address of the LSM6DSL accelerometer.
*
+6 -6
View File
@@ -55,11 +55,11 @@
/* Accelerometer addresses */
#define LSM303AGRACCELERO_ADDR (0x32>>1)
#define LSM303AGRACCELERO_ADDR (0x32 >> 1)
/* Magnetometer addresses */
#define LSM303AGRMAGNETO_ADDR (0x3C>>1) /* 7-bit */
#define LSM303AGRMAGNETO_ADDR (0x3C >> 1) /* 7-bit */
/* Register Addresses *******************************************************/
@@ -93,7 +93,7 @@
#define LSM303AGR_OUT_Z_L_A 0x2C
#define LSM303AGR_OUT_Z_H_A 0x2D
#define LSM303AGR_OUTX_L_A_SHIFT 0
#define LSM303AGR_OUTX_L_A_SHIFT 0
#define LSM303AGR_OUTX_L_A_MASK (255 << LSM303AGR_OUTX_L_A_SHIFT)
#define LSM303AGR_FIFO_CTRL_REG_A 0x2E
@@ -142,7 +142,7 @@
#define LSM303AGR_OUTZ_L_REG_M 0x6C
#define LSM303AGR_OUTZ_H_REG_M 0x6D
#define LSM303AGR_OUTX_L_M_SHIFT 0
#define LSM303AGR_OUTX_L_M_SHIFT 0
#define LSM303AGR_OUTX_L_M_MASK (255 << LSM303AGR_OUTX_L_M_SHIFT)
/****************************************************************************
@@ -166,7 +166,7 @@ struct lsm303agr_sensor_data_s
};
/****************************************************************************
* Private Types
* Public Types
****************************************************************************/
struct lsm303agr_dev_s;
@@ -218,7 +218,7 @@ extern "C"
****************************************************************************/
int lsm303agr_sensor_register(FAR const char *devpath,
FAR struct i2c_master_s *i2c,uint8_t addr);
FAR struct i2c_master_s *i2c, uint8_t addr);
#ifdef __cplusplus
}
+5 -7
View File
@@ -53,8 +53,8 @@
/* Accelerometer addresses */
#define LSM6DSLACCEL_ADDR0 (0xD4>>1) /*0x6a low */
#define LSM6DSLACCEL_ADDR1 (0xD6>>1) /* 0x6B .. high */
#define LSM6DSLACCEL_ADDR0 (0xD4 >> 1) /* 0x6a low */
#define LSM6DSLACCEL_ADDR1 (0xD6 >> 1) /* 0x6B .. high */
/* Gyroscope addresses */
@@ -138,12 +138,10 @@
#define LSM6DSL_SENSORHUB16_REG 0x50 /* Sixteenth byte associated to external sensors. */
#define LSM6DSL_SENSORHUB17_REG 0x51 /* Seventeenth byte associated to external sensors. */
#define LSM6DSL_SENSORHUB18_REG 0x52 /* Eighteenth byte associated to external sensors. */
#define LSM6DSL_FUNC_SRC1 0x53 /* Significant motion, tilt, step detector, hard/soft-iron and sensor hub interrupt source register
(r). */
#define LSM6DSL_FUNC_SRC1 0x53 /* Significant motion, tilt, step detector, hard/soft-iron and sensor hub interrupt source register (r). */
#define LSM6DSL_FUNC_SRC2 0x54 /* Wrist tilt interrupt source register (r). */
#define LSM6DSL_WRIST_TILT_IA 0x55 /* Wrist tilt interrupt source register (r). */
#define LSM6DSL_TAP_CFG 0x58 /* Enables interrupt and inactivity functions, configuration of filtering and tap recognition
functions (r/w). */
#define LSM6DSL_TAP_CFG 0x58 /* Enables interrupt and inactivity functions, configuration of filtering and tap recognition functions (r/w). */
#define LSM6DSL_TAP_THS_6D 0x59 /* Portrait/landscape position and tap function threshold register (r/w). */
#define LSM6DSL_INT_DUR2 0x5A /* Tap recognition function setting register (r/w). */
#define LSM6DSL_WAKE_UP_THS 0x5B /* Single and double-tap function threshold register (r/w). */
@@ -834,7 +832,7 @@ struct lsm6dsl_sensor_data_s
};
/****************************************************************************************************
* Private Types
* Public Types
****************************************************************************************************/
struct lsm6dsl_dev_s;