[技术问答] Autochips的AC7811的timer应用问题

[复制链接]
2007|5
 楼主| xlq3 发表于 2021-3-12 11:02 | 显示全部楼层 |阅读模式
请教一个问题,timer1在中断的时候,改变loadvalue,是否需要重新初始化?还是怎么实现?直接改变loadvalue,发现timer1不工作。
 楼主| xlq3 发表于 2021-3-12 11:06 | 显示全部楼层
代码实现如下:
void Timer1_callback(uint8_t argc)
{
        static uint32_t t1_val = 23999;
        static uint16_t myspeed = pwm_val_init;
       
        if(TIMER_GetIntFlag(TIMER1))
        {
                TIMER_ClrIntFlag(TIMER1);
                my_pwm_syn_test();
//                my_Bemf_Startup(1);
                t1_val -= 20;
               
                TIMER_SetLoadVal(TIMER1, t1_val);       
                BLDC_MotorSpeedSet(myspeed);
                myspeed += 50;
        }
}
 楼主| xlq3 发表于 2021-3-12 12:51 | 显示全部楼层
有大神做过吗?
 楼主| xlq3 发表于 2021-3-12 13:28 | 显示全部楼层
搞定了,原来是变化太快了,最后变为0了。
jcky001 发表于 2021-3-15 14:08 | 显示全部楼层
哈哈哈,原来楼主就是大神啊
心猿归正1983 发表于 2021-5-21 16:45 | 显示全部楼层
请问你用的是什么开发环境?keil 吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

30

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部