标题: 单片机模拟PWM是不是无法输出高频率? [打印本页]

作者: PEB188    时间: 2022-4-7 08:27
标题: 单片机模拟PWM是不是无法输出高频率?
之前看着便宜买了好多STC8G1K08得单片机,不带A得。现在想用来输出108KHz40%占空比,用定时器模拟好像无法实现啊,定时器最小是1us,就算1us一次中断也只能输出500KHz50%占空比。但这样个位数微秒级的进中断,其它程序就无法正常运行了

作者: Y_G_G    时间: 2022-4-7 11:00
STC8G1K08_20/16pin版本是有PWM功能的
如果是STC8G1K08_8pin版本,那还是换成STC8G1K08A吧
STC8G1K08_8pin连ADC都没有.....
作者: wufa1986    时间: 2022-4-7 11:42
是的,所以外设很重要
作者: PEB188    时间: 2022-4-7 11:57
8脚的,模拟PWM用来驱动电机调速,频率不够,低占空比的时候电机就不转了。刚好手上也有8A的。只好换成8A的了。不过8A的PCA用成PWM最高也只有500KHz左右.要是输出1.7MHz的PWM用什么单片机好,想用来驱动雾化片
作者: hhh402    时间: 2022-4-7 12:23
PEB188 发表于 2022-4-7 11:57
8脚的,模拟PWM用来驱动电机调速,频率不够,低占空比的时候电机就不转了。刚好手上也有8A的。只好换成8A的 ...

驱动电机调速20K足够了,不是越高越好。占空比越低PWM频率要越低,1%占空比时PWM要1hz可以转,太大转不了。PWM最高频率与单片机主频有关,1.7MHz的PWM需要100M以上的主频,STM32才可以,51的不可以。
作者: Y_G_G    时间: 2022-4-7 13:15
PEB188 发表于 2022-4-7 11:57
8脚的,模拟PWM用来驱动电机调速,频率不够,低占空比的时候电机就不转了。刚好手上也有8A的。只好换成8A的 ...

我不知道你是基于什么原理,要那么高的频率去调速的
但我能在网上找出一大堆用8051控制电机的,人家还是用STC89C52的呢
雾化更加不用说,在产品上,几乎都是清一色的硬件振荡电路,没见过用单片机产生PWM的
作者: PEB188    时间: 2022-4-7 14:29
hhh402 发表于 2022-4-7 12:23
驱动电机调速20K足够了,不是越高越好。占空比越低PWM频率要越低,1%占空比时PWM要1hz可以转,太大转不了 ...

用固定频率,20K低占空比的时候电机运行不稳。也就是说调低占空比的时候把频率也同时降下来是吗
作者: PEB188    时间: 2022-4-7 14:30
Y_G_G 发表于 2022-4-7 13:15
我不知道你是基于什么原理,要那么高的频率去调速的
但我能在网上找出一大堆用8051控制电机的,人家还是用 ...

就用占空比去调速的。我是想让它很缓慢的转。。。
作者: hhh402    时间: 2022-4-7 17:07
PEB188 发表于 2022-4-7 14:29
用固定频率,20K低占空比的时候电机运行不稳。也就是说调低占空比的时候把频率也同时降下来是吗

低占空比的时候肯定要降低频率呀,1K就好,100也行,要看电机运行状态,频率低一定是可以转的,但是有可能会震动,你要找到合适的频率。高占空比时太低频率会震动的,所以要不断改变频率,不要固定的。
作者: wd1988    时间: 2022-4-7 17:42
PEB188 发表于 2022-4-7 11:57
8脚的,模拟PWM用来驱动电机调速,频率不够,低占空比的时候电机就不转了。刚好手上也有8A的。只好换成8A的 ...

做雾化器,1.7M2.4M3.0M赛元好像可以

作者: Y_G_G    时间: 2022-4-7 18:52
PEB188 发表于 2022-4-7 14:30
就用占空比去调速的。我是想让它很缓慢的转。。。

雾化器没有实际动手焊过,只有理论知识,这就不说了
电机的话,你试一下只要1KHZ的PWM调速看一下,再用100KHZ试一下,你就知道效果了
作者: yetsky    时间: 2022-4-7 19:02
用定时器模拟高速PWM,CPU资源基本上用的差不多了,其他程序执行会经常被中断.
作者: yzwzfyz    时间: 2022-4-8 15:34
赞同楼主自己的分析计算!
是否可以考虑降低PWM的频率要求呢?不通的话的确不好办。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1