0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

YTM32的增強(qiáng)型定時(shí)器eTMR外設(shè)模塊簡(jiǎn)介

冬至子 ? 來源:安德魯?shù)脑O(shè)計(jì)筆記本 ? 作者:安德魯蘇 ? 2023-10-31 14:18 ? 次閱讀

eTMR外設(shè)簡(jiǎn)介

YTM32微控制器上集成的eTMR模塊,是一個(gè)定時(shí)器外設(shè),下轄多至8個(gè)通道,除了可以進(jìn)行基本的周期計(jì)數(shù)外,還可以實(shí)現(xiàn)硬件輸出比較(PWM)、輸入捕獲的功能,有一些特別的eTMR示例,還支持正交編碼器的功能。

YTM32微控制器上集成了定時(shí)器外設(shè)模塊還有TMR、pTMR、LPTMR、RTC等,其中eTMR大多用于產(chǎn)生PWM信號(hào),或者通過輸入捕捉測(cè)量方波脈沖信號(hào)的寬度。大多用在電機(jī)相關(guān)的應(yīng)用中。

每款芯片集成eTMR實(shí)例的數(shù)量不同,以YTM32B1ME05為例,總共6個(gè)eTMR,并且每個(gè)eTMR實(shí)例的部分功能也做了裁剪。如圖x所示。

image.png

圖x YTM32B1ME05上集成的6個(gè)eTMR外設(shè)

eTMR工作機(jī)制

系統(tǒng)框圖

微控制器定時(shí)器外設(shè)模塊的核心,是一個(gè)計(jì)數(shù)器。所謂通道,實(shí)際上是可以匹配計(jì)數(shù)器某個(gè)計(jì)數(shù)值的事件,用戶可以配置在特定的情況下產(chǎn)生事件(例如,對(duì)外輸出電平,對(duì)內(nèi)產(chǎn)生觸發(fā)信號(hào)等)對(duì)應(yīng)輸出比較的功能;也可以配置被外部的同步信號(hào)觸發(fā),將發(fā)生事件的時(shí)刻快照到通道的數(shù)值寄存器中,對(duì)應(yīng)輸入捕獲的功能。因此,帶有多通道的定時(shí)器外設(shè)大多設(shè)計(jì)得相似,可有系統(tǒng)框圖,如圖x所示。

image.png

圖x 常規(guī)帶有多通道的定時(shí)器外設(shè)系統(tǒng)運(yùn)行框圖

引腳與信號(hào)

eTMR外設(shè)對(duì)外有一些信號(hào)綁定到芯片的引腳上。如表x所示。

image.png

計(jì)數(shù)器與時(shí)鐘

定時(shí)器外設(shè)引擎的基本核心是一個(gè)可以由外部時(shí)鐘源驅(qū)動(dòng)計(jì)數(shù)的定時(shí)器。

eTMR外設(shè)涉及到兩個(gè)時(shí)鐘源:驅(qū)動(dòng)訪問寄存器的外設(shè)總線時(shí)鐘,和驅(qū)動(dòng)定時(shí)器計(jì)數(shù)的功能時(shí)鐘。有一些型號(hào)的芯片,可能會(huì)設(shè)計(jì)可以接入到eTMR的功能時(shí)鐘的不同時(shí)鐘源。例如,可以直接將PLL倍頻后的高速時(shí)鐘直接送入定時(shí)器外設(shè),以獲取更高的控制精度,也可以將低功耗模式下能夠繼續(xù)存活的低速時(shí)鐘源接入定時(shí)器的時(shí)鐘源,從而可以芯片的低功耗模式下繼續(xù)自行工作。但在本例的YTM32B1ME05微控制器上,是將SCU模塊中產(chǎn)生的FAST_BUS_CLK固定接入eTMR的功能時(shí)鐘源。如圖x所示。這在IPC模塊的章節(jié)中的表Table 13.1 IP Clock Control Table的備注里,也有相關(guān)的描述。

eTMR module clock source is FAST_BUS_CLK default, also can use TCLK through configuring in the eTMR register, and TCLK frequency must be less than the half of FAST_BUS_CLK.

image.png

圖x FAST_BUS_CLK時(shí)鐘源的生成樹

