如今的嵌入式應(yīng)用非常復(fù)雜,需要通過單個單片機處理多個功能。這些應(yīng)用需要增強安全性、支持實時響應(yīng)的最佳執(zhí)行時間以及無縫同步各個功能。從具有集成功率因數(shù)校正的電機控制到光強度處理,復(fù)雜應(yīng)用需要在各個模塊之間輕松切換。處理器驅(qū)動的定時和排序解決方案受固有延時的影響,這種延時無法始終準(zhǔn)確預(yù)測。這種方法還占用了寶貴的CPU帶寬,導(dǎo)致其功能未得到充分利用,而通過卸載這些功能可優(yōu)化應(yīng)用程序性能。Microchip的16位dsPIC33數(shù)字信號控制器(DSC)中的外設(shè)觸發(fā)信號發(fā)生器(PTG)是獨立于內(nèi)核的外設(shè)(CIP),可以協(xié)調(diào)復(fù)雜應(yīng)用中功能的精確定時和排序,同時減輕CPU的負(fù)擔(dān)。我們詳細(xì)介紹了幾個示例,以展示PTG如何幫助簡化時序關(guān)鍵應(yīng)用(例如,采用功率因數(shù)校正的電機控制、光強度控制或生成還可用作獨立于內(nèi)核的時鐘源的恒定頻率信號)的外設(shè)排序。由于PTG與內(nèi)核無關(guān),因此可以在CPU休眠時完成此項工作以實現(xiàn)節(jié)能或?qū)W⒂谄渌P(guān)鍵任務(wù)。
顧名思義,PTG是一個用戶可編程序列發(fā)生器,可生成具有復(fù)雜輸入信號序列的觸發(fā)信號,以協(xié)調(diào)其他片上外設(shè)的操作。使用PTG的應(yīng)用會通過其他外設(shè)(例如模數(shù)轉(zhuǎn)換器(ADC)、輸出比較(OC)、脈寬調(diào)制器(PWM)、定時器和中斷控制器)共同執(zhí)行此操作,以實現(xiàn)復(fù)雜的觸發(fā)和響應(yīng)序列。PTG不僅降低了應(yīng)用程序?qū)?nèi)核的依賴性,還能單獨處理模塊交互,從而有助于降低軟件復(fù)雜性及保持模塊化。
PTG外設(shè)支持向PTG隊列寄存器傳送8位命令(稱為step命令)。每個8位step命令由一個4位命令代碼和一個4位選項字段組成。這些命令定義了一系列事件,用于輸出觸發(fā)信號到外設(shè)。step命令還可用于生成對內(nèi)核的中斷請求。
功率因數(shù)和電機控制
在集成功率因數(shù)校正(PFC)和電機控制應(yīng)用中,單個DSC使用磁場定向控制(FOC)方案以及PFC轉(zhuǎn)換器控制永磁同步電機。該應(yīng)用需要三個PWM通道來控制電機功能,另外還需要一個PWM來控制PFC操作。輸出比較(OC)外設(shè)可用于增加應(yīng)用可用的PWM通道數(shù)量,甚至?xí)銎骷峡捎玫母咚貾WM通道數(shù)量。
可同時使用PWM外設(shè)與OC外設(shè)來產(chǎn)生電機控制和PFC操作所需的信號。但是,在PFC等應(yīng)用中,執(zhí)行時序非常重要,因此必須在最佳執(zhí)行時間內(nèi)完成各種任務(wù)。其中包括同步電機控制和PFC PWM、觸發(fā)ADC進行轉(zhuǎn)換以及切換用于電機控制的ADC通道和PFC反饋信號。
使用PTG外設(shè)可以有效地實現(xiàn)這些要求,PTG外設(shè)可以同步高速PWM和OC外設(shè),并通過監(jiān)視高速PWM外設(shè)邊沿來產(chǎn)生ADC外設(shè)觸發(fā)信號。它還可監(jiān)視“ADC轉(zhuǎn)換完成”中斷并產(chǎn)生適當(dāng)?shù)闹袛?,?zhí)行FOC和數(shù)字PFC控制代碼。它減少了CPU干預(yù),使外設(shè)處理獨立于內(nèi)核進行。這可降低應(yīng)用的總體功耗,同時釋放CPU以執(zhí)行更多關(guān)鍵功能。選擇電機控制和PFC PWM的開關(guān)頻率時應(yīng)確保其為整數(shù)倍。
dsPIC? DSC中的ADC能夠進行四通道同步采樣。FOC和PFC算法都有自己的模擬通道需要同時采樣,因為這些信號的相位關(guān)系是實現(xiàn)有效控制的關(guān)鍵。
選擇電機控制和PFC的反饋信號時應(yīng)確??赏ㄟ^改變ADC通道選擇對電機控制和PFC信號進行采樣。在基于PWM邊沿觸發(fā)ADC之前,可將電機控制和PFC信號連接到采樣保持(S&H)電路。通道應(yīng)配置為:在四通道采樣和轉(zhuǎn)換序列結(jié)束時,可從FOC或PFC各自對應(yīng)的ADC緩沖寄存器中獲得其轉(zhuǎn)換結(jié)果。
在設(shè)置通道選擇位以將PFC反饋信號連接到ADC的采樣保持電路后,對于每個PFC PWM周期,都必須生成觸發(fā)信號。同樣,對于每個電機控制PWM周期,必須在設(shè)置通道選擇位以將電機控制反饋信號連接到ADC的S&H電路之后生成ADC觸發(fā)信號。因此,將PTG外設(shè)配置為通過監(jiān)視電機控制和PFC PWM脈沖的邊沿來生成ADC觸發(fā)信號。此外,還會生成兩個PTG中斷來執(zhí)行FOC和PFC的代碼,如圖1所示。
圖1:使用PTG中斷執(zhí)行代碼
如本例所示,PTG通過有效地對ADC和PWM的使用進行排序來簡化實現(xiàn),從而在一個dsPIC33器件中實現(xiàn)電機控制和PFC。
照明控制
在光強度控制應(yīng)用中,使用OC的PWM發(fā)生器可用于控制光的亮度。
在此應(yīng)用中,使用了兩個OC外設(shè),其占空比由來自兩個獨立ADC通道的輸入控制。根據(jù)每個ADC值,更新占空比。PTG外設(shè)支持更簡單的同步ADC和OC外設(shè)的方法。此外,PTG有助于避免外設(shè)死鎖,從而提高應(yīng)用的安全性。
為了執(zhí)行同步,電路首先會監(jiān)視ADC并產(chǎn)生適當(dāng)?shù)闹袛嘁愿淖僌C占空比。然后,它會在不干擾CPU的情況下改變ADC通道,因為PTG可以獨立完成此操作。作為額外的安全功能,在發(fā)生意外故障時,PTG外設(shè)具有專用的看門狗定時器,用于監(jiān)視和執(zhí)行必要的糾正措施。
該應(yīng)用的框圖如圖2所示。
圖2:使用PTG的輸出比較占空比控制
PTG外設(shè)內(nèi)的看門狗定時器將防止PTG在執(zhí)行等待硬件觸發(fā)高電平-低電平狀態(tài)的命令時無限期地等待外部事件的情況。在此應(yīng)用中,PTG將等待ADC轉(zhuǎn)換完成觸發(fā)信號。使能后,看門狗定時器會在命令執(zhí)行開始時開始計數(shù)。命令完成執(zhí)行時將禁止看門狗定時器。如果預(yù)期事件在看門狗定時器超時周期到期之前未到達,則PTG外設(shè)將中止正在進行的失敗命令并停止定序器。然后,它會向CPU發(fā)出看門狗定時器錯誤中斷。
這可作為安全功能,用于從ADC或PTG外設(shè)停止工作的情況中恢復(fù)。這些外設(shè)可以在看門狗定時器錯誤中斷內(nèi)重新初始化和重啟。
PTG通過切換ADC通道和監(jiān)控外設(shè)使應(yīng)用獨立于內(nèi)核,而無需CPU外設(shè)的干預(yù)。這樣一來,CPU便可以用于應(yīng)用程序中的其他任務(wù)。
僅PTG將負(fù)責(zé)外設(shè)內(nèi)的所有交互,這有助于降低軟件復(fù)雜性并保持模塊化。PTG外設(shè)的看門狗定時器有助于從任何災(zāi)難性故障中恢復(fù),從而提供更可靠的應(yīng)用。
恒定頻率波形
PTG外設(shè)可用于產(chǎn)生恒定頻率信號,而此信號還可用作時鐘源。PTG觸發(fā)用作屏蔽輸入選擇的比較器。PTG的觸發(fā)脈沖寬度可以改變,PTG有自己的定時器。外設(shè)觸發(fā)信號也可用作運算放大器和比較器的屏蔽輸入選擇,如圖3所示。
圖3:用戶可編程的屏蔽功能
使用此功能,可以通過比較器外設(shè)實現(xiàn)PTG輸出。比較器配置為:反相輸入接地,同相輸入連接至內(nèi)部參考電壓。
觸發(fā)脈沖將直接呈現(xiàn)為比較器輸出。只要PTG連續(xù)產(chǎn)生觸發(fā)信號,比較器就會產(chǎn)生恒定頻率波形。波形的脈沖寬度將是PTG時鐘的一個周期。
開關(guān)時間可由PTG定時器和脈沖寬度位控制。輸出脈沖寬度將決定輸出波形的關(guān)斷時間,定時器將決定輸出波形的導(dǎo)通時間,即觸發(fā)比較器外設(shè)之間的延時。
根據(jù)比較器輸出極性,開關(guān)時間將由定時器或脈沖寬度位控制。輸出頻率也可以由充當(dāng)時鐘分頻器的寄存器控制。
通過改變比較器輸出極性,可以使用四個比較器外設(shè)產(chǎn)生互補波形??梢允褂妹}沖寬度位修改脈沖寬度,以便降低輸出頻率。因此,可以使用PTG和比較器外設(shè)產(chǎn)生恒定波形。
在該應(yīng)用中使用PTG的優(yōu)點之一是輸出可以充當(dāng)恒定時鐘源并且完全獨立于內(nèi)核運行。使用更多比較器外設(shè)時,可以生成偶互補波形。PTG還可以在空閑和休眠等節(jié)能模式下工作。
總結(jié)
憑借Microchip的dsPIC33數(shù)字信號控制器中的PTG外設(shè),用戶能夠設(shè)計復(fù)雜的應(yīng)用序列,并為時序關(guān)鍵型或功耗關(guān)鍵型應(yīng)用提供更高的靈活性。PTG可在幾乎沒有CPU中斷的情況下支持各種外設(shè)彼此交互,并有助于增強現(xiàn)有外設(shè)的功能,從而擴展任何給定外設(shè)可以實現(xiàn)的功能。
使用PTG外設(shè)可提供更快的響應(yīng)速度并減少軟件負(fù)擔(dān)。外設(shè)還提供內(nèi)置功能(如專用的看門狗定時器)來提高功能安全性。
-
電機控制
+關(guān)注
關(guān)注
3538文章
1889瀏覽量
269034 -
PWM
+關(guān)注
關(guān)注
114文章
5196瀏覽量
214371 -
信號發(fā)生器
+關(guān)注
關(guān)注
28文章
1479瀏覽量
108873
原文標(biāo)題:專家技術(shù)文章:實施外設(shè)觸發(fā)
文章出處:【微信號:MicrochipTechnology,微信公眾號:Microchip微芯】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論