BMI160 SPI fixes

This commit is contained in:
Benjamin Vedder 2021-06-26 15:12:30 +02:00
parent 0a5fe738cd
commit ff94d2481a
3 changed files with 3 additions and 3 deletions

View File

@ -85,7 +85,9 @@ static bool reset_init_bmi(BMI_STATE *s) {
s->sensor.gyro_cfg.odr = BMI160_GYRO_ODR_1600HZ;
}
chThdSleepMilliseconds(50);
int8_t res = bmi160_set_sens_conf(&(s->sensor));
chThdSleepMilliseconds(50);
return res == BMI160_OK;
}

View File

@ -559,8 +559,6 @@ int8_t user_spi_read(uint8_t dev_id, uint8_t reg_addr, uint8_t *data, uint16_t l
reg_addr = (reg_addr | BMI160_SPI_RD_MASK);
chThdSleepMicroseconds(200); // #FIXME Wont work without this- Why?
chMtxLock(&m_spi_bb.mutex);
spi_bb_begin(&m_spi_bb);
spi_bb_exchange_8(&m_spi_bb, reg_addr);

View File

@ -96,7 +96,7 @@ void spi_bb_end(spi_bb_state *s) {
}
void spi_bb_delay(void) {
for (volatile int i = 0; i < 40; i++) {
for (volatile int i = 0; i < 6; i++) {
__NOP();
}
}