在eTMR外設(shè)模塊內(nèi)部,還可以通過配置寄存器eTMR_CTRL[CLKSRC],選擇使用計(jì)數(shù)的功能時(shí)鐘源,來自IPC模塊的FAST_BUS_CLK,或是從eTMR_TCLK_IN0引腳接入的外部時(shí)鐘源。而在CIM外設(shè)中,可以通過配置寄存器CIM_ETMROPT0[ETMRx_EXTCLK_SEL],選擇eTMR_TCLK_IN0/eTMR_TCLK_IN1/eTMR_TCLK_IN2其中之一生效。

eTMR的計(jì)數(shù)時(shí)鐘信號(hào)CLK_src進(jìn)入eTMR外設(shè)后,還需要經(jīng)過一個(gè)7位的分頻器,才會(huì)送入eTMR的計(jì)數(shù)器驅(qū)動(dòng)計(jì)數(shù)CLK_cnt。這個(gè)分頻器的分頻因子,是在寄存器eTMR_CTRL[CLKPRS]中設(shè)定的。有計(jì)數(shù)器計(jì)數(shù)時(shí)鐘頻率的計(jì)算公式如下:

經(jīng)過分頻的時(shí)鐘信號(hào)送入計(jì)數(shù)器,驅(qū)動(dòng)計(jì)數(shù)。大多數(shù)eTMR的內(nèi)部計(jì)數(shù)器是16位的(eTMR3是32位),一旦啟動(dòng)定時(shí)器(軟件設(shè)置寄存器eTMR_CTRL[EN]=1)并等到Load事件(標(biāo)志位eTMR_SYNC[LDOK]=1),則計(jì)數(shù)器將會(huì)從寄存器eTMR_INIT載入初值到計(jì)數(shù)器寄存器eTMR_CNT中(eTMR_SYNC[INITCNT]=1)或是直接向eTMR_CNT寄存器中寫初值,開始遞增計(jì)數(shù)。軟件可以從計(jì)數(shù)器寄存器eTMR_CNT中實(shí)時(shí)讀到當(dāng)前計(jì)數(shù)器的值。當(dāng)計(jì)數(shù)值達(dá)到寄存器eTMR_MOD中設(shè)定的值時(shí),會(huì)觸發(fā)Overflow溢出事件(可產(chǎn)生中斷,也可產(chǎn)生觸發(fā)信號(hào)),起eTMR_STS[TOF]標(biāo)志位,然后定時(shí)器計(jì)數(shù)器直接回返至寄存器eTMR_INIT的值。如此,形成計(jì)數(shù)周期。如圖x所示。

image.png

圖x eTMR的計(jì)數(shù)器溢出事件

在一些應(yīng)用場(chǎng)景中(例如電機(jī)控制),需要多個(gè)eTMR配合,使用相同頻率的時(shí)鐘源,并且使用相同相位的時(shí)鐘信號(hào)。此時(shí),就需要多個(gè)eTMR外設(shè)實(shí)例同步啟動(dòng),為此,eTMR設(shè)計(jì)了GTB功能(Global Time Base)。所有設(shè)定了寄存器eTMR_CTRL[GLOBEN]=1的eTMR實(shí)例將會(huì)并如GTB的集合,其中設(shè)定eTMR_SYNC[GLOB]=1的eTMR實(shí)例將作為主機(jī),其余eTMR實(shí)例為從機(jī),由主機(jī)eTMR控制GTB集合中所有eTMR的啟動(dòng)。

eTMR外設(shè)可以配置成輸出比較模式、輸入捕獲模式、專用PWM模式和編碼器模式:

  • 當(dāng)為編碼器模式時(shí),整個(gè)eTMR不能使用其他模式的功能。
  • 單個(gè)通道只能配置成輸出比較模式、輸入捕獲模式或?qū)S肞WM模式中的一種,但多個(gè)不同模式的通道可以在同一個(gè)eTMR中共存。

輸出比較模式

輸出比較功能多用于產(chǎn)生簡(jiǎn)單的PWM信號(hào)。

設(shè)置通道控制寄存器eTMR_CHn_CTRL[CHMODE]=1,該通道為輸出比較模式。輸出比較模式下,通道引腳為輸出方向,引腳電平的初值由寄存器eTMR_CHn_CTRL[CHINIT]eTMR_CHn_CTRL[CHPOL]指定,在匹配事件發(fā)生后,輸出指定的電平(由eTMR_CHn_CTRL[VAL0CMP]eTMR_CHn_CTRL[VAL1CMP]確定)。

