Skip to content

Commit 6dab330

Browse files
BST-Github-Adminkegov
authored andcommitted
Updated interfaces to support COINES v2.7.2
1 parent 55cc2bd commit 6dab330

2 files changed

Lines changed: 27 additions & 15 deletions

File tree

examples/common/common.c

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ BME68X_INTF_RET_TYPE bme68x_i2c_read(uint8_t reg_addr, uint8_t *reg_data, uint32
3131
{
3232
uint8_t dev_addr = *(uint8_t*)intf_ptr;
3333

34-
return coines_read_i2c(dev_addr, reg_addr, reg_data, (uint16_t)len);
34+
return coines_read_i2c(COINES_I2C_BUS_0, dev_addr, reg_addr, reg_data, (uint16_t)len);
3535
}
3636

3737
/*!
@@ -41,7 +41,7 @@ BME68X_INTF_RET_TYPE bme68x_i2c_write(uint8_t reg_addr, const uint8_t *reg_data,
4141
{
4242
uint8_t dev_addr = *(uint8_t*)intf_ptr;
4343

44-
return coines_write_i2c(dev_addr, reg_addr, (uint8_t *)reg_data, (uint16_t)len);
44+
return coines_write_i2c(COINES_I2C_BUS_0, dev_addr, reg_addr, (uint8_t *)reg_data, (uint16_t)len);
4545
}
4646

4747
/*!
@@ -51,7 +51,7 @@ BME68X_INTF_RET_TYPE bme68x_spi_read(uint8_t reg_addr, uint8_t *reg_data, uint32
5151
{
5252
uint8_t dev_addr = *(uint8_t*)intf_ptr;
5353

54-
return coines_read_spi(dev_addr, reg_addr, reg_data, (uint16_t)len);
54+
return coines_read_spi(COINES_SPI_BUS_0, dev_addr, reg_addr, reg_data, (uint16_t)len);
5555
}
5656

5757
/*!
@@ -61,7 +61,7 @@ BME68X_INTF_RET_TYPE bme68x_spi_write(uint8_t reg_addr, const uint8_t *reg_data,
6161
{
6262
uint8_t dev_addr = *(uint8_t*)intf_ptr;
6363

64-
return coines_write_spi(dev_addr, reg_addr, (uint8_t *)reg_data, (uint16_t)len);
64+
return coines_write_spi(COINES_SPI_BUS_0, dev_addr, reg_addr, (uint8_t *)reg_data, (uint16_t)len);
6565
}
6666

6767
/*!
@@ -111,7 +111,7 @@ int8_t bme68x_interface_init(struct bme68x_dev *bme, uint8_t intf)
111111

112112
if (bme != NULL)
113113
{
114-
int16_t result = coines_open_comm_intf(COINES_COMM_INTF_USB);
114+
int16_t result = coines_open_comm_intf(COINES_COMM_INTF_USB, NULL);
115115
if (result < COINES_SUCCESS)
116116
{
117117
printf(
@@ -126,13 +126,16 @@ int8_t bme68x_interface_init(struct bme68x_dev *bme, uint8_t intf)
126126
setbuf(stdout, NULL);
127127
#endif
128128

129-
if (result == COINES_SUCCESS)
129+
if (result != COINES_SUCCESS)
130130
{
131-
if ((board_info.shuttle_id != BME68X_SHUTTLE_ID))
132-
{
133-
printf("! Warning invalid sensor shuttle \n ," "This application will not support this sensor \n");
134-
exit(COINES_E_FAILURE);
135-
}
131+
printf("\n Unable to retrieve board information ! \n");
132+
exit(COINES_E_FAILURE);
133+
}
134+
135+
if ((board_info.shuttle_id != BME68X_SHUTTLE_ID))
136+
{
137+
printf("! Warning invalid sensor shuttle \n ," "This application will not support this sensor \n");
138+
exit(COINES_E_FAILURE);
136139
}
137140

138141
coines_set_shuttleboard_vdd_vddio_config(0, 0);
@@ -146,7 +149,11 @@ int8_t bme68x_interface_init(struct bme68x_dev *bme, uint8_t intf)
146149
bme->read = bme68x_i2c_read;
147150
bme->write = bme68x_i2c_write;
148151
bme->intf = BME68X_I2C_INTF;
149-
coines_config_i2c_bus(COINES_I2C_BUS_0, COINES_I2C_STANDARD_MODE);
152+
153+
/* SDO pin is made low */
154+
coines_set_pin_config(COINES_SHUTTLE_PIN_SDO, COINES_PIN_DIRECTION_OUT, COINES_PIN_VALUE_LOW);
155+
156+
result = coines_config_i2c_bus(COINES_I2C_BUS_0, COINES_I2C_STANDARD_MODE);
150157
}
151158
/* Bus configuration : SPI */
152159
else if (intf == BME68X_SPI_INTF)
@@ -156,7 +163,12 @@ int8_t bme68x_interface_init(struct bme68x_dev *bme, uint8_t intf)
156163
bme->read = bme68x_spi_read;
157164
bme->write = bme68x_spi_write;
158165
bme->intf = BME68X_SPI_INTF;
159-
coines_config_spi_bus(COINES_SPI_BUS_0, COINES_SPI_SPEED_7_5_MHZ, COINES_SPI_MODE0);
166+
result = coines_config_spi_bus(COINES_SPI_BUS_0, COINES_SPI_SPEED_7_5_MHZ, COINES_SPI_MODE0);
167+
}
168+
169+
if(COINES_SUCCESS != result)
170+
{
171+
rslt = COINES_E_COMM_INIT_FAILED;
160172
}
161173

162174
coines_delay_msec(100);
@@ -187,5 +199,5 @@ void bme68x_coines_deinit(void)
187199
/* Coines interface reset */
188200
coines_soft_reset();
189201
coines_delay_msec(1000);
190-
coines_close_comm_intf(COINES_COMM_INTF_USB);
202+
coines_close_comm_intf(COINES_COMM_INTF_USB, NULL);
191203
}

examples/forced_mode/forced_mode.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ int main(void)
3838
* For I2C : BME68X_I2C_INTF
3939
* For SPI : BME68X_SPI_INTF
4040
*/
41-
rslt = bme68x_interface_init(&bme, BME68X_I2C_INTF);
41+
rslt = bme68x_interface_init(&bme, BME68X_SPI_INTF);
4242
bme68x_check_rslt("bme68x_interface_init", rslt);
4343

4444
rslt = bme68x_init(&bme);

0 commit comments

Comments
 (0)