zhyinch
2021-11-11 6e24113e302a99f943d0040d075d67963e570689
Drivers/ExternlDrivers/lis3dh_driver.c
@@ -68,11 +68,11 @@
{                    
   GPIO_InitTypeDef GPIO_InitStructure= {0};
 __HAL_RCC_GPIOA_CLK_ENABLE();
   GPIO_InitStructure.Pin = GPIO_PIN_2|GPIO_PIN_3;
   GPIO_InitStructure.Pin = SCL_Pin|SDA_Pin;
   GPIO_InitStructure.Mode = GPIO_MODE_OUTPUT_OD ;   //推挽输出
   GPIO_InitStructure.Speed = GPIO_SPEED_FREQ_HIGH;
   HAL_GPIO_Init(GPIOA, &GPIO_InitStructure);
   HAL_GPIO_WritePin(GPIOA,GPIO_PIN_2|GPIO_PIN_3,GPIO_PIN_SET);    //PB6,PB7 输出高
   HAL_GPIO_Init(SCL_GPIO_Port, &GPIO_InitStructure);
   HAL_GPIO_WritePin(SCL_GPIO_Port,SCL_Pin|SDA_Pin,GPIO_PIN_SET);    //PB6,PB7 输出高
}
@@ -89,9 +89,16 @@
   LIS3DH_WriteReg(LIS3DH_CTRL_REG3, 0x40);   /* CTRL_REG3(22h): 0x80 ???????INT_1 INT_2 */
   LIS3DH_WriteReg(LIS3DH_CTRL_REG4, 0x08);  /* CTRL_REG4(23h): ???,????,???+/-2G,?????? */
   LIS3DH_WriteReg(LIS3DH_INT1_CFG, 0xaa);  /* INT1_CFG(30h): ??,6D X/Y/Z???????? */
   g_com_map[IMU_THRES]=1;
   if(g_com_map[IMU_THRES]>20||g_com_map[IMU_THRES] == 0)
   {
      g_com_map[IMU_THRES] = 1;
   }
   if(g_com_map[IMU_DUARTION]>20||g_com_map[IMU_DUARTION]==0)
   {
      g_com_map[IMU_DUARTION] = 2;
   }
   LIS3DH_WriteReg(LIS3DH_INT1_THS, (uint8_t)g_com_map[IMU_THRES]);     /* INT1_THS(32h): ?????? 0x10: 16*2(FS)  0x20: 32*16(FS) */
    LIS3DH_WriteReg(LIS3DH_INT1_DURATION, 0x02);     /* INT1_DURATION(33h): 1LSB=1/ODR  ??ODR=100HZ  ??1LSB=10ms ???? 1s,??100->0x64 */
  LIS3DH_WriteReg(LIS3DH_INT1_DURATION, (uint8_t)g_com_map[IMU_DUARTION]);     /* INT1_DURATION(33h): 1LSB=1/ODR  ??ODR=100HZ  ??1LSB=10ms ???? 1s,??100->0x64 */
   /* Start sensor */
   //LIS3DH_WriteReg(0x20, 0x5f);  /* CTRL_REG1(20h): Start sensor at ODR 100Hz Low-power mode */
   // Read ID