色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

一文詳解HPM6000系列PWM定時器模塊

331062281 ? 來源:先楫半導體HPMicro ? 2023-05-30 14:36 ? 次閱讀

概 述

在進行電機類、電源類應用開發時,如何使用PWM定時器模塊靈活、高效的實現所需 PWM波形的輸出,是眾多開發者關注的問題。在上篇文章里,我們介紹了PWM定時器模塊內的一些概念,以及如何生成普通PWM的過程。本篇內容將繼續介紹互補PWM、同步 PWM、錯相 PWM以及PWM如何使用ACMP封波等內容。

互補PWM

關于相同的代碼部分,此處不再重復講解,請參考《上篇》的普通PWM的講解。

14bfcf74-feb3-11ed-90ce-dac502259ad0.jpg

14d6ca80-feb3-11ed-90ce-dac502259ad0.jpg

此處設置了 3 個比較器:cmp_config[0]與 cmp_config[1]用來生成中心對稱 PWM,cmp_config[2]作為 PWM 影子寄存器的更新事件源,當 CNT 等于 cmp_config[2]時,影子寄存器寫入寄存器內生效。

14e82afa-feb3-11ed-90ce-dac502259ad0.jpg

互補 PWM 對的配置,配置左死區寬度為 8000 個 half_clock,右死區寬度為 16000 個 half_clock。

1500a79c-feb3-11ed-90ce-dac502259ad0.jpg

設置 cmp_config[2]作為 PWM 影子寄存器的更新事件源,啟動計數器。

1518721e-feb3-11ed-90ce-dac502259ad0.jpg

通過修改 CMP0 與 CMP1 的值,每 100ms 更新一次互補 PWM 占空比。運行結果如下:

152de09a-feb3-11ed-90ce-dac502259ad0.jpg

互補PWM

同步PWM

本節實驗設計:使用 PWM0 的比較器比較事件去做 PWM1、PWM2、PWM3 的同步事件。故輸出波形上看,PWM1、PWM2、PWM3 應完全同步,PWM0 與其則不同步。代碼如下:

15475fde-feb3-11ed-90ce-dac502259ad0.jpg

使能 4 個 PWM 定時器的 SYNCI 信號

15693c94-feb3-11ed-90ce-dac502259ad0.jpg

設置 STA 與 RLD。

15872966-feb3-11ed-90ce-dac502259ad0.jpg

cmp_config[0]與 cmp_config[1]用來做中心對稱 PWM 所需的比較器。

15a67866-feb3-11ed-90ce-dac502259ad0.jpg

cmp_config[2]用來做使 PWM 影子寄存器生效的比較器。

15bd57fc-feb3-11ed-90ce-dac502259ad0.jpg

cmp_config[3]設置在 PWM0 CH8 上,用來產生比較事件,同步 PWM1、PWM2、PWM3。

15d506ae-feb3-11ed-90ce-dac502259ad0.jpg

互補 PWM 的死區設置與輸出設置。

15e9b252-feb3-11ed-90ce-dac502259ad0.jpg

設置 PWM0 CH0 CH1 互補輸出,同時設置 PWM1 CH8 使用 CMP3 產生比較事件。

160ba9ca-feb3-11ed-90ce-dac502259ad0.jpg

設置 PWM1、PWM2、PWM3 互補輸出。

162fcda0-feb3-11ed-90ce-dac502259ad0.jpg

啟動計數器。

以下代碼是對互聯管理器的配置。配置 PWM0 CH8 的下降沿輸出到TRGM0_OUTX0 上,同時 TRGM0_OUTX0 作為 TRGM1、TRGM2、TRGM3的輸入,路由到 PWM1、PWM2、PWM3 的 SYNCI 信號上。

1647908e-feb3-11ed-90ce-dac502259ad0.jpg

波形如下:

1669d0c2-feb3-11ed-90ce-dac502259ad0.jpg

可見 PWM1、PWM2、PWM3 是完全同步的,PWM0 則與其有 20ns 的不同步。

同步PWM

錯相 PWM

本節實驗設計:使用 SYNT 實現 PWM0、PWM1、PWM2、PWM3 錯相90°。代碼如下:

168bcbdc-feb3-11ed-90ce-dac502259ad0.jpg

16b106e0-feb3-11ed-90ce-dac502259ad0.jpg

16cef268-feb3-11ed-90ce-dac502259ad0.jpg

16e530c8-feb3-11ed-90ce-dac502259ad0.jpg

16ff0e30-feb3-11ed-90ce-dac502259ad0.jpg

以上代碼請參考上文 “同步PWM” 章節的講解,主要目的是生成 4 對互補PWM。

17189666-feb3-11ed-90ce-dac502259ad0.jpg

配置 TRGM,將 SYNT CH0 的比較事件路由到 PWM0 的 SYNCI 信號上,將 SYNT CH1 的比較事件路由到 PWM1 的 SYNCI 信號上,將 SYNT CH2 的21 / 24先楫半導體比較事件路由到 PWM2 的 SYNCI 信號上,將 SYNT CH3 的比較事件路由到PWM3 的 SYNCI 信號上。

