您的位置:首頁>科技>正文

ADuCM3027/ADuCM3029中的SensorStrobe、超低功耗、時間同步感測器資料採樣

簡介

與一個精確時間同步的感測器精密採樣, 是建築健康監控、可穿戴式設備、環境檢測等各類無線感測器網路應用的要求。 感測器資料採樣由微控制器單元(MCU)支配。 傳統方法是利用MCU上的軟體產生通用輸入/輸出(GPIO)脈衝, 然後以特定間隔觸發感測器收集資料。

傳統方法有兩個問題。 一是涉及到相當大的軟體開銷, 這會提高功耗。 二是脈衝觸發取決於MCU軟體, 因此可能隨著時間推移而發生漂移。

本應用筆記介紹ADI公司的SensorStrobe™機制, 利用它可實現低功耗、一致、同步的感測器資料獲取。

ADuCM3027/ADuCM3029具備SensorStrobe機制。 此機制支持與ADuCM3027/ADuCM3029 MCU相連的感測器實現時間同步的資料採樣。

SensorStrobe解決了傳統軟體方法的問題, 理由如下:

• 工作在休眠模式, 功耗降低10倍以上。

• 設置之後無需軟體干預。

• 脈衝觸發機制獨立於軟體執行, 即使在軟體執行期間也能產生連續觸發脈衝(且無漂移)。

本應用筆記使用一個示例設置, 其中ADuCM3027/ADuCM3029 MCU連接到ADXL363加速度計, 以證明利用SensorStrobe機制採集樣本資料時功耗降低超過10倍。 將SensorStrobe機制與非SensorStrobe的軟體方法進行比較, 這一降幅是很明顯的。

圖1.ADuCM3027/ADuCM3029和ADXL363連接圖

目錄

簡介1

修訂歷史2

SensorStrobe概述3

ADXL363特性3

系統描述5

MCU和ADXL363之間的介面5

資料傳輸序列6

軟體概述7

原始程式碼片段8

ADXL363 FIFO讀操作10

系統功耗分析11

功耗測量11

結語13

結構健康監控(SHM)13

醫療保健監護13

環境檢測13

修訂歷史

2017年3月—修訂版0:初始版

SENSORSTROBE概述

SensorStrobe是一種以高效率、低功耗、內在同步的方式進行感測器採樣的機制。 ADuCM3027/ADuCM3029支持這種機制。 SensorStrobe可以在ADuCM3027/ADuCM3029的活動、靈活(Flexi™)和休眠三種功耗模式下使用。

SensorStrobe機制允許ADuCM3027/ADuCM3029處於休眠模式(750 nA), 同時感測器以固定間隔週期性收集資料。

SensorStrobe機制與ADXL363的外部觸發特性相結合, 以最低可能功耗收集感測器資料。

SensorStrobe是ADuCM3027/ADuCM3029中的即時時鐘(RTC)的一種報警功能。 通過此機制, ADuCM3027/ADuCM3029為ADXL363加速度計提供外部觸發信號。 觸發信號位於RTC1_SS1 (RTC SensorStrobe)引腳上, 是通過ADuCM3027/ADuCM3029上的單一GPIO驅動出來的低頻時鐘源(32 kHz)的單週期、高電平脈衝。 此脈衝是週期性的, 確保感測器採樣時間無變化, 而其週期具有高度可配置性。

ADXL363特性

ADXL363是一款超低功耗、三感測器器件, 集三軸微機電系統(MEMS)加速度計、溫度感測器和模數轉換器(ADC)輸入於一體, 用於同步採樣外部信號。

ADXL363有一個512樣本先進先出(FIFO)緩衝器用以存儲感測器資料。 這種大FIFO可節省系統功耗。 在ADXL363將資料自主記錄到FIFO緩衝器的同時, MCU可以處於休眠模式。

ADXL363配置為外部觸發模式。 ADuCM3027/ADuCM3029在RTC_SS引腳上產生這些觸發脈衝。 每個觸發脈衝到來時, ADXL363便收集並存儲資料到FIFO(最多512個樣本,

每樣本兩個位元組)緩衝器中。

對ADXL363進行程式設計, 當FIFO緩衝器達到480樣本(每樣本兩個位元組)的浮水印時, 它便中斷並喚醒MCU。 使用浮水印特性可以讓FIFO留下餘地以供接收更多樣本, 與此同時, MCU喚醒並開始清空FIFO緩衝器。

