基于FPGA的可編程PWM電路設計
0 引言
本文引用地址:http://www.104case.com/article/180833.htm某系統中的H橋驅動電路需要采用2路脈沖寬度調制器(Pulse Width Modulation,PWM)信號來驅動一個電機,以控制其正、反兩個方向的運轉,且兩路信號必須有一定的時間間隔來避免驅動電流過大而損害驅動元件。為使其能靈活應用,針對系統要求,本設計的PWM控制器應具備以下功能:
(1)有3路獨立PWM輸出,每路輸出2個驅動信號,而且其周期、占空比、死區時間應可編程;
(2)對應10 MHz系統時鐘,周期為1μs~6.5536 ms;
(3)應用精簡地址線,以節省外圍引腳及地址資源的占用;
(4)能提供與8/16 bits單片機的雙向數據接口,并具有內置的地址/數據鎖存器(74lS373)。
1 PWM電路的結構規劃
在采用自頂向下(Top_Down)正向設計PWM器件的過程中,芯片的結構劃分和規格定制是整個設計的重要環節,因此合理的結構設計將決定整個設計的成敗。
PWM輸出信號的周期、脈寬、死區時間等參數可以通過加載內部的寄存器來實現,寫人PWM芯片的數據分為數據字與控制字兩部分。由內部控制邏輯(ControlLogie)模塊來處理控制字信息,并譯碼產生各內部通道的內部信息寄存器片選信號。數據字則通過內部數據總線在各通道模塊來傳遞PWM的特征信息數據。
PWM芯片內部各模塊可通過內部片選結合讀寫使能來完成數據交換。芯片與外圍控制器進行數據交換時,可采用雙模式接口(8/16 bits),并可通過外置選擇引腳DataWidth來選配。
本芯片的核心是由3個完全獨立且相同的通道模塊(Channel)構成。通道內部的數據接口用于完成外部讀寫邏輯(RWLogic)傳輸到內部數據總線的數據收發工作。PWM周期生成模塊(ClkGen)則可依據寫入的周期信息,輸出PWM的周期控制信號。
PWM輸出由通道狀態機完成,當通道接收到PWM信息數據后,先進行數據校驗,合格的數據將在合適的條件下啟動狀態機,并在不同的狀態下完成PWM輸出。而不合格的數據則被忽略。
地址/數據鎖存依據通用74LS373的邏輯功能,可以通過編寫一個完全可替代的L74LS373來實現。
根據上述總體的構建思路,最終給出的芯片總體結構如圖l所示。
2 PWM電路的結構設計
從圖1所示的PWM電路總體結構可以看出,該PWM電路主要由模塊片選譯碼、控制邏輯、讀寫邏輯、通道等四個模塊組成。
pwm相關文章:pwm原理
評論