LSM303AH 喚醒中斷應用

標籤:LSM303AH

LSM303AH感測器中,喚醒功能是使用斜率濾波器實現(如下圖一,加速度計斜率濾波器所示)。如果一定數量的連續斜率濾波數據超過配置的閾值,則會產生喚醒中斷信號(圖二)。

  大大购相关商品   STEVAL-MKI173V1 >> 查询存货及售价

(圖一)

 

(圖二)

使用
WAKE_UP_THS_A寄存器的WU_THS [5:0]定義。使用這6個位元中的1 LSB的值,取決於所選的加速度計full scale[1 LSB = FS / 64]。該閾值適用於正數據和負數據:對於產生喚醒中斷,三個軸中的至少一個必須大於閾值。

持續時間參數定義了要識別的喚醒事件的最小持續時間;它的值是使用WAKE_UP_DUR_A寄存器的WU_DUR [1:0]位元 [1 LSB對應 1 * ODR時間],其中ODR是加速度計的輸出數據速率。重要的是適當地定義持續時間參數,以避免由於輸入信號的假尖峰而引起的不必要的喚醒中斷。

通過CTRL4_A寄存器的INT1_WU位置,可以將該中斷信號驅動到INT1_XL中斷引腳。也可以通過讀取WAKE_UP_SRC_A寄存器的WU_IA位進行檢查。 WAKE_UP_SRC_A寄存器的X_WU,Y_WU,Z_WU位指示哪個軸觸發了喚醒事件。

如果禁用latch mode(CTRL3_A的LIR位置為0),則當濾波後的數據降至設定閾值以下時,中斷信號將自動復位。如果開啟latch mode,並且喚醒中斷信號被驅動至中斷引腳,則一旦發生喚醒事件並通知中斷引腳,則必須通過讀取WAKE_UP_SRC_A寄存器將其複位。如果開啟latch mode,但沒有將中斷信號驅動到中斷引腳,則latch mode將不起作用。

下面範例是透過軟體設定wake up function:

由於持續時間設置為零,因此對於每個超過配置閾值的X,Y,Z斜率數據都會產生喚醒中斷信號。 WAKE_UP_THS_A寄存器的WU_THS字段設置為000010b,因此喚醒閾值為62.5 mg(= 2 * FS / 64)。

技術文檔

類型標題檔案
硬件Data Brief

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能