ADXL363支援通過串列外設介面(SPI)進行寄存器讀寫訪問。 訪問可以是單字節或多位元組訪問。 實現FIFO緩衝器的目的是通過不限長度的多位元組讀取來連續讀取連貫的樣本。 因此, 一個FIFO緩衝器讀指令便可清空FIFO緩衝器的全部內容。

而在其他加速度計中, 每個讀指令只能檢索到一個樣本。 此外, ADXL363 FIFO緩衝器還可以利用ADuCM3027/ADuCM3029直接記憶體訪問(DMA)控制器清空。

利用SPI介面的讀命令模式, ADuCM3027/ADuCM3029與ADXL363高效通信, 通過減少SPI協定開銷來降低系統整體功耗。

圖2.資料序列圖

系統描述

我們構建了一個示例系統來說明使用SensorStrobe的優點。 此系統包括一個EVAL-ADuCM3029 EZ-KIT萬用表和電流源表。 這些系統器件串聯起來測量系統電流消耗。

圖3.電流測量的系統連接

MCU和ADXL363之間的介面

一步說明。

使能ADuCM3027 /ADuCM3029的SensorStrobe機制,並將ADuCM3027 /ADuCM3029置於休眠模式。觸發脈衝以128 Hz速率產生。

每收到一個脈衝,ADXL363便獲取樣本並將其存儲在FIFO緩衝器中。當達到FIFO上浮水印時,ADXL363便通過SYS_WAKE3 (P2_01)引腳中斷ADuCM3027 /ADuCM3029。

ADuCM3027 /ADuCM3029利用讀模式特性通過單個命令清空整個FIFO,使SPI協議開銷最小。DMA控制器可以清空FIFO緩衝器,進一步降低MCU的工作時間和系統電流消耗。

通過SensorStrobe,ADuCM3027/ADuCM3029即便在休眠模式下也能在GPIO43引腳上產生觸發脈衝。脈衝產生配置取決於RTC1寄存器和GPIO引腳複用。

在靈活模式下,DMA可以傳輸SPI資料,進一步降低系統功耗。

資料傳輸序列

MCU收集感測器資料分兩個階段進行。圖4和圖5顯示了這些階段中的信號活動情況。

首先,RTC1_SS1引腳充當外部觸發信號,ADXL363收集樣本並存儲到FIFO緩衝器中。然後,ADXL363 FIFO緩衝器通過SPI讀取內容。

圖4.第一階段——資料獲取階段:RTC_SS觸發ADXL363

圖5.第二階段——資料傳輸至MCU:通過SPI讀取ADXL363 FIFO

圖3.電流測量的系統連接

MCU和ADXL363之間的介面

一步說明。

使能ADuCM3027 /ADuCM3029的SensorStrobe機制,並將ADuCM3027 /ADuCM3029置於休眠模式。觸發脈衝以128 Hz速率產生。

每收到一個脈衝,ADXL363便獲取樣本並將其存儲在FIFO緩衝器中。當達到FIFO上浮水印時,ADXL363便通過SYS_WAKE3 (P2_01)引腳中斷ADuCM3027 /ADuCM3029。

ADuCM3027 /ADuCM3029利用讀模式特性通過單個命令清空整個FIFO,使SPI協議開銷最小。DMA控制器可以清空FIFO緩衝器,進一步降低MCU的工作時間和系統電流消耗。

通過SensorStrobe,ADuCM3027/ADuCM3029即便在休眠模式下也能在GPIO43引腳上產生觸發脈衝。脈衝產生配置取決於RTC1寄存器和GPIO引腳複用。

在靈活模式下,DMA可以傳輸SPI資料,進一步降低系統功耗。

資料傳輸序列

MCU收集感測器資料分兩個階段進行。圖4和圖5顯示了這些階段中的信號活動情況。

首先,RTC1_SS1引腳充當外部觸發信號,ADXL363收集樣本並存儲到FIFO緩衝器中。然後,ADXL363 FIFO緩衝器通過SPI讀取內容。

圖4.第一階段——資料獲取階段:RTC_SS觸發ADXL363

圖5.第二階段——資料傳輸至MCU:通過SPI讀取ADXL363 FIFO

Next Article
喜欢就按个赞吧!!!
点击关闭提示