定時器和計數(shù)器可能是MCU設計中最普遍的外設。幾乎任何應用程序都可以使用定時器或計數(shù)器來通過簡單的定時器或計數(shù)器中斷替換重復或循環(huán)CPU操作來提高性能,降低功耗或簡化設計。但是,您可能沒有使用過某些最新的計時器/計數(shù)器單元,現(xiàn)在可以使用的一些高級功能可以進一步改善您的設計。本文將快速回顧一些可用于改進設計的新定時器/計數(shù)器功能,其中包括來自流行MCU系列的說明性示例,特別強調自主操作和電機控制的功能。
定時器和計數(shù)器模式:從簡單到高級
定時器和計數(shù)器以一些非常簡單的操作模式開始,以替換用于計數(shù)外部事件的公共程序循環(huán),用于計時內部和外部操作以及用于收集關鍵MCU的各種統(tǒng)計信息操作。 Maxim MAXQ612 MCU的功能說明了一些最常見的計數(shù)模式,下面的圖1顯示了一些示例。圖底部的表格顯示了定時器B的三種常見自主操作模式,MAXQ612定時器/計數(shù)器模塊:自動重載,捕獲和pp/向下計數(shù)。右上角的圖顯示了自動重載模式的框圖。定時器B的時鐘輸入可以來自時鐘預分頻器,可以通過8種不同的設置或外部引腳分頻系統(tǒng)時鐘。控制位TRB使能或禁止定時器B操作。定時器值寄存器(TVB)在計時時及其達到存儲在定時器B重載寄存器(TBR)中的值時計數(shù),并產生中斷并將TVB復位為零。這提供了一種創(chuàng)建延遲的簡單方法,而不會占用寶貴的CPU周期來創(chuàng)建延遲。外部引腳也可用于將TVB重置為零,如果預期輸入未在預期的時間內顯示,則此模式可用于創(chuàng)建超時。
圖1:Maxim MAXQ612 MCU示例計數(shù)器/定時器模式。 (由Maxim提供)
圖1右上方的框圖說明了捕獲模式的操作。在此模式下,時鐘預分頻器和啟用/禁用功能與自動重載模式下的相同。當TBV寄存器溢出并產生可選中斷時,它會向上計數(shù)并復位為零。在外部引腳TBB的下降沿,TBV寄存器中的值被加載到捕獲寄存器TBR中,并且可以產生中斷EXFB。此模式可用于計算外部信號上升沿之間的時鐘數(shù),以確定信號頻率或信號延遲。因此,定時器可以使CPU免于進行周期密集的計數(shù)操作,因此可以更有效地完成真正需要的任務。
MAXQ612支持其他幾種常見的定時器/計數(shù)器操作,例如up/down auto-reload,其中外部引腳控制計數(shù)器的方向。該模式有助于解碼各種脈沖寬度調制信號,例如機電傳感器中使用的信號。時鐘輸出模式可用于使用系統(tǒng)時鐘,預分頻器和定時器B的終端計數(shù)創(chuàng)建簡單的輸出時鐘。最后,脈沖寬度調制(PWM)輸出模式可以生成邊沿對齊信號用于常見的PWM應用,如電機控制應用。
用于電機控制的PWM計數(shù)器/定時器功能
一些最先進的定時器/計數(shù)器功能用于電機控制的PWM應用。這些計數(shù)器使用專用硬件實現(xiàn)盡可能多的與電機相關的PWM功能,以釋放處理器以執(zhí)行更高級別的功能。電機控制PWM計數(shù)器/定時器的基本操作在大多數(shù)制造商實施和NXP LPC 17xx PWM定時器之間是常見的,該定時器針對三相交流和直流電機控制應用進行了優(yōu)化,提供了一個很好的例子。如圖2所示,電機控制PWM模塊的功能看起來相當復雜,直到您意識到基本PWM定時器通道有三個副本;一個在左邊,一個在中間,一個在右邊。具有三個通道使得可以使用單個定時器/計數(shù)器來控制三相電動機,從而實現(xiàn)非常有效的實施。每個通道控制一對輸出,這些輸出又可以控制芯片外的某些東西,就像電機中的一組線圈一樣。每個通道都包含一個定時器/計數(shù)器(TC)寄存器,該寄存器由處理器時鐘(定時器模式)或輸入引腳(計數(shù)器模式)遞增。
圖2:恩智浦LPC 17xx PWM定時器/計數(shù)器。 (由恩智浦提供)
每個通道都有一個限制寄存器,與TC值進行比較,當匹配發(fā)生時,TC以兩種方式之一“復位”。在邊沿對齊模式下,TC復位為0,而在中心模式下,匹配將TC切換為每個處理器時鐘或輸入引腳轉換的遞減,直到達到0,此時它再次開始向上計數(shù)。
每個通道還包括一個匹配寄存器,其值小于限制寄存器。在邊沿對齊模式下,只要TC匹配匹配或限制寄存器,就切換通道的輸出,而在中心對齊模式下,只有當它與匹配寄存器匹配時才切換。因此,限制寄存器控制輸出的周期,而匹配寄存器控制輸出在每個狀態(tài)中花費的每個周期的多少。如果輸出被集成到電壓中,則限制寄存器中的值較小會使紋波最小化,并允許電機控制PWM定時器控制高速運行的設備。
所有這些通道硬件元件一起工作控制兩個輸出A和B,它們可以驅動一對晶體管在兩個電源軌之間切換控制點。大多數(shù)情況下,兩個輸出具有相反的極性,但是可以啟用死區(qū)時間功能(基于每個通道)以延遲兩個信號從被動狀態(tài)到活動狀態(tài)的轉換,從而晶體管永遠不會同時開啟。每個輸出對的狀態(tài)可以被認為是高,低,浮動或上,下和中心關閉。每個通道從有源和無源到高和低的映射都是可編程的,每個通道都可以執(zhí)行邊沿對齊和中心對齊的脈沖寬度調制。圖3顯示了兩個輸出配置示例。左邊的那個是中心對齊的,沒有任何死區(qū)時間。右邊的那個插入死區(qū)時間(DT)以確保兩個輸出同時不活動。
圖3:恩智浦LPC17xx電機控制PWM定時器/計數(shù)器示例輸出配置。 (由NXP提供)
電機控制PWM定時器還包括多個中斷源,以便于通知處理器需要更高級別的電機控制功能。這些中斷以通道為基礎進行組織,可以指示TC何時匹配匹配寄存器,TC何時匹配限制寄存器,當通道捕獲TC的值到其捕獲寄存器時或中止輸入變?yōu)橛行r。 LPC17xx還具有多個支持外設,可簡化更高級別的控制功能,包括正交編碼器接口,附加PWM模塊,中斷定時器和看門狗定時器。各種各樣的專用定時功能表明了基于MCU的設計時序功能的重要性。
其他專用定時功能
在許多現(xiàn)代MCU上,定時和計數(shù)功能已成為隨著制造商針對特定應用領域而日益專業(yè)例如,飛思卡爾Kinetis K10系列(例如MK10DN512ZVLQ10)具有各種具有專用功能的定時和計數(shù)外設。這些外設包括:可編程延遲模塊,用于控制ADC和DAC操作,使處理器無需管理這些低級過程;靈活的定時模塊,提供多個定時,計數(shù),輸入捕獲和輸出通道,支持照明和電動機的電源管理和控制;周期性中斷定時器,可以自主管理外設中斷和DMA傳輸;一個非常低功耗的定時器,即使在MCU處于最低功耗狀態(tài)時也可以工作,以提供簡單的周期性“喚醒”事件;和一個實時時鐘,可以保持準確的時間,甚至可以在MCU完全斷電時關閉電池,使其成為系統(tǒng)操作和壽命數(shù)據(jù)的便捷來源。
K10系列還提供專用時鐘和定時功能,專用于特定模塊,因此不會消耗其他時序資源。例如,用于創(chuàng)建各種信號編碼方案(例如紅外通信中使用的協(xié)議)的載波調制器發(fā)送器塊具有其自己的專用定時和計數(shù)功能,非常類似于脈沖寬度調制計數(shù)器,管理與頻移鍵控編碼方案相關的脈沖寬度的變化。隨著MCU變得更具應用和市場細分,這種專用定時和計數(shù)功能的趨勢有望繼續(xù)。
開發(fā)套件加快了產品上市時間
隨著MCU變得更具應用性,制造商正在創(chuàng)建更多面向應用的開發(fā)套件和參考設計。電機控制應用可能是特定應用套件的最常見示例之一。僅舉一個例子,瑞薩提供了一個完整的電機控制開發(fā)套件,如圖4所示的YMCRPRX62T,它甚至包括一個示例電機。該套件包含您在多種電機控制設計中評估瑞薩RX62T MCU所需的所有軟件和示例設計。 PC托管的演示圖形用戶界面顯示電機速度,電壓和電流,同時允許用戶調整參數(shù)和算法,以直接查看各種結果,以幫助調整電機運行,從而在特定設計中獲得最佳結果。許多其他制造商也擁有與瑞薩RX62T具有一些類似功能的電機控制評估套件。尋找最適合您的目標應用和開發(fā)環(huán)境的套件,以利用大量工作制造商“捆綁”來幫助您加速您的下一個電機控制設計。
圖4:用于RX62T MCU系列的瑞薩電機控制開發(fā)套件。 (由Renesas提供)
-
電機控制
+關注
關注
3526文章
1857瀏覽量
268370 -
計數(shù)器
+關注
關注
32文章
2253瀏覽量
94352 -
定時器
+關注
關注
23文章
3237瀏覽量
114467
發(fā)布評論請先 登錄
相關推薦
評論