想知道STM32用调制法产生SPWM波程序是不是符合我下面猜测的呢?

想知道STM32用调制法产生SPWM波程序是不是符合我下面猜测的呢?,第1张

看来你还不理解定时器的工作原理, 向上计数模式工作时,CNT(定时器计数)从0开始计数时钟源脉冲数,达到ARR时开始下一个0开始计数周期,这就是三角波(频率由时钟源和ARR决定)。

通道工作在比较模式时 ,CCR(比较寄存器)数值和CNT进行比较,比较结果直接回输出在对应通道的引脚上。每个周期结束时更新比较寄存器的数据(参考正玄波数据点按照载波频率采样的交点数值,事先就计算好的),就可以输出相应SPWM了

你这个是初始化程序,子程序可用定时器中断子程序细分SPWM,也可以PWM中断计数细分,定时器细分占用MCU资源少,PWM中断的话占用资源比较大但精度高。SPWM可以用查存放正弦波数组取得,也可以用内部数学函数产生,或者将正弦函数初始化调到数组再查表

负载上得到的是交流信号,何必区分哪是正半周,哪是负半周,对于半桥来说,上管导通是正半周,下管导通是负半周。全桥就不必区分了。只要保证任何时候都是一上一下导通,上下臂不同时导通就可以了。另外图中电路应该有问题,SPWM1 SPWM3不能直接由单片机输出,必须进行电平偏移才可以,下管的源极是地,栅极只要3V以上的电压就 可以导通,因此可由单片机直接控制(高速时也要加电流放大),而上管必须要很高的电压才可以开通。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12055113.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存