不同于以往簡(jiǎn)單的多通道定時(shí)器外設(shè)的設(shè)計(jì),eTMR為每個(gè)通道設(shè)計(jì)了兩個(gè)匹配值寄存器eTMR_CHn_VAL0eTMR_CHn_VAL1。當(dāng)設(shè)定寄存器eTMR_CHn_CTRL[CHMODE]=2時(shí),該通道被設(shè)定為輸出比較模式。寄存器eTMR_CHn_VAL0eTMR_CHn_VAL1各自設(shè)定一個(gè)匹配值,控制該通道綁定的引腳輸出指定電平(eTMR_CHn_CTRL[VAL0CMP]eTMR_CHn_CTRL[VAL1CMP]的配置值,可以指定在匹配時(shí)輸出高電平、低電平或是翻轉(zhuǎn))。以此可以產(chǎn)生PWM信號(hào)。

image.png

圖x eTMR的輸出比較機(jī)制

通過配置定時(shí)器的MOD,可以指定輸出PWM信號(hào)的周期。在PWM信號(hào)的周期內(nèi)部,通過配置通道的VAL0和VAL1,可以控制PWM信號(hào)的相位和占空比。

PWM模式

雖然輸出比較模式可以用于產(chǎn)生簡(jiǎn)單的PWM信號(hào),但eTMR仍然設(shè)計(jì)了專門的PWM模式(寄存器eTMR_CHn_CTRL[CHMODE]=1)。在專門的PWM模式下,除了能夠以約定的方式配置一些寄存器產(chǎn)生邊沿對(duì)齊和中央對(duì)齊的PWM信號(hào)外,eTMR還可以將兩路輸出通道組合成一對(duì)互補(bǔ)輸出,以及捕獲硬件錯(cuò)誤信號(hào)等,專門針對(duì)電機(jī)控制系統(tǒng)中對(duì)PWM信號(hào)的需求。

手冊(cè)中描述了eTMR的PWM模式工作機(jī)制的框圖,如圖x所示。

image.png

圖x eTMR的PWM模式工作機(jī)制

實(shí)際上,在專門的PWM模式下,如手冊(cè)上的詳細(xì)描述,無論是產(chǎn)生中央對(duì)齊、邊沿對(duì)齊還是非對(duì)稱對(duì)齊(有相位差的邊沿對(duì)齊)的PWM信號(hào)波形,對(duì)每個(gè)通道的INIT、MOD、VAL0、VAL1寄存器的使用方式,同在輸出比較模式下產(chǎn)生PWM信號(hào)的用法并無二致。專門PWM模式較于使用輸出比較模式產(chǎn)生PWM信號(hào)增加的主要功能,是能夠?qū)蓚€(gè)通道配對(duì)形成一個(gè)輸出通道對(duì)(Channel Pair),而有一些功能,需要在啟用通道對(duì)之后,才能解鎖,例如產(chǎn)生互補(bǔ)輸出PWM信號(hào)。

通道配對(duì)

在有8個(gè)通道的eTMR模塊中,偶數(shù)編號(hào)的通道同+1后的奇數(shù)通道可以配對(duì),例如,0和1號(hào)通道配對(duì),2和3號(hào)通道配對(duì)等。當(dāng)啟用任何需要通道配對(duì)完成的功能時(shí)(配置寄存器eTMR_CTRL寄存器中的COMPLxxDBSWxx字段),對(duì)應(yīng)通道即配對(duì)成功。如圖x所示。

image.png

圖x eTMR_CTRL寄存器中的字段

當(dāng)通道配對(duì)成功后,通常使用偶數(shù)編號(hào)的通道的配置,控制通道對(duì)在啟用模式下的行為,奇數(shù)編號(hào)通道的配置不再生效。

通道對(duì)的互補(bǔ)輸出(Complementary Mode)

