OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4189|回复: 2

PWM脉冲问题请教

[复制链接]

6

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2014-3-21
在线时间
0 小时
发表于 2014-3-27 17:21:46 | 显示全部楼层 |阅读模式

      TIM3_PWM_Init(899,0);  //不分频。PWM频率=72000/900=8Khz
    while(1)
 {
   delay_ms(10); 
  if(dir)led0pwmval++;
  else led0pwmval--;

   if(led0pwmval>400)dir=0;
  if(led0pwmval==0)dir=1;          
  TIM_SetCompare2(TIM3,led0pwmval);    
 } 
 }

110:PWM模式1- 在向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为有效电平,否则为
无效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为无效电平(OC1REF=0),否
则为有效电平(OC1REF=1)。
111:PWM模式2- 在向上计数时,一旦TIMx_CNT<TIMx_CCR1时通道1为无效电平,否则为
有效电平;在向下计数时,一旦TIMx_CNT>TIMx_CCR1时通道1为有效电平,否则为无效电
平。
   我看了手册还有点些还不是很明白,请大家指点下  LED是低电平点亮  原子例程里面设置的向上计数,是PWM模式2  输出比较极性为高,我把led0pwmval设置为899则LED长亮,从比较输出来说都为无效电平,我把led0pwmval设置成0 LED不亮 输高电平 出比较都是有效电平 ,我没搞清楚这个LED的电平到底由谁来控制,我这样理解看对不对,
    中断一次电平会改变一次,这个比较是不是在中断之中就把电平给改变了,比方说现在中断产生了,他到计数899(我把这个899和led0pwmva都看做是计数值l)才会产生下一个中断才会有电平的改变,比方说他在这个计数到899的过程中,他本来应该是低电平的,但是由于有个输入捕获比较,当计数超过led0pwmval的时候他就为高电平了,也就是说来来按照正常的中断 高低电平持续时间是一样,但是由于有了输入比较,他在中断中强制性的改变了这个时间,这是不是就是例程中说的空占比,
      说了这么多 我就总结我的一个想法,指点下,是不是在中断过程了,输入捕获,强制性的改变了这个高低电平持续的时间,本来这个电平我应该持续899个计数次数的时间,却变成了只能持续(899-ledpwmval)个计数次数的时间。这个强制性用得对不对,因为初始LED设置的是高电平,不会亮的,按照8KHZ的中断电平翻转,如果比较捕获不能强制改变电平的话他应该不会亮的
      看了一下午了了 还是迷迷糊糊的,请指点迷津,拜谢!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2014-3-27 18:22:32 | 显示全部楼层
回复【楼主位】abcddcba:
---------------------------------
结合通用定时器框图看看。。。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

6

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2014-3-21
在线时间
0 小时
 楼主| 发表于 2014-3-28 10:05:31 | 显示全部楼层
回复【2楼】xiaoyan:
---------------------------------
你好 先感谢你的回复 ,我看了下框图,在定时器输出之前 有计数器和捕获比较寄存器,再到输出控制,是不是就是说 如果没有捕获那就是计数器直接到输出控制,有捕获的话就还要经过捕获寄存器再到输出是这样的吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 22:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表