采用MCS-51單片機實現(xiàn)CPFSK調(diào)制
對于一個周期函數(shù)可以進行傅里葉級數(shù)的展開,級數(shù)的一般表達式為:
當按上述方法進行PWM調(diào)制時,圖2下圖函數(shù)傅里葉級數(shù)的an均為0,當n為偶數(shù)時,bn也為0。所以正弦波PWM調(diào)制的傅里葉級數(shù)為:
根據(jù)階梯圖形表示連續(xù)曲線時,階梯越細圖形越精確的原理,認為用PWM調(diào)制正弦波時,時段分割越多,調(diào)制出的正弦波越精確。如果不考慮級數(shù)中的直流成分,可以得到不同時段的諧波系數(shù),如表1所示。
從表1可以看出,諧波系數(shù)隨著諧波次數(shù)的增加逐漸減小,但在n=K-1處系數(shù)會突然增大,之后又逐漸減小。而這種突然增大的比值隨著時段分割數(shù)的增加總體呈下降趨勢。
另一方面,突然增大的比值,隨著時段分割數(shù)的增加而向高次諧波方向移動。對這種遠離基波的高次諧波,只要采用低通濾波器就能很容易將其去除,我們所關(guān)心的是如何盡可能減小基波附近諧波的系數(shù)。
從表1可以看出,隨著時段分割數(shù)的增加,離基波較近的諧波系數(shù)也呈下降趨勢。所以通過對時段的細分,信號的高次諧波,特別是接近基波的諧波成分會進一步減少。
2 信號輸出
由于采用了正弦波PWM調(diào)制,單片機輸出信號只要經(jīng)過簡單的低通濾波器就可以得到平滑的正弦波信號。圖3中的74HC04是CMOS反相器,這里它起緩沖驅(qū)動作用。
因為單片機的P1~P3口是準雙向口。作為輸出口時低電平有一定的吸收電流能力,但高電平輸出電流的能力很小,這就使輸出信號的開關(guān)特性有較大差異。而CMOS反相器的輸出采用P溝道和N溝道MOS管構(gòu)成的對稱互補結(jié)構(gòu),使輸出信號的“0、1”有相同的開關(guān)特性,能保證低電平的吸收電流和高電平的輸出電流相同。圖3中R1、R2為1kΩ的電阻,C1、C2、C3為0.1μF的獨石電容。當時段分割為20,正弦波信號頻率為1180Hz時,圖3中A、B、C三個端口的輸出波形如圖4所示。
3 CPFSK調(diào)制
軟件調(diào)制是將正弦波分為若干個時段,并計算出每個時段內(nèi)高電平和低電平所占用的時間,這些時間在單片機中用軟件延時實現(xiàn)。
為了敘述方便,首先定義幾個符號:
φ――軟件調(diào)制所在的相位;
T――相位角為φ時對應(yīng)時段的機器周期總和;
T1――相位角為φ時對應(yīng)時段的高電平機器周期;
T0――相位角為φ時對應(yīng)時段的低電平機器周期;
T1180――相位角為φ時頻率為1180Hz正弦波對應(yīng)時段的機器周期總和;
T980――相位角為φ時頻率為980Hz正弦波對應(yīng)時段的機器周期總和。
根據(jù)圖2中面積相等,即S1=S2的要求可以得到:
如果單片機的晶振頻率為11.0592MHz,完成頻率為980Hz的正弦波調(diào)制需要=940個機器周期,完成頻率為1180Hz的正弦波調(diào)制需要=781個機器周期。20等分能夠?qū)?40整除,得到每個時段的機器周期數(shù)T980=47。但=39余1,如果將余數(shù)1丟掉,就會造成頻率為1180Hz的正弦波頻率誤差變大。實際編程時可以將余數(shù)1插補在20個時段中的某個時段中,也就是19個時段為T1180=39個機器周期,1個時段為T1180=40個機器周期。T0和T1的計算如表2所示。
評論