173593b0-feb3-11ed-90ce-dac502259ad0.jpg

配置 SYNT,分別設置 SYNT CH0 比較器比較值為 0,SYNT CH1 比較器比較值為 reload/4,SYNT CH2 比較器比較值為 reload/2,SYNT CH4 比較器比較值為 reload*3/4。

波形如下:

1753bf48-feb3-11ed-90ce-dac502259ad0.jpg

錯相PWM

PWM+ACMP 封波

本節實驗設計:使用兩個片上 ACMP 對目標模擬電壓進行監控,當電壓超過 1.65V 時停止 PWM 輸出。其基本思路為,將 ACMP 的輸出信號通過互聯管理器 TRGM 路由到 PWM 的內部 Fault 信號上,當 Fault 信號有效時 PWM波停止輸出(故障保護功能)。

代碼如下:

176d5fac-feb3-11ed-90ce-dac502259ad0.jpg

初始化 PWM 引腳,初始化 DAC 時鐘與引腳(使用 DAC 輸出模擬電壓到ACMP 上模擬過壓)。

1786cd70-feb3-11ed-90ce-dac502259ad0.jpg

輸出互補 PWM 波。

179a1056-feb3-11ed-90ce-dac502259ad0.jpg

設置 Fault 信號高電平有效;使能 FaultI0 與 FaultI1 有效(PWM 共 4 內2 外 fault 信號,哪些信號生效可選)。

17b10766-feb3-11ed-90ce-dac502259ad0.jpg

設置 DAC 輸出為直接模式,12bit DAC 輸出范圍 0~4095,4030 約為3.247V。該部分代碼請直接參考 DAC 例程。

17c8d6b6-feb3-11ed-90ce-dac502259ad0.jpg

配置 ACMP,使能 ACMP2 與 ACMP3。

17dfdd52-feb3-11ed-90ce-dac502259ad0.jpg

配置互聯管理器,將 ACMP2 與 ACMP3 的輸出信號路由到 PWM 的FaultI0 與 FaultI1 上去。

17fb6734-feb3-11ed-90ce-dac502259ad0.jpg

acmp_config 函數源碼如下:

180bba58-feb3-11ed-90ce-dac502259ad0.jpg

代碼中將 ACMP 的正極輸入選擇為 IO 引腳,負極輸入選擇為 ACMP 內部專用 DAC,參考電壓設置為 0x80,即 1.65V。

當 IO 引腳電壓 3.247V 時(來自于外設 DAC 輸出),ACMP 正極電壓超過負極電壓 1.65V,ACMP 輸出有效,為高電平;經過互聯管理器路由到PWM 的 Fault 信號上;由于 PWM 模塊內配置了 Fault 信號為高電平有效,因此此時 Fault 信號有效,PWM 波形停止輸出。

當 IO 引腳電壓 0V 時(將引腳與 GND 短接),ACMP 正極電壓未超過負極電壓 1.65V,ACMP 輸出無效,PWM 波形正常輸出。

PWM+ACMP

小 結

本文首先介紹了 PWM 定時器內各模塊的基本概念與功能,而后對 PWM的使用由淺入深依次以代碼實例進行講解。可以看到,PWM 的使用只要配置好 STA、RLD、CMPx、影子寄存器等即可實現輸出;如果有同步需求或與其它外設協同使用需求,則主要通過互聯管理器 TRGM 的配置進行實現。

比較經典的例程還包括使用 PWM 觸發 ADC 采樣,先楫半導體 SDK 中已經有完整的實例與代碼,各位開發者可以到官網下載研究,并歡迎大家多多交流。

“先楫半導體”(HPMicro)是一家致力于高性能嵌入式解決方案的半導體公司產品覆蓋微控制器微處理器和周邊芯片,以及配套的開發工具和生態系統。公司成立于2020年6月,總部坐落于上海市張江高科技園區,并在天津、深圳和蘇州均設立分公司。核心團隊來自世界知名半導體公司管理團隊,具有15年以上,超過20個SoC的豐富的研發及管理經驗。

先楫半導體以產品質量為本,所有產品均通過嚴格的可靠性測試。目前已經量產的高性能通用MCU產品系列HPM6700/6400、HPM6300及HPM6200,性能領先國際同類產品,并完成AEC-Q100認證,全力服務中國工業,汽車和能源市場。

審核編輯:湯梓紅

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

    關注

    7

    文章

    2695

    瀏覽量

    47433
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5181

    瀏覽量

    213807
  • 比較器
    +關注

    關注

    14

    文章

    1650

    瀏覽量

    107185
  • 電機
    +關注

    關注

    142

    文章

    9001

    瀏覽量

    145339
  • 定時器
    +關注

    關注

    23

    文章

    3246

    瀏覽量

    114720
