AD7142與外部電容傳感器接口,這些傳感器可以配置為按鈕、滾動條、滾輪或上述裝置的組合。本應用筆記說明支持傳感器按鈕接口時對于主處理器的要求。
AD7142中斷配置選項
AD7142支持兩種中斷工作模式。
●轉換結束中斷模式。通過使用STAGE_COMPLETE_EN寄存器,可以將INT輸出配置為在轉換階段結束時置位。通常,STAGE0_COMPLETE_EN設為1,使得INT輸出在每次STAGE0轉換結束時置位。
●觸摸中斷模式。僅當用戶接觸傳感器時,INT才會置位。
中斷配置和中斷狀態寄存器
表1列出并描述了中斷配置寄存器。每次中斷后,主處理器需回讀表2所列的寄存器,以確定接觸的是哪一個傳感器按鈕。
表1. 中斷配置寄存器

表2. 中斷狀態寄存器

注意,主處理器必須通過讀取相關的寄存器來服務AD7142中斷,從而使AD7142中斷輸出解除置位。如果不執行中斷服務程序,中斷將始終保持低電平。
中斷示例
本部分提供兩個示例,分別用于說明兩個傳感器按鈕的轉換結束中斷和觸摸中斷操作。對于這兩個示例,傳感器按鈕A和按鈕B(見圖1)分別連接到CDC STAGE0和CDC STAGE1,以便通過降到環境電容值以下的CDC輸出代碼做出響應。

圖1. 雙按鈕配置示例
示例1:轉換結束中斷模式
中斷配置寄存器設置:
Address 0x005 = 0x0000 // STAGEx_LOW_INT_EN = 0 (x = 0至11)
Address 0x006 = 0x0000 // STAGEx_HIGH_INT_EN = 0 (x = 0至11)
Address 0x007 = 0x0001 // STAGE0_COMPLETE_EN = 1(配置轉換結束中斷模式,在每次STAGE0轉換完成時置位INT輸出)
每次中斷后,系統主處理器需回讀地址0x008處的下限中斷狀態寄存器,以檢查轉換序列期間是否接觸了某個傳感器按鈕。對于圖2所示的時序圖,位于地址0x008的下限中斷狀態寄存器報告的結果如表3所示。

圖2. 轉換結束中斷模式時序圖
表3. 下限中斷狀態寄存器的結果

1如圖1所示,傳感器按鈕A連接到STAGE0,傳感器按鈕B連接到STAGE1。
示例2:觸摸中斷模式
斷配置寄存器設置:
Address 0x005 = 0x0003 // STAGE0_LOW_INT_EN = 1、STAGE1_LOW_INT_EN = 1
Address 0x006 = 0x0000 // STAGEx_HIGH_INT_EN = 0(x = 0至11)
Address 0x007 = 0x0000 // STAGEx_COMPLETE_EN = 0(x = 0至11)
如圖3所示,每次用戶接觸傳感器時,兩個中斷都會置位。第一個中斷表示用戶已與傳感器發生接觸,第二個中斷表示用戶已離開傳感器(不再與之接觸)。每次中斷后,主處理器都要回讀Address 0x008處的下限中斷狀態寄存器。

圖3. 觸摸中斷工作模式時序圖
位于地址0x008的下限中斷狀態寄存器報告的結果如表4所示。注意,X表示無關位。
表4. 下限中斷狀態寄存器的結果

1如圖1所示,傳感器按鈕A連接到STAGE0,傳感器按鈕B連接到STAGE1。
|