如果使用 ST-Link 连接,程序初始化时会在 LSM6DSM_ACC_GYRO_driver_HL.c 文件中 static DrvStatusTypeDef LSM6DSM_Check_WhoAmI( DrvContextTypeDef *handle )
{
//...
if ( who_am_i != handle->who_am_i )
这里出错。宏定义写的是 #define LSM6DSM_ACC_GYRO_WHO_AM_I 0x6A
然而 LSM6DSM_Get_WhoAmI( handle, &who_am_i ) 读到的是 0x4A。
拔掉 ST-Link 就能正常初始化。
如果把宏定义强行改为 0x4A ,ST-Link下能够使用,但是仅用USB供电时又启动不了了。
这是什么情况 |