ADXL345怎么才能進入自動休眠 下面是我的程序,一直進不了休眠,大神幫我看看:
Single_Write_ADXL345(POWER_CTL,0x00);
Single_Write_ADXL345(INT_ENABLE,0x00);
Single_Write_ADXL345(BW_RATE,0x08); //0000 0110速率設定為6.25 參考pdf13頁
Single_Write_ADXL345(DATA_FORMAT,0x2F); //測量范圍,正負16g,13位模式 0X2b D5=1,中斷設置為低電平有效
Single_Write_ADXL345(THRESH_ACT,0x01); //活動閥值(xy)1000MG 62.5mg/L
Single_Write_ADXL345(THRESH_INACT,0x03); // 靜止閥值(xyz?)(根據實際調整) 時閾
Single_Write_ADXL345(TIME_INACT,0x03); //時閾 5s
// Single_Write_ADXL345(DUR,0xF0); //敲擊檢測時閾
Single_Write_ADXL345(ACT_INACT_CTL,0xEE); //0110 0110 直(交)流耦合 活動檢測使能xy 靜止檢測使能XY
Single_Write_ADXL345(0x2F,0x10); //中斷引腳映射INT_MAP , 活動中斷配置到INT2,靜止中斷到INT1
Single_Write_ADXL345(0x2E,0x18); //中斷使能 INT_ENABLLE
Single_Read_ADXL345(INT_SOURCE); //清零中斷
Single_Write_ADXL345(POWER_CTL,0x34); //電源設置 休眠使能 0x38 0x08 0x34
Single_Write_ADXL345(0x1E,0x00); //X 偏移量 根據測試傳感器的狀態寫入pdf29頁
Single_Write_ADXL345(0x1F,0x00); //Y 偏移量 根據測試傳感器的狀態寫入pdf29頁
Single_Write_ADXL345(0x20,0x05); //Z 偏移量 根據測試傳感器的狀態寫入pdf29頁
中斷發生后清除:
Single_Read_ADXL345(ACT_TAP_STATUS);
Single_Read_ADXL345(INT_SOURCE);
|