當(dāng)設(shè)置eTMR_CTRL[COMPLxx]=1時(shí),將對(duì)應(yīng)通道配對(duì),并啟用互補(bǔ)輸出模式。此時(shí),奇數(shù)編號(hào)的通道的占空比設(shè)置都不起作用,奇數(shù)編號(hào)通道輸出的信號(hào)完全與通道對(duì)的偶數(shù)號(hào)通道的輸出電平相反。如圖x所示。

image.png

圖x eTMR的PWM互補(bǔ)輸出模式

從圖中可以看到,PWM1的信號(hào)并沒有受到CH1_VAL0和CH1_VAL1的控制,而是同PWM0相對(duì)。

雙緩沖輸出PWM(Double Switch)

當(dāng)設(shè)置eTMR_CTRL[DBSWxx]=1時(shí),將對(duì)應(yīng)通道配對(duì),并啟用雙緩沖模式。當(dāng)啟用雙緩沖模式后,偶數(shù)通道和奇數(shù)通道產(chǎn)生的PWM信號(hào)相互亦或XOR,通過偶數(shù)通道的引腳輸出亦或之后的信號(hào),如圖x所示。

image.png

圖x PWM模式下的雙緩沖模式

雙緩沖模式通常同互補(bǔ)輸出模式一起使用,此時(shí)偶數(shù)通道引腳輸出的是兩個(gè)通道亦或之后的信號(hào),奇數(shù)通道輸出的時(shí)取反的信號(hào)。這是基于FOC算法,實(shí)現(xiàn)電機(jī)應(yīng)用中的開窗操作,方便ADC采樣的一個(gè)小功能。

錯(cuò)誤檢測(cè)機(jī)制(Fault Detection)

錯(cuò)誤檢測(cè)機(jī)制指的是,若外部的硬件電路檢測(cè)到某種不安全的狀態(tài)(例如電機(jī)突然停轉(zhuǎn),電機(jī)內(nèi)部的電流采樣過大,需要關(guān)斷PWM控制的橋臂),就會(huì)立刻將PWM輸出端口關(guān)斷,或者將端口輸出的切換至一種預(yù)設(shè)的安全的狀態(tài)。這個(gè)錯(cuò)誤檢測(cè)的事件,對(duì)于eTMR模塊來說,就是一個(gè)觸發(fā)信號(hào)。這個(gè)信號(hào)可以來自于TMU(Trigger Multiplexer Module),也可以來自于錯(cuò)誤檢測(cè)引腳(eTMR_FLTn)。

eTMR對(duì)這個(gè)錯(cuò)誤檢測(cè)的的觸發(fā)信號(hào)設(shè)計(jì)了一系列濾波和事件捕獲機(jī)制(既然要突然關(guān)斷eTMR的所有輸出信號(hào),當(dāng)然是要慎之又慎),如圖x所示。

image.png

圖x eTMR的錯(cuò)誤檢測(cè)信號(hào)鏈

圖x中展示的關(guān)于錯(cuò)誤檢測(cè)信號(hào)的功能,均可在寄存器eTMR_FAULT中設(shè)定。如圖x所示。

image.png

圖x eTMR_FAULT寄存器

輸入捕獲模式

設(shè)置通道控制寄存器eTMR_CHn_CTRL[CHMODE]=3,該通道為輸入捕獲模式。輸入捕獲模式下,通道的引腳自動(dòng)切換為輸入方向,用以捕獲觸發(fā)信號(hào)(由寄存器CH_CTRL[CAPEDGE]設(shè)置),在觸發(fā)到來之時(shí),將eTMR中計(jì)數(shù)器的值快照到通道的eTMR_CH_CVAL寄存器中,同時(shí)通道的標(biāo)志位eTMR_STS[CHxF]也將置位。

輸入捕捉通常用于記錄某些關(guān)鍵事件發(fā)生的時(shí)刻,例如用來測(cè)量方波信號(hào)的頻率或者脈寬等。

正交編碼器功能

部分eTMR的實(shí)例被設(shè)計(jì)支持編碼器模式。在有支持編碼器模式的eTMR中(例如YTM32B1ME05的eTMR1),設(shè)置寄存器eTMR_QDCTRL[QDEN]=1,即可將eTMR整個(gè)變成編碼器,其余通道引腳和錯(cuò)誤檢測(cè)引腳的eTMR功能都被停用,使用專用的eTMR_QD_PHAeTMR_QD_PHB引腳捕獲來自編碼器的脈沖信號(hào)流。

