12
返回列表 发新帖我要提问本帖赏金: 60.00元(功能说明)

[APM32E1] 玩转APM32的DMA-用DAC和DMA生成正弦波

[复制链接]
3451|22
 楼主| shanyuxiang 发表于 2025-10-15 16:53 | 显示全部楼层
雾里闲逛 发表于 2025-10-15 10:28
这个和PWM的优势在哪里啊

PWM波属于数字信号只有0或3.3V,需要滤波才能变成模拟信号;
DAC产生的直接是模拟信号,产生的模拟量精度更高。
wuyu4001 发表于 2025-10-17 21:44 | 显示全部楼层
int generate_sine_wave(unsigned short buf[])

{

    double temp;

    unsigned short i;



    for (i = 0; i < WaveLength; i++)

    {

        temp = sin(i * PI / 180.0) * 2048.0;

        temp = temp + 2047.0;



        buf[i] = (unsigned short)temp;

    }

}

其中sin计算速度快不快,能进行高频率的FOC开发吗?
 楼主| shanyuxiang 发表于 2025-10-18 09:33 | 显示全部楼层
wuyu4001 发表于 2025-10-17 21:44
int generate_sine_wave(unsigned short buf[])

{

这是纯软件算的,具体速度没测过,
FOC开发最好用带三角函数计算单元的芯片,例如APM32F035
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部