单片机/MCUwilliam hill官网
直播中

readlove1

13年用户 155经验值
擅长:嵌入式技术
私信 关注
[问答]

pwm输出控制直流电机。在软启动时占空比是变化的,每10毫秒输出一次?为什么pwm是每10毫秒输出一次?

程序大概是这样的:
motor_duty=2;
sum_duty=1;
if(timer_10ms++>=2)// 定时器中断时间为5毫秒
{
motor_duty + = sum_duty;// 这种简单粗暴的pwm占空比算法,有人知道吗?
sum_duty+=8;
pwm( motor_duty);// 我想知道pwm为什么是每10毫秒输出一次
}

回帖(5)

人中狼

2017-9-17 10:33:05
输出PWM的操作都是在if(timer_10ms++>=2)// 定时器中断时间为5毫秒,这条语句的判断成立的基础上的,这里现在是10毫秒满足条件,如果改成timer_10ms++>=4,那就是20毫秒输出一次了
举报

readlove1

2017-9-17 10:55:15
我想知道的是为什么要10毫秒输出一次?这是怎么得来的。
举报

jiciwi

2017-9-17 14:37:39
这个10ms只是经验的东西吧,软启动就是占空比逐渐增大
举报

readlove1

2017-9-17 16:48:26
引用: jiciwi 发表于 2017-9-17 14:37
这个10ms只是经验的东西吧,软启动就是占空比逐渐增大

软启动时间,您清楚吗?程序里面怎么控制?
举报

jiciwi

2017-9-17 20:43:49
引用: readlove1 发表于 2017-9-17 16:48
软启动时间,您清楚吗?程序里面怎么控制?

程序里面只是设定了一个值而已,你用个8ms什么的关系都不大,重要的是这个过程
举报

更多回帖

发帖
×
20
完善资料,
赚取积分