在論壇上看到越來越多的地方在討論用單片機直接輸出SPWM波形的話題,但大多數(shù)都是在爭論單片機能否實現(xiàn)的問題,就我最近在網(wǎng)上查找的一些單片機的資料,有一些增強型的單片機應該是可以的,如:
菲利浦的p89lpc938,輸出PWM最高32M,晶振最高18M,指令執(zhí)行時間2至4個時鐘周期。我目前所用
c80051F系列,單周期指令執(zhí)行,最高可達100MIPS(據(jù)宣傳)。輸出I/O可編程。功能強大。
還有在論壇上常看見的Si8250好像也不錯。
雖然在這里列出了幾款單片機,我希望在下面的帖子就不要再討論有關單片機硬件的問題。
希望大家多多討論SPWM的算法,以及用單片機實現(xiàn)的控制過程
我現(xiàn)在僅對規(guī)則采樣法了解一點,公式如下:
脈寬=aTcsin(wTd) Tc為載波頻率,a為調制度,w為正弦波角頻率, Td為脈沖所在的時間。這個公式算出的結果用兩個IO輸出,當一個IO輸出一個半波的PWM時,此時另一個輸出為無效電平。
我用單片機實現(xiàn)這個公式的想法:
用查表的方法。把0.5Tcsin(wTd)算出做一個表格,用一個八位的A/D來采樣輸出電壓的變化,計算后得到a值,再根據(jù)下面的式子算出實際的脈寬:0.5aTcsin(wTd)/128,這僅是我一點單純的思路,希望大家積極發(fā)表意見,特別是如果我的想法有不對的地方,