具有高分辨率功能和安全狀態功能的 PWM 引擎
電機控制(或其他高速控制)系統的另一個關鍵功能是能夠在遇到一些災難性的外部或內部事件(例如過流情況)時關閉電機。這種“終止”功能應關閉 PWM 引擎,將控制信號置于已知的良好狀態,并將 I/O 焊盤配置為已知的良好狀態,以防止損壞外部電路。
本文引用地址:http://www.ex-cimer.com/article/202307/448619.htm通用 32 位微控制器 (MCU) 在我們生活的互聯、傳感器豐富的嵌入式世界中無處不在。嵌入式智能和連接性幾乎滲透到我們生活的各個方面,催生了功能日益強大的 32 位 MCU,以及更的板載傳感器。
使用數模轉換器 (DAC) 的電機控制、無線電控制、音頻樣本生成和波形生成是需要具有更高精度模擬功能的 MCU 的典型應用。由于 MCU 并不是無線電的天然配套設備,因此它們通常需要專門的高精度模擬組件或外設,才能在無線電信號存在的情況下“表現良好”。涉及無線電或電機控制技術的終產品通常受益于使用具有高精度外設和系統 IP 的 MCU。
例如,具有高精度脈寬調制(PWM)發生器的電機控制器能夠更有效地控制電機,從而節省電力并延長電機的使用壽命。具有包含精細可控鎖相環 (PLL) 的 MCU 的無線電系統需要更少的外部資源來減少信號干擾,從而帶來更好的終用戶體驗和更高的價值。簡而言之,具有一流精密模擬外設的 32 位 MCU 可以為各種應用帶來更高的價值。
具有高分辨率功能和安全狀態功能的 PWM 引擎
典型的 MCU 幾乎總是包含 PWM 信號發生器。這些信號發生器在與外部電阻電容 (RC) 網絡結合使用時非常有用,可生成音頻音調或其他正弦波形。 PWM 信號還用于驅動電機控制電路。因此,PWM 邊沿的放置對于生成具有更精細的頻率和相位控制的更平滑的正弦波形以及以更精細的效率控制電機至關重要。
典型的具有電機控制功能的 PWM 引擎會生成中心對齊和邊緣對齊的 PWM 信號。它還支持具有死區時間插入的差模功能,適用于需要“先斷后合”功能的應用。典型的 PWM 信號發生器的分辨率至少應為器件的工作頻率。
例如,對于 Silicon Labs 的 SiM3U1xx/SiM3C1xx Precision32 MCU,PWM 發生器以 50 MHZ 的頻率運行,從而允許生成分辨率為 20 ns 的 PWM 邊沿。這些 32 位 MCU 還實現了一種模式,其中 PWM 邊沿可以放置在器件工作頻率時鐘的兩個邊沿上,從而實現 10 ns 的邊沿分辨率,如圖 1所示。對于大多數非電源相關的應用來說,這種分辨率已經足夠了。
圖 1. PWM 發生器的 10 ns 邊沿分辨率
電機控制(或其他高速控制)系統的另一個關鍵功能是能夠在遇到一些災難性的外部或內部事件(例如過流情況)時關閉電機。這種“終止”功能應關閉 PWM 引擎,將控制信號置于已知的良好狀態,并將 I/O 焊盤配置為已知的良好狀態,以防止損壞外部電路。
SiM3U1xx/SiM3C1xx MCU 包含六個高驅動焊盤,每個焊盤能夠驅動高達 150 mA 的電流,或總共驅動高達 400 mA 的電流。如果所有焊盤同時驅動且不受控制,則外部電路可能會損壞。高驅動墊可與 PWM 發動機配合使用,直接驅動小型電機。如果收到終止信號,高驅動焊盤具有“安全狀態”功能,使焊盤恢復到三種預編程狀態之一:三態、拉高或拉低。這些安全狀態配置寄存器僅在系統加電時重置,否則一旦被軟件寫入并鎖定,就保持不受干擾。任何其他重置都不會影響它們。
精細 PLL 調整能力
在典型的 MCU/無線電集成器件中,噪聲抑制是有效使用無線電的關鍵考慮因素。在這些集成應用中,當無線電處于接收模式時,通常會發現微控制器完全關閉,具體取決于發送模式下的使用情況,以避免來自 MCU 的噪聲污染。如果無線電是經常使用的設備,則對 MCU 性能的影響可能會很嚴重。
減輕這種影響的一種方法是改變 MCU 的工作頻率,以確保其時鐘生成的任何噪聲雜散出現在感興趣的無線電頻段之外。這意味著 MCU 的 PLL 具有微調粒度,以便可以修改其頻率,將這些噪聲雜散置于無線電感興趣的頻帶之外。
Precision32 MCU 中使用的 PLL 能夠以大約 200 kHz 的步長在 23 至 80 MHz 之間移動其工作頻率。這種精細的分辨率簡化了 SiM3U1xx/SiM3C1xx MCU 與任何無線電設備的集成,而不會因工作頻率或事件循環大幅降低而造成性能損失。
DMA 無所不在
直接內存訪問 (DMA) 是一種常用于在內存和外設之間移動數據的機制。該技術使 CPU 不再承擔這項瑣碎的任務,并釋放更多的 MIPS 來完成其他有用的工作。
MCU 上的典型 DMA 實現在設備上具有固定數量的源和目標,從而限制了 DMA 引擎的實用性。鑒于通用 MCU 的性質,很難預測哪些外設需要 DMA。一般規則是將 DMA 應用于高帶寬外設并忽略所有其他外設。然而,在實時系統中,無論帶寬如何,提供對機器上所有地址的 DMA 訪問都是有益的。
例如,SiM3U1xx/SiM3C1xx MCU 就實現了這樣的系統。雖然只有一定數量的外設具有顯式 DMA 支持(即,它們可以配置為具有 FIFO 和中斷邏輯的 DMA 主設備,以支持詳細的帶寬管理),但所有外設都可以通過 DMA 訪問。那些沒有顯式 DMA 支持的外設必須通過軟件進行帶寬管理,并且在出現緩沖區錯誤情況時沒有向 CPU 發送信號的機制。例如,端口脈沖發生器可以由這樣一個具有一些軟件開銷的系統來控制,從而使得可以更地控制任意波形發生器。
該 DMA 引擎還可用于使用基于無線電流量的 DMA 鏈接來控制 MCU 的 PLL。例如,如果無線電通知 MCU 即將發送數據包,則可以使用軟件 DMAtrigger 發出 DMA 請求,該請求將向 PLL 加載改變其頻率的相關參數,從而減少其無線電干擾足跡。
更高精度的電流 DAC
ADAC 在提供數字代碼時生成模擬電壓。非典型 DAC 將具有可以達到的一定位精度,具體取決于設計。因此,10 位 DAC 會將 10 位數字代碼轉換為給定范圍內的電壓(或電流)。
MCU 上集成的 DAC 可用于多種用途,例如偏置電流發生器、任意波形發生器,或者在電流 DAC(也稱為 IDAC)的情況下,用作相對抗噪聲的通信介質。
考慮到 DAC 的波形生成能力,典型的實現方式允許 DAC 具有 DMA 可訪問性,并可用作具有伴隨的 FIFO 的 DMA 主設備。例如,這種布置允許使用 DMA 從存儲器中定義的波形生成波形。
SiM3U1xx/SiM3C1xx MCU 將這一 DAC 概念更進一步。 FIFO 結構實現了循環功能,通過在相鄰 10 位值之間進行插值而無需 DMA 干預,可將 IDAC 的精度以四分之一的數據速率從 10 位擴展到 12 位。例如,如果 IDAC 輸出三個相同的值“x”和第四個值“x+1”,則在封裝引腳處測量的 IDAC 輸出將是 12 位精度值,如圖 2所示。此功能可用于生成 12 位偏置電流。
結論
擴展標準模擬功能精度的技術提高了 32 位混合信號 MCU 在涉及無線電和電機控制技術的應用中的價值。高精度 PWM 引擎、精細 PLL 調整和高精度 IDAC 體現了擴展精度功能,可提供32 位 MCU 在應用中具有這些設備無法提供的更多功能。 DMA 至一切功能可為 MCU 提供更精細的控制和外設使用,以進一步提升價值。當今 32 位 MCU 中實現的更高精度幾乎總是會通過更好的可用性和適用性帶來更高的價值。
評論