feat add altitude_bmp180 for sensor framework

This commit is contained in:
Liu_Weichao
2022-03-08 16:26:30 +08:00
parent 6be4d4b5ca
commit 68f92a45ed
13 changed files with 481 additions and 11 deletions
+29 -11
View File
@@ -34,17 +34,26 @@ static uint32 I2cDeviceWrite(void *dev, struct BusBlockWriteParam *write_param)
NULL_PARAM_CHECK(dev);
NULL_PARAM_CHECK(write_param);
uint32 ret;
struct I2cHardwareDevice *i2c_dev = (struct I2cHardwareDevice *)dev;
struct I2cDataStandard i2c_msg;
i2c_msg.addr = i2c_dev->i2c_dev_addr;
i2c_msg.flags = I2C_WR;
i2c_msg.buf = write_param->buffer;
i2c_msg.len = write_param->size;
i2c_msg.buf = (uint8 *)x_malloc(write_param->size);
memcpy(i2c_msg.buf, write_param->buffer, write_param->size);
i2c_msg.len = write_param->size;
i2c_msg.retries = 10;
i2c_msg.next = NONE;
return i2c_dev->i2c_dev_done->dev_write(i2c_dev, &i2c_msg);
ret = i2c_dev->i2c_dev_done->dev_write(i2c_dev, &i2c_msg);
x_free(i2c_msg.buf);
return ret;
}
static uint32 I2cDeviceRead(void *dev, struct BusBlockReadParam *read_param)
@@ -53,16 +62,25 @@ static uint32 I2cDeviceRead(void *dev, struct BusBlockReadParam *read_param)
NULL_PARAM_CHECK(read_param);
struct I2cHardwareDevice *i2c_dev = (struct I2cHardwareDevice *)dev;
struct I2cDataStandard i2c_msg;
struct I2cDataStandard i2c_msg_write, i2c_msg_read;
i2c_msg.addr = i2c_dev->i2c_dev_addr;
i2c_msg.flags = I2C_RD;
i2c_msg.buf = read_param->buffer;
i2c_msg.len = read_param->size;
i2c_msg.retries = 10;
i2c_msg.next = NONE;
i2c_msg_write.addr = i2c_dev->i2c_dev_addr;
i2c_msg_write.flags = I2C_WR;
i2c_msg_write.buf = NONE;
i2c_msg_write.len = 0;
i2c_msg_write.retries = 10;
i2c_msg_write.next = NONE;
return i2c_dev->i2c_dev_done->dev_read(i2c_dev, &i2c_msg);
i2c_dev->i2c_dev_done->dev_write(i2c_dev, &i2c_msg_write);
i2c_msg_read.addr = i2c_dev->i2c_dev_addr;
i2c_msg_read.flags = I2C_RD;
i2c_msg_read.buf = read_param->buffer;
i2c_msg_read.len = read_param->size;
i2c_msg_read.retries = 10;
i2c_msg_read.next = NONE;
return i2c_dev->i2c_dev_done->dev_read(i2c_dev, &i2c_msg_read);
}
static const struct HalDevDone dev_done =