收藏 人收藏

    評論

    相關推薦

    請問HPM6000系列CPU中斷有何特點,注意事項有哪些?

    HPM6000系列CPU中斷有何特點,注意事項有哪些?
    發表于 05-26 06:19

    請問HPM6000系列MCU如何使用硬件DSP單元?

    HPM6000系列MCU如何使用硬件DSP單元?
    發表于 05-26 06:18

    請問HPM6000系列MCU如何使用硬件浮點數單元?

    HPM6000系列MCU如何使用硬件浮點數單元?
    發表于 05-26 06:49

    HPM6000系列微控制的片上各類SRAM使用指南

    HPM6000系列微控制片上SRAM使用指南
    發表于 06-01 06:19

    HPM6000系列微控制片上閃存使用指南

    HPM6000系列MCU片上Flash使用指南
    發表于 06-01 06:20

    HPM6000系列微控制BOOT模式的說明資料

    HPM6000系列微控制BOOT MODE指南
    發表于 06-01 08:43

    HPM6000系列微控制片上閃存使用指南

    HPM6000系列MCU片上Flash使用指南
    發表于 06-02 08:54

    HPM6000系列芯片內部模擬地和數字地

    HPM6000系列芯片內部模擬地和數字地是隔離開的嗎?
    發表于 07-10 17:49

    HPM6000系列PWM波盡在掌握

    在進行電機類、電源類應用開發時,如何使用PWM定時器模塊靈活、高效的實現所需 PWM波形的輸出,是眾多開發者關注的問題。在
    的頭像 發表于 05-30 14:36 ?638次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b><b class='flag-5'>PWM</b>波盡在掌握

    HPM6000系列微控制 CMSIS DAP調試器使用指南

    在上海先楫提供的HPM系列MCU評估套件上,多數集成了基于FTDI的FT2232芯片的板載調試,方便了開發人員直接調試并評估HPM6000系列
    的頭像 發表于 06-19 17:02 ?3864次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b>微控制<b class='flag-5'>器</b> CMSIS DAP調試器使用指南

    HPM6000系列 ADC 相關硬件設計教程

    本文將為大家展示國產芯片HPM6000系列ADC性能出色的測試結果并為您提供了與HPM6000系列微控制的模數轉換
    的頭像 發表于 07-22 11:18 ?1302次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b> ADC 相關硬件設計教程

    HPM6000系列微控制的BOOT 模式的說明以及相應的外部電路設計建議

    1.簡介HPM6000系列MCU目前提供了不同的啟動方式,方便客戶在研發生產等不同階段使用。本文提供了HPM6000系列微控制的BOOT模
    的頭像 發表于 07-21 15:15 ?1693次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b>微控制<b class='flag-5'>器</b>的BOOT 模式的說明以及相應的外部電路設計建議

    應用分享| HPM6000系列片上SRAM揭秘

    HPM6000系列微控制上,集成了大容量的SRAM,可供用戶存放代碼,數據等,滿足各類應用的需要。其中片上SRAM有多種分類,包括RISC-VCPU的指令和數據
    的頭像 發表于 09-19 11:02 ?1885次閱讀
    應用分享| <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b>片上SRAM揭秘

    看完這篇,HPM6000系列PWM波盡在掌握(上)

    概述在進行電機類、電源類應用開發時,如何使用PWM定時器模塊靈活、高效的實現所需PWM波形的輸出,是眾多開發者關注的問題。先楫半導體已發布的HPM6
    的頭像 發表于 05-30 10:03 ?1411次閱讀
    看完這<b class='flag-5'>一</b>篇,<b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b><b class='flag-5'>PWM</b>波盡在掌握(上)

    HPM6000系列微控制DSP/FFT使用介紹

    電子發燒友網站提供《HPM6000系列微控制DSP/FFT使用介紹.pdf》資料免費下載
    發表于 09-19 15:21 ?1次下載
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b>微控制<b class='flag-5'>器</b>DSP/FFT使用介紹
    主站蜘蛛池模板: 亚洲色图在线观看视频| 亚洲精品高清在线观看| 99久久精品国产交换| 久久AV国产麻豆HD真实| 亚洲成A人片在线观看中文不卡| 动漫成人片| 日本不卡一二三| CHINA篮球体育飞机2023| 美女脱了内裤张开腿让男人桶到爽| 夜蒲团之5阳性之教| 好爽别插了无码视频| 无毒成人社区| 国产精品免费一区二区区| 色欲色香天天天综合| 成人免费精品视频| 人妻兽虐曲| 赤兔CHINESE最新男18GUY | 亚洲 视频 在线 国产 精品| 国产WW久久久久久久久久| 日韩 国产 欧美视频二区| 白白操在线视频| 日本十八禁无遮无挡漫画| 成年人视频免费在线播放| 人人澡人人擦人人免费| old老男人野外树林tv| 翘臀后进美女白嫩屁股视频| 9LPORM原创自拍达人| 欧美video巨大粗暴18| brazzers欧美最新版视频| 亲女乱h文小兰第一次| 成品片a免人看免费| 入禽太深免费视频10| 国产精品97久久AV麻豆| 武汉美女洗澡| 国内高清在线观看视频| 亚洲欲色欲色XXXXX在线AV| 久久国产欧美日韩精品免费| 在线视频 国产精品 中文字幕| 麻豆一区二区免费播放网站| ⅹxx日本护土| 日韩欧美 亚洲视频|