正交編碼器的兩個(gè)信號(hào),是前后相位相差90度的同頻方波信號(hào),并且可通過相差的前后判斷編碼器的旋轉(zhuǎn)方向。

圖x展示了eTMR編碼器模塊的工作機(jī)制。將旋轉(zhuǎn)編碼器的兩路輸出信號(hào)輸入到編碼器模塊的引腳后,eTMR模塊內(nèi)部對(duì)旋轉(zhuǎn)編碼器的信號(hào)先進(jìn)行采樣(同步,)、消抖(濾波,eTMR_QDCTRL[QDFCNT]eTMR_QDCTRL[QDFPER])、可選配置相位(eTMR_QDCTRL[PHAPOL]eTMR_QDCTRL[PHBPOL]),然后進(jìn)入編碼器信號(hào)變換模塊(主要是D觸發(fā)器),將解析出的速度信號(hào)(脈沖序列)和方向信號(hào)(電平)送入eTMR的計(jì)數(shù)器(經(jīng)過eTMR_QDCTRL[QDCLKPRS]分頻后送入),此時(shí),eTMR的計(jì)數(shù)器的工作狀態(tài),等同于使用外部時(shí)鐘源驅(qū)動(dòng)計(jì)數(shù)。用戶可以實(shí)時(shí)讀取eTMR_CNT的值,對(duì)應(yīng)編碼器的位置。

image.png

圖x eTMR的編碼器功能框圖

這里要注意,編碼器的方向是可以正轉(zhuǎn),也可以反轉(zhuǎn)的,這就意味著eTMR_CNT寄存器中的值可以遞增,也可以遞減。

eTMR_QDCTRL[QDMODE]寄存器段中可以指定4中編碼器的工作模式:

  • 00b - Phase A and phase B decoding mode. When phase B changes follow phase A, the counter increases. When phase A changes follow phase B, the counter decreases.
  • 01b - Phase A and phase B decoding mode. When phase A changes follow phase B, the counter increases. When phase B changes follow phase A, the counter decreases.
  • 10b - Counting and direction decoding mode. Phase B input controls direction. When phase B input is high, the counter increases with phase A pulse. When phase B input is low, the counter decreases with phase A pulse.
  • 11b - Counting and direction decoding mode. Phase A input controls direction. When phase A input is high, the counter increases with phase B pulse. When phase A input is low, the counter decreases with phase B pulse

同步機(jī)制

因?yàn)橛?jì)數(shù)器和總線上訪問寄存器使用兩個(gè)不同的時(shí)鐘域,又或是因?yàn)樵谟行?yīng)用(例如電機(jī))場(chǎng)景中,需要硬件保證的同步更新一組寄存器,而不能又軟件一個(gè)一個(gè)地賦值(否則切換過程中出現(xiàn)不當(dāng)配置,電機(jī)就燒啦),eTMR為一些同計(jì)數(shù)相關(guān)的寄存器設(shè)計(jì)了緩沖寄存器(Buffered Registers),或者被稱為“影子寄存器”(Shadow Registers)。影子寄存器對(duì)用戶來說是不可見的。當(dāng)啟用影子模式后(eTMR_SYNC[REGLD] != 0),用戶通過APB總線向擁有影子寄存器的真實(shí)寄存器中寫數(shù)時(shí),實(shí)際由硬件控制先寫到影子寄存器中,當(dāng)預(yù)設(shè)的同步觸發(fā)信號(hào)到來之時(shí),硬件自動(dòng)將影子寄存器中的數(shù)值寫入到實(shí)際的寄存器中生效。如圖x所示。

image.png

圖x eTMR的影子載入機(jī)制

圖x中展示了,eTMR中擁有影子的寄存器包括:eTMR_INIT、eTMR_MOD、eTMR_MID、eTMR_CHn_VAL0、eTMR_CHn_VAL1、eTMR_CHn_MASK,可以觸發(fā)載入事件的觸發(fā)信號(hào),可以來自于MOD或者M(jìn)ID匹配事件、軟件或者硬件觸發(fā),或者軟件寫eTMR_SYNC[LDOK]=1。載入事件也可以至起標(biāo)志位eTMR_STS[RF]。

