前言
在伺服變頻器應(yīng)用中,會用到 Singma-Delta ADC 進(jìn)行采樣,這時候如果客戶使用到了STM32 自帶的 DFSDM(Digital filter for sigma delta modulators)模塊進(jìn)行濾波,后面會與PWM 輸出相關(guān)起來,這樣有 Break 的封波需求,本文就這個功能以及注意事項做說明,使用STM32H723 芯片做測試驗證。
配置 DFSDM 做為 TIM1 的封波信號
配置 DFSDM 的 Break 源,一般是用模塊的 Anolog 的 watchdog 做為 break 的產(chǎn)生源,當(dāng)然這邊可以選擇 Filter 單元的輸出做為源,也可以使用 WDT 自己的 Filter 做為源。
測試效果
連續(xù)對寄存器輸入相同數(shù)據(jù) Test_Value ,設(shè)定上限是 0x400*filter,下限是 0x50*filter。
功能限制
因為 DFSDM 的輸出 break 信號不同于外部管腳的輸入,普通的 TIM1 的管腳 break 是電平判別,而 DFSDM 的 break 嚴(yán)格意義上是沿的判別,因此 TIM1 的 break 濾波功能不能用于DFSDM 的 break 源,因此 BRK Filter 在本例中應(yīng)該配置為 0,配置為大于 1 的值就沒有 Break的效果。
結(jié)論
本例中詳細(xì)介紹了如何配置 DFSDM 的輸出做為 TIM1 的封波功能,并且強調(diào)不能對來自DFSDM 的 break 源使用 TIMER 的 break 濾波,上面配置供客戶參考。另外本例子中 DFSDM 的配置是測試模式,實際使用過程中客戶會使用到串行輸入功能,詳細(xì)使用說明可參考 AN4990 以及芯片的參考手冊。