OpenEdv-开源电子网

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

STM32F103VC的TIM1 4通道比较输出PWM,单独控制每个通道。再启动后最后个脉冲不完整

[复制链接]

7

主题

25

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2019-8-22
在线时间
173 小时
发表于 2020-2-18 15:03:44 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 CKJJJJ 于 2020-2-18 15:15 编辑

如题,我用TIM1的4通道比较输出功能,指定脉冲数后调用个函数停止单个通道输出脉冲。然而再次启动后前面脉冲没问题,反倒是最后一个出了问题。请问有大佬给解惑么?硬币奉上
void TIMx_PWM_OutPut(TIM_TypeDef* TIMx,uint16_t TIM_Channel,FunctionalState NewState)
{
        if(TIM_Channel == 0)
                return;
        
        switch(TIM_Channel)
        {
                case 1:
                        if (NewState != DISABLE)
                                TIMx->CCER|=(1<<0);//打开通道1
                        else
                                TIMx->CCER&=0xfffe;//关闭通道1
                        
                        TIM_ITConfig(TIMx,TIM_IT_CC1,NewState);
                        break;
                case 2:
                        if (NewState != DISABLE)
                                TIMx->CCER|=(1<<4);//
                        else
                                TIMx->CCER&=0xffef;//
                        
                        TIM_ITConfig(TIMx,TIM_IT_CC2,NewState);
                        break;
                case 3:
                        if (NewState != DISABLE)
                                TIMx->CCER|=(1<<8);//
                        else
                                TIMx->CCER&=0xfeff;//
                        
                        TIM_ITConfig(TIMx,TIM_IT_CC3,NewState);
                        break;
                case 4:
                        if (NewState != DISABLE)
                                TIMx->CCER|=(1<<12);//
                        else
                                TIMx->CCER&=0xefff;//
                        
                        TIM_ITConfig(TIMx,TIM_IT_CC4,NewState);
                        break;
                default:
                        break;
        }
}



1.png
2.png

最佳答案

查看完整内容[请看2#楼]

谢谢!可能因为我用了个变量来启停输出的缘故,导致不准确。后面我去掉就可以了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

25

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2019-8-22
在线时间
173 小时
 楼主| 发表于 2020-2-18 15:03:45 | 显示全部楼层

谢谢!可能因为我用了个变量来启停输出的缘故,导致不准确。后面我去掉就可以了
回复

使用道具 举报

6

主题

412

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2722
金钱
2722
注册时间
2019-8-14
在线时间
415 小时
发表于 2020-2-19 17:25:25 | 显示全部楼层
帮顶!!!
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
8
金钱
8
注册时间
2020-2-28
在线时间
2 小时
发表于 2020-2-28 14:17:06 | 显示全部楼层
学习了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-25 22:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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