關(guān)于影子模式相關(guān)的寄存器配置,均在寄存器eTMR_SYNC中可查閱。例如,eTMR_SYNC[LDREQ]指定了在啟用同步機(jī)制的情況下,連續(xù)觸發(fā)多少次同步事件,才能真的同步一次。

調(diào)制模式

eTMR的調(diào)制模式,是另一種通道對(duì)混合應(yīng)用的方式,但不同于eTMR內(nèi)部通道對(duì)信號(hào)的相互耦合,調(diào)制模式允許兩個(gè)不同eTMR模塊以不同頻率的信號(hào)相互調(diào)制(進(jìn)行與AND邏輯計(jì)算)。這種多個(gè)實(shí)例配合起來的功能,需要在SOC級(jí)上進(jìn)行配置,這也就意味著并不是集成了多了eTMR外設(shè),就一定支持調(diào)制模式。

以YTM32B1ME05為例,當(dāng)啟用調(diào)試模式時(shí),eTMR0的8個(gè)通道(配置CIM_ETMROPT[eTMR0_CHxOUTSEL])可以同eTMR1的CH0調(diào)制,通過eTMR0的通道引腳輸出調(diào)制后的PWM信號(hào)。

image.png

圖x 調(diào)制模式在CIM的配置寄存器

調(diào)試模式產(chǎn)生的信號(hào),可用來實(shí)現(xiàn)BLDC電機(jī)控制中的負(fù)載調(diào)制,對(duì)相位控制信號(hào)用占空比進(jìn)一步對(duì)信號(hào)功率打折,也可以用來實(shí)現(xiàn)某些紅外調(diào)制的控制信號(hào)。

中斷、DMA及觸發(fā)信號(hào)

作為一個(gè)典型的帶輸入輸出的多通道定時(shí)器外設(shè),eTMR的超時(shí)事件、各通道的匹配(或輸入捕獲事件)事件、錯(cuò)誤檢測(cè)輸入信號(hào),以及編碼器溢出事件都可以觸發(fā)中斷。當(dāng)對(duì)應(yīng)事件產(chǎn)生后,有標(biāo)志將會(huì)在eTMR_STS寄存器置位,若此時(shí)寄存器eTMR_INTE的對(duì)應(yīng)位被置1(啟用中斷),則會(huì)將觸發(fā)信號(hào)送至中斷管理器NVIC,觸發(fā)中斷。用戶通過寫eTMR_STS寄存器以清零標(biāo)志位。

image.png

eTMR的事件標(biāo)志寄存器

這里需要注意的是,eTMR的每個(gè)通道設(shè)計(jì)了兩個(gè)匹配寄存器,這兩個(gè)寄存器會(huì)共用同一個(gè)通道標(biāo)志位,這就意味著,如果要分別處理兩個(gè)通道的中斷,前一個(gè)匹配事件的中斷處理過程要盡量短,或者用戶僅使用后一個(gè)事件的中斷(允許通道標(biāo)志位溢出,即在標(biāo)志位置位后未被清零的情況下再次發(fā)起標(biāo)志位置位的操作)。

eTMR也可以產(chǎn)生DMA觸發(fā)信號(hào),通過配置各通道的eTMR_CHn_CTRL[DMAEN]=1,可以啟用該通道的匹配(或輸入捕獲)事件,向DMAMUX發(fā)送DMA觸發(fā)請(qǐng)求。這里對(duì)應(yīng)于每個(gè)通道的兩個(gè)匹配事件,對(duì)應(yīng)也會(huì)產(chǎn)生兩次DMA觸發(fā)請(qǐng)求。例如,在使用DMA的觸發(fā)計(jì)數(shù)器對(duì)eTMR產(chǎn)生PWM信號(hào)的周期進(jìn)行計(jì)數(shù)時(shí),對(duì)通道的觸發(fā)請(qǐng)求進(jìn)行計(jì)數(shù)(eTMR的通道溢出事件不會(huì)產(chǎn)生DMA請(qǐng)求),將會(huì)是PWM周期數(shù)量的2倍。

DMA觸發(fā)的優(yōu)先級(jí)高于中斷觸發(fā),二者只能有一個(gè)生效。一旦使能DMA,即使使能中斷,也不會(huì)置起中斷請(qǐng)求。

