如何控制定时器启停

2019-07-20 16:27发布


想实现这样的功能:通过一个按键启动定时器输出PWM波,另一个按键终止PWM波。尝试过对定时器 TIMx 控制寄存器 (TIMx_CR1)的CEN位置1和归0控制,可以启动但是无法终止PWM输出。

请大神指点怎样终止PWM输出

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
周瑛子
1楼-- · 2019-07-21 17:17
likunxue 发表于 2017-3-3 11:21
如果是高级定时器TIM1或TIM8 可以控制 TIMx->BDTR  的15位 MOE  置1输出,置0禁止输出

我使用CEN位控制通用定时器,两个键设置为开启状态没有问题,但设置为禁能状态不起作用,依然有输出
周瑛子
2楼-- · 2019-07-21 22:27
likunxue 发表于 2017-3-3 11:33
BIT_ADM(TIM3->DIER, 0) = 1;         //允许定时器更新中断

        我是这样做的,但是没有效果

        key=KEY_Scan(0);         //得到键值
                   if(key)
                {                                                  
                        switch(key)
                        {       
                                case KEY1_PRES:       
                                TIM5->DIER|=1<<0;
                                 TIM5->CR1|=0<<0;            //使能定时器5
               
                        //        TIM5->CCR1=TIM5->CCR1+50;
                                break;                 
                                case KEY2_PRES:       
                                TIM5->CR1|=1<<0;            //使能定时器5
                                break;
                        }       
                       
                }
操作系统
3楼-- · 2019-07-21 22:50
 精彩回答 2  元偷偷看……
周瑛子
4楼-- · 2019-07-22 01:26
操作系统 发表于 2017-3-3 13:55
PWM应该用CCER1 或者CCER2 或者 BKR来控制比较好吧.

CCER试了下依旧没有中断,BKR是啥
周瑛子
5楼-- · 2019-07-22 03:08
 精彩回答 2  元偷偷看……
操作系统
6楼-- · 2019-07-22 07:21
周瑛子 发表于 2017-3-3 16:58
CCER试了下依旧没有中断,BKR是啥

bkr 是刹车寄存器.有的定时器有,有的没有. PWM功能不要中断吧.

一周热门 更多>