接前一篇文章:ICM20948 DMP代码详解(64)
上一回开始解析inv_icm20948_set_fsr中的inv_icm20948_set_gyro_fullscale函数,本回继续。为了便于理解和回顾,再次贴出inv_icm20948_set_gyro_fullscale函数源码,在EMD-Core\sources\Invn\Devices\Drivers\ICM20948\Icm20948DataBaseDriver.c中,如下:
int inv_icm20948_set_gyro_fullscale(struct inv_icm20948 *s, int level)
{
int result;
s->base_state.gyro_fullscale = level;
result = inv_icm20948_set_icm20948_gyro_fullscale(s, level);
result |= inv_icm20948_set_gyro_sf(s, s->base_state.gyro_div, level);
result |= dmp_icm20948_set_gyro_fsr(s, 250<<level);
return res