應(yīng)用要點(diǎn)(軟件)

YTMicro SDK中設(shè)計(jì)了eTMR外設(shè)的驅(qū)動(dòng)程序,有源碼文件 etmr_driver.h、etmr_common.c、etmr_ic_driver.c、etmr_mc_driver.cetmr_oc_driver.c、etmr_pwm_driver.c、etmr_qd_driver.c等。同時(shí)提供了相應(yīng)的樣例工程:etmr_input_capture、etmr_input_capture_interrupt、etmr_output_compare、etmr_pwm

總結(jié)

本文介紹了eTMR的主要功能,作為一個(gè)典型的多通道定時(shí)器外設(shè)的實(shí)現(xiàn),eTMR實(shí)現(xiàn)了輸出比較、輸入捕獲和專用PWM模式。在常規(guī)應(yīng)用中,可以使用輸出比較功能產(chǎn)生PWM,在專用PWM模式下,可以使用通道配對(duì),實(shí)現(xiàn)需要多個(gè)引腳輸出實(shí)現(xiàn)的功能(例如互補(bǔ)輸出)。eTMR還支持死區(qū)控制,復(fù)雜的掩碼機(jī)制等,本文未作詳解,讀者可根據(jù)應(yīng)用需求再詳查手冊(cè)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7394

    瀏覽量

    150626
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3226

    瀏覽量

    114144
  • 脈沖信號(hào)
    +關(guān)注

    關(guān)注

    6

    文章

    387

    瀏覽量

    36854
  • 正交編碼器
    +關(guān)注

    關(guān)注

    0

    文章

    16

    瀏覽量

    10592
  • PWM輸出
    +關(guān)注

    關(guān)注

    1

    文章

    66

    瀏覽量

    5109
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    YTM32的LIN通信協(xié)議引擎LinFlexD外設(shè)模塊詳解

    YTM32微控制的LINFlexD外設(shè)模塊,實(shí)現(xiàn)了LIN協(xié)議控制的功能,可以支持LIN總線協(xié)議的主機(jī)和從機(jī)功能。
    的頭像 發(fā)表于 10-08 11:15 ?1722次閱讀
    <b class='flag-5'>YTM32</b>的LIN通信協(xié)議引擎LinFlexD<b class='flag-5'>外設(shè)</b><b class='flag-5'>模塊</b>詳解

    YTM32的模數(shù)轉(zhuǎn)換ADC外設(shè)模塊詳解

    YTM32的ADC轉(zhuǎn)換外設(shè)最多可以集成32個(gè)輸入通道,最高12b轉(zhuǎn)換精度,最快可以支持2M Sps的12b采樣。
    的頭像 發(fā)表于 10-09 16:35 ?1687次閱讀
    <b class='flag-5'>YTM32</b>的模數(shù)轉(zhuǎn)換<b class='flag-5'>器</b>ADC<b class='flag-5'>外設(shè)</b><b class='flag-5'>模塊</b>詳解

    Microchip推出增強(qiáng)型中檔8位PIC MCU內(nèi)核

    用戶界面的Microchip mTouch觸摸傳感解決方案模塊、LCD顯示功能、多個(gè)模數(shù)轉(zhuǎn)換(ADC)和脈寬調(diào)制(PWM)模塊,以及新增的定時(shí)器和模擬比較
    發(fā)表于 11-25 09:48

    增強(qiáng)型51

    請(qǐng)問各位大神,能不能列舉出增強(qiáng)型51有3個(gè)定時(shí)器以上,PDIP40封裝的,另外能附帶技術(shù)手冊(cè)嗎
    發(fā)表于 10-23 21:11

    中等容量增強(qiáng)型,32位基于ARM核心的帶64或128K字節(jié)閃存的微控制 USB、CAN、7個(gè)定時(shí)器、2個(gè)ADC 、9個(gè)通信接口

    的SRAM),豐富的增強(qiáng)I/O端口和聯(lián)接到兩條APB總線的外設(shè)。所有型號(hào)的器件都包含2個(gè)12位的ADC、3個(gè)通用16位定時(shí)器和1個(gè)PWM定時(shí)器,還包含標(biāo)準(zhǔn)和先進(jìn)的通信接口:多達(dá)2個(gè)I2
    發(fā)表于 09-04 11:17

    stm32增強(qiáng)型含有8個(gè)時(shí)鐘定時(shí)器

    stm32 增強(qiáng)型含有8個(gè)時(shí)鐘定時(shí)器,其中TIM8,TIM1為高級(jí)定時(shí)器,TIM6,TIM7為基本定時(shí)器,TIM2,TIM3,TIM4,TIM5 為通用
    發(fā)表于 08-12 06:42

    MS8005F 增強(qiáng)型 8051 MCU

    :2-16MHz? 晶體諧振:2-16MHz? 16 個(gè)雙向 CMOS I/O 管腳(內(nèi)建上、下拉電阻)? 2 個(gè) 16 位定時(shí)器 T0/T1? 3 路 16 bit PWM 輸出? 兩個(gè)增強(qiáng)型串口 EUART0
    發(fā)表于 05-31 09:26

    MS8005F 增強(qiáng)型 8051 MCU

    :2-16MHz? 晶體諧振:2-16MHz? 16 個(gè)雙向 CMOS I/O 管腳(內(nèi)建上、下拉 電阻)? 2 個(gè) 16 位定時(shí)器 T0/T1? 3 路 16 bit PWM 輸出? 兩個(gè)增強(qiáng)型串口
    發(fā)表于 06-07 17:51

    2.1V-5.5V、增強(qiáng)型1T 8051 Flash MCU

    MS80F751x系列MCU是增強(qiáng)型1T 8051 Flash MCU,最快支持48MHz外設(shè)運(yùn)行,24MHz內(nèi)核運(yùn)行,工作電壓2.1V-5.5V,GPIO最多可達(dá)30個(gè),內(nèi)置LCD/LED驅(qū)動(dòng)模塊
    發(fā)表于 05-06 09:28

    N加P溝道增強(qiáng)型MOSFET管

    N加P溝道增強(qiáng)型MOSFET管 N加P溝道增強(qiáng)型MOSFET管簡(jiǎn)介
    發(fā)表于 04-08 17:43 ?25次下載

    stm32f103zet6定時(shí)器詳解及應(yīng)用

    大容量的STM32F103XX增強(qiáng)型系列產(chǎn)品包含最多2個(gè)高級(jí)控制定時(shí)器、4個(gè)普通定時(shí)器和2個(gè)基本定時(shí)器,以及2個(gè)看門狗定時(shí)器和1個(gè)系統(tǒng)嘀嗒
    發(fā)表于 11-10 13:26 ?2.4w次閱讀

    TB3123 - PIC?單片機(jī)的窗口看門狗定時(shí)器

    窗口看門狗定時(shí)器(Windowed Watchdog Timer,WWDT)是PIC單片機(jī)的增強(qiáng)型看門狗定時(shí)器。該定時(shí)器是PIC單片機(jī)現(xiàn)有看門狗定時(shí)
    發(fā)表于 03-26 14:35 ?0次下載
    TB3123 - PIC?單片機(jī)的窗口看門狗<b class='flag-5'>定時(shí)器</b>

    角度定時(shí)器外設(shè)

    本視頻介紹了Microchip 8位PIC? MCU提供的獨(dú)立于內(nèi)核的外設(shè)——角度定時(shí)器外設(shè)。角度定時(shí)器以無延時(shí)的方法,生成直接基于用戶定義分辨率(細(xì)分周期信號(hào))的輸出事件。還可以動(dòng)態(tài)
    的頭像 發(fā)表于 06-07 13:46 ?2275次閱讀

    SYS BIOS在線培訓(xùn) — 時(shí)鐘、定時(shí)器簡(jiǎn)介

    SYS BIOS簡(jiǎn)介-定時(shí)器和時(shí)鐘模塊
    的頭像 發(fā)表于 08-08 01:06 ?4768次閱讀

    如何使用MPLAB代碼配置配置增強(qiáng)型PWM模塊

    本視頻在之前實(shí)驗(yàn)的基礎(chǔ)上,繼續(xù)向大家介紹如何使用MPLAB代碼配置配置增強(qiáng)型PWM模塊,并使用生成的代碼產(chǎn)生增強(qiáng)型PWM的輸出。
    的頭像 發(fā)表于 07-01 10:07 ?3508次閱讀