吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MM32F5270:高速ADC和COMP及三合一控制案例

海闊天空的專欄 ? 來源: 靈動MM32MCU ? 作者: 靈動MM32MCU ? 2022-05-31 16:51 ? 次閱讀

漫談系列的上一期中介紹了外設間互聯矩陣 MindSwitch,用戶可以通過 MindSwitch 將系統中的常用外設進行同步。本期,筆者就來聊聊 MM32F5270 中的高性能模擬外設,并以一個典型的 3 合 1 控制的例子來對前面幾期的內容做一個綜合的講解。



1、高速 ADC

ADC 用于將模擬信號轉換成數字信號,是微控制器應用中必不可少的外設之一。

MM32F5270 中包含了 2 組高速 SAR 結構 ADC,每組 ADC 支持最高 12 位分辨率和最高 3MSPS 采樣率。其中 ADC1 支持 17 路外部通道(ADC1_INx),ADC2 支持 19 路外部通道(ADC2_INx),兩組 ADC 有 12 個通道是共用引腳的(ADC12_INx),因此總計可用的外部通道數是 17 + 19 – 12 = 24 通道。MM32F5270 中的具體 ADC 通道分布整理如下表:

圖片

ADC 的具體特點這里就不一一介紹,感興趣的讀者可以閱讀 MM32F5270 用戶手冊。(https://www.mindmotion.com.cn/download/products/UM_MM32F5270_SC.pdf

這里,對 MM32F5270 ADC 的部分創新特色做如下總結:

支持任意通道轉換

支持轉換通道的任意排列,最高可支持 16 個通道。這相對于僅能固定順序掃描的 ADC 而言有兩個優勢:一是實際應用中通道間的采樣順序可能會變化,二是實際應用中不同通道的采樣頻繁程度是不同的,而任意轉換序列 ADC 能夠很好的應對這些場景。下圖是一個例子,任意通道轉換模式下,前 5 次轉換中的通道編號是亂序的(任意可配的),且通道 12 和 通道 6 僅轉換 1 次,而通道 3 則轉換了 3 次。

圖片

每個任意通道都有獨立的結果寄存器

除了最近一次轉換的結果,MM32F5270 的每個任意通道都有一個獨立的結果寄存器,存儲對應通道最近一次的轉換結果。這樣用戶可以在所有ADC通道轉換完畢后在需要使用的時刻再讀取對應ADC通道的結果寄存器的值,而不需要每次轉換后都讀取,有效的降低了 DMACPU 對 ADC 的訪問次數和軟件復雜度。

支持自動注入模式

在任意通道轉換方式下,完成任意通道轉換后會自動開始注入通道轉換。每個 ADC 支持最高 4 路注入通道,同樣支持任意序列轉換。需要注意的是,注入通道的觸發源和常規通道的觸發源是獨立的,后文將要講到的 ADC 分時復用就需要用到這個功能。

支持最高 256 次硬件過采樣

MM32F5270 支持 2 到 256次可配的硬件過采樣,當配置為 256次時,ADC 將 256 次的采樣數值進行累加和硬件平均,并將結果存儲在一個 16 位寄存器中。很多應用為提高采樣準確度都需要進行多次采樣求平均的操作,硬件過采樣的優勢是不需要 DMA 或 CPU 的數據搬運和計算就能得到平滑濾波后的結果。

觸發源通過 MindSwitch 配置

通過 MindSwitch 配置的觸發可以實現更靈活可配的觸發,后文中的應用案例就將用到這一功能。


2、高速 COMP

比較器 COMP 用于比較兩個模擬信號的電平,比較器因其比較速度快和響應速度快等特點,在實際應用中常用于做過流保護等安全保護措施。

MM32F5270 中包含了 3 組高速比較器 COMP1~3,每組比較器都具備如下特點:

參考源豐富

帶窗口 Blanking 功能

支持輪詢

支持濾波

帶極性選擇功能

在實際應用中,往往是將外部的模擬信號和一個參考電壓值通過比較器進行比較,這個參考電壓值往往是一個固定電平,其可以從芯片外部輸入,也可以由芯片內部提供。MM32F5270 的比較器支持這兩種方式,并且提供了豐富的電壓參考源包括:

CRV 的輸出

DAC1 的輸出

DAC2 的輸出

這里,CRV 的全稱是 Comparator Reference Voltage,是一個低分辨率的電阻分壓網絡,可提供 1/20 到 16/20 共 16 檔參考電壓,其分壓源可以選擇是 VDDA 或者內部 1.2V 帶隙基準電壓。以 VDDA = 3V 為例,其分壓范圍為 150mV 到 2.4V,每 150mV 一檔,共 16 檔。

如果需要更精確的參考電壓,則可以采用 DAC1 或 DAC2 的輸出,這里的兩個 DAC 都是 12 位分辨率。以 VDDA = 3V 為例,其分壓范圍為 0V 到 3V,共 4096 檔,分辨率約為 0.7 mV(僅是理想分辨率,真實分辨率會更大)。

不論是 CRV 還是 DAC,其相較于外部輸入的最大優勢是其電壓可隨時調整。

每組 COMP 支持 4 路正向輸入和7路負相輸入,其中正向輸入全部由外部引腳輸入,而 7 路負相輸入中包含了 3 路外部引腳輸入、1 路 CRV 輸出、1 路 DAC1 輸出和 1 路 DAC2 輸出,總結如下表:

圖片

上面的提到的 2 組 DAC 除了可以為比較器提供參考電壓外,它們還帶有一定的輸出驅動能力,支持最快 1MSPS 轉換率,可以不需要外部放大器而直接驅動負載,非常適用于一些音頻應用。此外,DAC 還支持硬件自動生成三角波,用戶也可以通過精確的觸發控制和數據輸入來通過 DAC 生成更復雜的正弦波或任意波形。

3、應用場景:3 合 1 控制

經過上述介紹,相信讀者對于 MM32F5270 中的高性能模擬外設已經有所了解。接下來,筆者就將前幾期介紹內容和本期內容結合在一起,通過一個常見的應用案例來講解。

實際應用中的一個趨勢是系統的集成度越來越高,很多嵌入式系統會將原本分布在多個 MCU 中的功能集成在同一個主控 MCU 中,在汽車、家電和消費電子領域中都能觀察到這種趨勢,這樣做能夠帶來開發便捷、節省空間、節省成本、節省線束等多種好處,通常可以把這種多功能合并的結構叫做多合一控制,舉幾個典型的例子:

2 合 1

2 合 1 典型場景是雙電機控制,具體應用包括洗烘一體洗衣機中的滾筒電機 + 熱泵風扇控制、割草機中的割草電機 + 行進電機控制、電動三輪車中的差速電機控制等等。對于此類應用,靈動的 MM32SPIN0280 就非常適合,其配備了96MHz M0 內核、硬件除法和開方、雙 3MSPS ADC + 雙高級定時器、多路運放和比較器,感興趣的讀者可以點擊鏈接進一步了解。

3 合 1

3 合 1 典型的應用是空調外機中的 PFC + 壓縮機 + 風機控制,對于此類應用,其對于 CPU 性能的要求往往更高,因此,目前市面上的方案往往是 Cortex-M4 及以上性能的 MCU 或 DSP 來實現。MM32F5270 配備了 120MHz 的 Armv8 “星辰”處理器,帶有 DSP 和 FPU 擴展,單位主頻性能相較于 Cortex-M4 提升約 20%,并配有多并發的總線架構、高效互聯系統 MindSwitch、多路定時器以及本期重點講解的高性能模擬外設,非常適合用于此類 3 合 1 的應用場景。

4 合 1

典型的應用是四旋翼飛行器的四個螺旋槳控制,甚至可以將電機控制和飛控進行合并,此類應用往往需要 Cortex-M7 或以上性能的 MCU 或 MPU 來實現。

這里,筆者就以空調外機 3 合 1 控制這個典型應用來說明 MM32F5270 的高性能配置。

空調外機的主體部分包括 1 路 PFC、1 路壓縮機和 1 路風機。這里,對這3個模塊的參數做如下約束:

PFC

采用 Boost 結構,通過 1 路 PWM 驅動 MOS 管以控制功率因數校正網絡,PWM 周期為 64KHz,電流環為 32KHz,帶過流保護。

壓縮機

永磁同步電機,采用無感 FOC 控制,單電阻采樣,PWM 周期和電流環均為 16KHz,帶過流保護。

風機

永磁同步電機,采用無感 FOC 控制,單電阻采樣,PWM 周期和電流環均為 16KHz,帶過流保護。

其中,Boost PFC 的原理圖如下:

圖片

單電阻無感 FOC 電機控制原理圖如下:

圖片

根據上述約定:每路電機需要 3 相互補 PWM 來驅動,1 路高速 ADC 去做電流采樣,多個定時器通道去控制 ADC 的采樣點,以及 1路比較器做過流保護;PFC 則需要 1 路 PWM 輸出去做功率因數校正,1 路高速 ADC 去做電流采樣,1個定時器通道去控制 ADC 的采樣點,以及 1 路比較器做過流保護。

這里,考慮到兩路電機的 PWM 周期完全一致,因此可以很容易的將兩路電機的處理(包括采樣和計算)在時序上分割開,這樣, 兩路電機就可以共用一組 ADC 進行分時采樣,而另一組 ADC 可以留給 PFC 使用。

MM32F5270 中配置了 2 組高級定時器(TIM1 & TIM8)、4 組通用定時器(TIM2~5)、3 組比較器(COMP1~3)、2 組獨立 DMA(DMA1~2,可分別用于兩組 ADC),并通過 MindSwitch 和 CLU 將上述外設進行精確同步,能夠滿足上述資源需求。資源分配整理如下表:

圖片

其對應的系統框圖如下圖所示:

圖片

一種可行的時序分配和 PWM 波形如下圖所示。

這里,因 TIM1 和 TIM8 的 PWM 周期都是 16KHz,因此,TIM1 和 TIM8 可以做 180° 相位差的嚴格同步。這樣電機1(M1)和電機2(M2)的采樣可以分時復用 ADC1 而不互相干擾。CPU 也可以分時處理 M1 和 M2 的電流環而不互相干擾。

這里電機 1 的電流采樣點通過任意通道的觸發控制(ADC1_TRIG),而電機 2 的電流采樣點通過自動注入通道的觸發控制(ADC1_JTRIG)。

TIM3 的 PWM 周期是 64KHz,而電流環是 32KHz,因此,其剛好可以利用 M1 和 M2 電流環的處理間隙做 PFC 的電流環。當然,這也得益于 “星辰”處理器的高性能運算能力,有足夠的 CPU 帶寬可以用于三路算法的運算。

圖片

此時,MindSwitch 和 CLU 的內部連接如下圖所示:

圖片

可以看到,上述 3 合 1 的應用場景用到了 MM32F5270 的多個模塊:

高性能“星辰”處理器

MindSwitch 和 CLU

2 組高速 ADC

3 組高速比較器

2 組高級定時器

1 組通用定時器

2 組 DAC

MM32F5270 以高性能運算能力和豐富的外設資源,很好的滿足了 3 合 1 應用的需求。



4、小結 & NEXT

本文介紹了MM32F5270 中的 ADC、DAC 和比較器等模擬外設,并結合前幾期的知識點,以 3 合 1 的應用實例來說明了這些高性能外設間如何協同配合來滿足復雜應用的需求。

來源:靈動MM32MCU

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • dac
    dac
    +關注

    關注

    43

    文章

    2309

    瀏覽量

    191569
  • 高速ADC
    +關注

    關注

    0

    文章

    47

    瀏覽量

    28635
  • MM32
    +關注

    關注

    1

    文章

    106

    瀏覽量

    808
收藏 人收藏

    評論

    相關推薦

    MM32F5270平臺ADC注入通道的單周期采樣的實現

    MM32F5270ADC可配置4個注入通道來擴展轉換通道,那么可進行轉換的通道最多可達20個。
    的頭像 發表于 06-01 17:25 ?1539次閱讀
    <b class='flag-5'>MM32F5270</b>平臺<b class='flag-5'>ADC</b>注入通道的單周期采樣的實現

    移動電源方案究竟硬件三合一還是軟件三合一?

    變化靈活,已經成為發展趨勢。但是早期的軟件三合一問題更大,因為要依靠adc來檢測和控制dc-dc過程,如果不做特別的優化,個主循環下來10ms很正常。而這個時間段內,如果負載突然接觸
    發表于 09-15 22:57

    同步整流 移動電源三合一問題

    了"山寨"的標簽。 軟件三合一,由于容易實現同步整流,效率高,發熱低,而且功能變化靈活,已經成為發展趨勢。但是早期的軟件三合一問題更大,因為要依靠adc來檢測和控制dc-dc過程,如果
    發表于 09-18 14:32

    移動電源硬件三合一方案和軟件三合一方案對比

    了"山寨"的標簽。軟件三合一,由于容易實現同步整流,效率高,發熱低,而且功能變化靈活,已經成為發展趨勢。但是早期的軟件三合一問題更大,因為要依靠adc來檢測和控制dc-dc過程,如果不
    發表于 10-21 10:40

    基于MM32F5270控制器的I2S音頻播放

    MM32F5270 系列控制器支持 I2S 總線接口,本章節在接下來會對 MM32F5270 I2S進行介紹,并使用 MM32F5270 和 CS4344 芯片進行 I2S 通信來演示
    的頭像 發表于 09-16 10:39 ?2451次閱讀

    MM32F5270】Keil開發環境搭建

    本文是對MM32F5270相關的靈動官網資料和社區現有幾篇環境搭建帖的整理和總結。詳細且完整的記錄了——如何從零搭建MM32F5270 Keil開發環境以及如何編譯運行MM32F5270 SDK中
    的頭像 發表于 11-06 16:14 ?2965次閱讀
    【<b class='flag-5'>MM32F5270</b>】Keil開發環境搭建

    MM32F5270 產品手冊(中文版)

    MM32F5270 產品手冊(中文版)
    發表于 02-23 18:45 ?0次下載
    <b class='flag-5'>MM32F5270</b> 產品手冊(中文版)

    MM32F5270 產品手冊(英文版)

    MM32F5270 產品手冊(英文版)
    發表于 02-23 18:45 ?0次下載
    <b class='flag-5'>MM32F5270</b> 產品手冊(英文版)

    MM32F5270 用戶手冊(中文版)

    MM32F5270 用戶手冊(中文版)
    發表于 02-23 18:46 ?0次下載
    <b class='flag-5'>MM32F5270</b> 用戶手冊(中文版)

    MM32F5270 用戶手冊(英文版)

    MM32F5270 用戶手冊(英文版)
    發表于 02-23 18:46 ?0次下載
    <b class='flag-5'>MM32F5270</b> 用戶手冊(英文版)

    MM32F5270 勘誤表(中文版)

    MM32F5270 勘誤表(中文版)
    發表于 02-23 18:47 ?0次下載
    <b class='flag-5'>MM32F5270</b> 勘誤表(中文版)

    MM32F5270 勘誤表(英文版)

    MM32F5270 勘誤表(英文版)
    發表于 02-23 18:48 ?0次下載
    <b class='flag-5'>MM32F5270</b> 勘誤表(英文版)

    MM32F5270平臺ADC注入通道的單周期采樣的實現

    MM32F5270ADC可配置4個注入通道來擴展轉換通道,那么可進行轉換的通道最多可達20個。
    的頭像 發表于 05-26 09:31 ?764次閱讀
    <b class='flag-5'>MM32F5270</b>平臺<b class='flag-5'>ADC</b>注入通道的單周期采樣的實現

    MM32F5270平臺ADC注入通道的單周期采樣的實現

    MM32F5270ADC可配置4個注入通道來擴展轉換通道,那么可進行轉換的通道最多可達20個。
    的頭像 發表于 05-26 09:32 ?984次閱讀
    <b class='flag-5'>MM32F5270</b>平臺<b class='flag-5'>ADC</b>注入通道的單周期采樣的實現

    基于MM32F5270的I2S音頻播放

    基于MM32F5270的I2S音頻播放
    的頭像 發表于 10-30 17:13 ?1319次閱讀
    基于<b class='flag-5'>MM32F5270</b>的I2S音頻播放
    百家乐官网连跳规律| 姚记娱乐城信誉最好| 大发888游戏安装失败| 日博| 双辽市| 百家乐官网www| 风水24山里的四维八干| 马牌百家乐官网的玩法技巧和规则 | 夏津县| 百家乐官网娱乐场开户注册| 澳门百家乐常赢打法| 真人游戏角色| 莱芜市| 威斯汀百家乐官网的玩法技巧和规则 | 现场百家乐平台源码| 大发888为什么打不开| 温宿县| 大集汇百家乐官网的玩法技巧和规则 | 百家乐官网澳门技巧| 百家乐如何看面| 百家乐必胜绝| 谢通门县| 怎样打百家乐官网的玩法技巧和规则 | 大丰收百家乐的玩法技巧和规则 | KK百家乐官网的玩法技巧和规则 | 柞水县| 娱乐网百家乐官网的玩法技巧和规则| 澳门1百家乐网| 星空棋牌大厅下载| 申博百家乐官网公式软件| 百家乐技巧-百家乐开户指定代理网址 | 百家乐外挂程式| 新全讯网22335555| 百家乐官网可以算牌么| 澳门百家乐打缆| 大发888投注大发娱乐| 百家乐官网系统足球博彩通| 百家乐线上代理网站| 大赢家娱乐| 百家乐官网永利娱乐场开户注册| 月亮城百家乐的玩法技巧和规则|