核心和內存
ARM Cortex-M 處理器
Cortex-M0+
Cortex-M0+ 是 ARM 最節能的核心。該處理器是 8/16 位設備的自然而經濟高效的替代者,同時其工具和二進制算法向上兼容功能豐富的 Cortex-M3 和 Cortex-M4 處理器。
內存和總線系統
Silicon Labs 的 EFM32 32 位微控制器產品系列內置低延遲內存系統,采用具有數據保存功能的低功耗閃存和 RAM,可實現極具吸引力的低能耗模式運行。EFM32 包含 4 主內存分段(閃存、RAM、外部總線接口和低延遲外圍設備),其可通過 ARM Cortex-M CPU 或 DMA 控制器訪問。
調試接口
EFM32 Cortex-M 設備采用 ARM CoreSight? 片上調試和跟蹤接口。串行線調試技術,特別是適用于 EFM32 的串行線調試端口,可用作片上調試模塊和計算機開發環境之間的接口。EFM32 調試接口使現場重新編程和更新系統變得很容易,并允許使用最少的 I/O 引腳進行調試。
調試和編程亮點包括:
- 2 線串行線調試接口
- 調試/編程
- 1 線串行線查看器輸出
- 打印樣式調試信息
- 功耗 (PC) 采樣
- 固件保護用調試鎖定
- 預編程引導加載程序
- 所有 EFM32 中的 UART
- 帶 USB 的零部件中的 UART+USB
- 5 線嵌入式跟蹤宏單元 (EFM32 Leopard Gecko、Giant Gecko 和 Wonder Gecko)
- 指令和數據跟蹤
- 指令和數據跟蹤
直接存儲器存取 (DMA) 控制器
DMA 可在 CPU 未介入的情況下移動數據,從而有效減少能耗和 CPU 工作量。此外圍設備可使系統以低能耗模式遷移數據,例如從 USART 遷移到 RAM 或從外部總線接口遷移到 DAC。
- 閃存/RAM 和外圍設備間傳輸
- 多達 12 個通道
- 多個高級傳輸模式(散集、往復式)
- 減少延遲
時鐘管理
時鐘管理單元
MCU 的功耗主要來自于時鐘和振蕩器。時鐘管理單元控制 Silicon Labs EFM32 MCU 上的時鐘和振蕩器,能夠單獨打開和關閉所有外圍設備模塊的時鐘,并啟用/禁用可用的振蕩器。結合使用低功耗振蕩器和靈活的時鐘控制方案即可最大程度減少任何給定應用的能耗。
時鐘管理單元具有以下特征:
- 多個時鐘源(集成 RC 和晶體振蕩器)
- 電流饑餓型振蕩器可確保低能耗運行
- 低啟動時間
- 動態系統時鐘分頻
- 32 kHz 外圍設備模塊時鐘預分頻器選擇
- 時鐘門控
下載應用說明:
?
能耗管理
穩壓器
所有 Silicon Labs EFM32 MCU 均配有片上穩壓器,其可在運行時將供電電壓轉變為正確的內部電源。片上穩壓器不受供電電壓范圍 (1.85–3.8 V) 支配,可產生全部所需電壓,從而使得給 EFM32 MCU 供電變得極為容易。
電壓比較器
電壓比較器會在電源電壓達到臨界水平后發出警報,簡單省事。如果電壓電平太低,復位管理單元會自動啟動復位,電壓比較器會比較電源電壓和內部帶隙基準電壓。也可通過軟件調整電壓比較器的占空比,進一步減少能耗和功能:
- 64 步驟內的可分 VDD,可選作為正比較器輸入值
- 內部 1.25 V 帶隙基準電壓
- 適用于內部 VDD 和帶隙基準電壓的低功耗模式
- 可選邊緣產生的異步中斷
上電復位
EFM32 MCU 開啟后,上電復位會在達到適當的工作電壓后監控輸入電源電壓和信號,確保該 MCU 擁有正確的啟動狀態。上電復位外圍設備采用超低功耗設計,同時監控外加功率,并在復位原因寄存器內設置復位原因,以供軟件使用。
欠壓檢測器
如果電源電壓在運行期間跌至閾值電壓以下,“欠壓”即已發生。然后,欠壓檢測器會使 MCU 復位,以防止意外程序執行和數據損壞。EFM32 配備兩個欠壓監測器,一個用于外部非穩壓電源,一個用于 1.8 V 穩壓導電軌。
注意:欠壓監測器模式已在 EM0 – EM3 模式下啟用,并且在 EM4 模式下亦可用于 EFM32 Leopard Gecko、Giant Gecko 和 Wonder Gecko MCU。
串行接口
UART
嵌入式系統經常使用串行通信,UART 可與眾多外部設備進行高效通信。UART 是一款極為靈活的串行 I/O 模塊,支持全雙工和半雙工異步 UART 通信。
UART 外圍設備的特征包括:
- 各種運行模式、幀格式和可編程波特率可供選擇
- 可使 UART 在未解決時保持空閑狀態的多處理器模式
- 三重緩沖和 DMA 支持,可在 CPU 最小介入的情況下實現高數據傳輸率
低能耗 UART
EFM32 低能耗 UART 采用低頻 32 kHz 時鐘,提供全 UART 通信,并包括必要的硬件支持,可在軟件最小介入和最低能耗的情況下實現異步串行通信。低能耗 UART 的優點是其能在 EM2(深度睡眠)模式下運行,同時其他模塊關閉,以節約能源。
下載應用說明:了解關于低能耗 UART 外圍設備的更多信息
USART
嵌入式系統經常使用串行通信,USART 可與眾多外部設備進行高效通信。USART 外圍設備可以處理高速 UART、SPI 總線、智能卡和 IrDA 通信,并具有以下特征:
- 異步和同步 (SPI) 通信
- 全雙工和半雙工
- 獨立的接收/傳輸 2 級緩存
- 可編程波特率
- 各種異步和同步模式支持
- I2S 支持(EFM32 Zero GEcko、Tiny Gecko、Leopard Gecko、Giant Gecko 和 Wonder Gecko)
- 首先通過 LSB 或 MSB 傳輸數據
- 可配置的數據位和停止位數
- 硬件沖突檢測
- 多處理器模式
- USART0 上 IrDA 調制器
- 智能卡模式 (ISO7816)
- 環回模式
I2C 接口
I2C 模塊可以僅使用一個數據線和一個時鐘線在集成電路之間進行簡單、可靠和經濟高效的通信。借助 DMA 的幫助,I2C 接口可在 CPU 最小介入的情況下進行 I2C 通信。地址識別在所有能耗模式下均可用,可使 MCU 等待 I2C 總線傳輸的數據,具有 Sub-μA 的電流消耗。
- 包含多達兩臺I2C 外圍設備
- I2C 和 SMBus 支持
- 數據速率高達 1 Mbps
- EM3(停止)模式下的硬件地址識別
I/O 端口
外部總線接口
外部總線接口是一款多功能異步并行地址/數據總線,其可簡化常見外部并行接口設備的訪問,如 SRAM、閃存、ADC 和液晶顯示器。該接口通過內存映射到 Cortex-M 的地址總線,每次讀寫時無需 I/O 級存取即可實現無縫軟件訪問。可通過 DMA 接合外部總線接口,然后在 EM1(睡眠)模式下運行。
- 數據和地址線可進行多路傳輸,以減少接合外部設備所需的引腳數量
- 每個新品選擇庫的定時均單獨可調,以符合外部設備的規范
- 該接口僅限異步設備使用(無時鐘信號可用)
外部中斷
Silicon Labs 的 EFM32 MCU I/O 具有 16 個外部中斷,可用于發送系統內的事件和狀態信號。可以使用嵌套向量中斷控制器 (NVIC) 配置外部中斷在下降沿/上升沿和不同優先級時觸發。Cortex-M 核心處理器支持快速嵌套中斷請求,并使系統具備超短響應時間和低延遲能力。
定時器和觸發器
定時器/計數器
大多數應用都擁有需要在 CPU 極少介入和功耗極低的情況下精確計時的操作。高頻定時器/計數器外部設備可以跟蹤定時和計數時間,并產生輸出波形,觸發其他外圍設備的定時操作。
- 多達 3 個 16 位定時器
- 上、下、上/下模式
- 正交解碼器
- 3 比較/捕獲/PWM
- TIMER0 空載時間插入
- Systick 定時器
- 集成到 Cortex-M
- 操作系統定時器
周邊反射系統 (PRS)
Silicon Labs 的 EFM32 微控制器中的周邊反射系統可以在不使用 CPU 的情況下直接連接不同的外圍設備。借助此系統,外圍設備能夠產生其他外圍設備可以接收并即刻反應的信號,同時 CPU 依然處于睡眠狀態。
低能耗定時器
大部分設備關閉后,可以使用低能耗定時器進行定時和輸出生成,從而允許在系統功耗處于絕對最小值時執行簡單的任務。低能耗定時器也可以連接到實時計數器 (RTC),并可配置為從 RTC 開始計數以比較匹配。借助緩沖重復和最高值寄存器,低能耗定時器可以提供高達 16 kHz 頻率的無干擾波形。
- 16 位計數器、8 位重復
- 從 LFXO/LFRCO 開始計時
- 波形生成
- 外部組件/傳感器占空比控制
I/O 端口
脈沖計數器
脈沖計數器會在檢測到特定數量的脈沖或旋轉后中斷,以消除定時或 I/O 中斷和 CPU 處理需求。外圍設備:
- 包括多達 3 個 8/16 位脈沖計數器,
- 計數輸入的上升沿或下降沿,和
- 包括方向中斷變更(異步正交解碼器)。
實時計數器 (RTC)
許多應用存在幾乎不需要執行任何操作的長時間間隔。因而,這些時間間隔應設定在睡眠模式中,以節約能源。RTC 外圍設備可確保以低能耗模式進行計時。結合使用低功率 32 kHz 振蕩器,RTC 可在 EM2(深度睡眠)模式下運行,并且電流消耗低于 0.6 μA。在 EM2 模式下,核心和高速外圍設備會關閉,但可以啟用 LCD 控制器、低能耗 UART 和 RTC 等低能耗外圍設備。
看門狗定時器
看門狗定時器可以在軟件故障或外部事件致使 MCU 無響應的情況下,重置系統以恢復已知的安全狀態,從而提高應用程序的可靠性。已啟用的看門狗定時器執行可配置的超時期限,如果 CPU 未能在超時發生前重新啟動看門狗定時器,將會觸發系統全面復位。
看門狗的功耗不大,并可使設備在低能耗模式安全保持高達 32 秒。
- 系統故障情況下的定時復位
- 9 至 256k 時鐘周期超時
- 從 ULFRCO/LFXO/LFRCO 開始計時
- 鎖定以避免意外變更導致啟用或禁用選定振蕩器
模擬接口
模數轉換器 (ADC)
模數轉換器 (ADC) 用于將模擬信號轉換為數字表示:
- 8 外部輸入信道
- 12 位 @ 1Msps,電流消耗僅為 350 μA
- 低至 0.5 μA,1000 個 6 位樣本/秒
集成輸入混合可從 8 個外部引腳和 6 個內部信號中選擇輸入。使用 PRS 和 DMA 時,ADC 可在 CPU 未介入的情況下運行,從而最大程度減少通電資源的數量。ADC 可進一步調整占空比設置,以減少能耗。
數模轉換器 (DAC)
數模轉換器 (DAC) 可在僅消耗有限能源的情況下將數字值轉換為模擬信號。使用 DMA 和定時器后,DAC 可用于在任何 CPU 均未介入的情況下生成波形。
- 12 位 @ 500 ksps,電流消耗僅為 200 μA
- 2 獨立信道
- 持續的采樣保持和采樣關閉轉換模式
- 正弦生成模式
LCD 控制器
EFM32 MCU 包含一個獨立的超低功耗 LCD 驅動器,其中配備內部偏置電壓電路和升壓轉換器以最大程度減少外部組件需求。LCD 驅動器在 EM2(深度睡眠)模式下的電流消耗低于 2 μA,能夠驅動分段 LCD 顯示屏,最高可達 8x36 個分段。
低功耗 LCD 驅動器支持在應用中、甚至是能耗苛刻系統中使用 LCD 顯示屏。
- 升壓功能可使其為 LCD 顯示屏輸入高于設備電源電壓的電壓
- 動畫功能可以在任何 CPU 均未介入的情況下使用 LCD 顯示屏播放自定義動畫
- LCD 驅動器可在 EM2 模式下保持活躍,并中斷幀計數器工作,以定期喚醒設備,更新數據
模擬比較器
通常僅當應用中的模擬信號超出閾值時,應用才需要知道模擬信號的確切值。模擬比較器可用于比較兩個模擬輸入電壓,然后顯示數字輸出,以表明哪個輸入電壓更高。輸入既可以是某個可選的內部參考,也可以是外部引腳,并且可以直接將比較器輸出發送到 GPIO 或 PRS。
- 高達 2 個模擬輸入(一正一負)
- 每個比較器具有 8 個輸入引腳
- 可配置的速度/電流 4.5 μs / 0.1 μA0.2 μs / 2 μA
- 電容式感應模式
安全
AES 加密加速器
Silicon Labs 的 EFM32 MCU 包括一個硬件 AES 加速器,其可在 CPU 極少或根本未介入的情況下與 128 位區塊大小和 128 或 256 位密鑰共同使用,顯著減少了加密/解密時間。AES 模塊是一個 AHB 從模塊,可用于高效地訪問數據和密鑰寄存器。
- 加密/解密
- 128/256 位密鑰 @ 54/75 周期
- 比軟件快 20–80 倍
- 實時密鑰生成
- 無需內存
- 密鑰在 128 位模式下緩存
- 無需重新加載密鑰
- DMA 支持自主密碼模式