采用单片机以扫描内存数据表的 方法产生频率、幅值极为稳定的正弦波,用以同三角波比较,发生 SPWM 正弦脉宽调制波。SPWM 波的频率、幅值均可在大范围内连续平滑调节。由于这种方法占用单片机机器时间较少,单片机可同时用于控制规律等的计算。这种 SPWM 发生器具有高精度、低成本、简单可靠、实用之特点。
代码:
const int SPsinetable[] =
{
//采样数 12 , 30度一个点 N = 32768
//f(x) = N/2 + N/2-1 * sin(2πx/N) x∈[0…N-1]
0x4000,0x6000,0x776C,0x7FFF,
0x776C,0x6000,0x4000,0x2001,
0x0894,0x0001,0x0894,0x2000
};