OpenEdv-开源电子网

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

有趣现象,定时器初始化还分顺序,具体原因不知。

[复制链接]

2

主题

5

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2019-7-17
在线时间
4 小时
发表于 2019-8-2 08:48:56 | 显示全部楼层 |阅读模式
1金钱
本人做一个工程实践,需要用到较多的定时器,在使用高级定时器的过程中,发现配置都是正确的,就是有些能正常,有些不能正常,搞了大半天,原来是定时器初始化顺序问题

【正常】:
        TIM1_PWM_Init();
        TIM2_Int_Init(999,7199);//10Khz的计数频率(0.1ms),计数到999+1为100ms  
        TIM3_PWM_Init(899,0);                 //不分频。即输出PWM方波频率=72000/(899+1)=80Khz
        TIM5_Cap_Init(0XFFFF,72-1);        //以1Mhz的频率计数
         
        TIM4_Encoder_Init(65535,0);

         由于定时器1在最前面初始化,定时器1就能够正常运行

【不能使用】:
        TIM2_Int_Init(999,7199);//10Khz的计数频率(0.1ms),计数到999+1为100ms  
        TIM3_PWM_Init(899,0);                 //不分频。即输出PWM方波频率=72000/(899+1)=80Khz
        TIM5_Cap_Init(0XFFFF,72-1);        //以1Mhz的频率计数
         
        TIM4_Encoder_Init(65535,0);

        TIM1_PWM_Init();
      定时器1放最后了,程序无错,定时器1就是不能用,不知道什么情况,有明白的大神,指点一下。


微信截图_20190802084127.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2019-8-3 02:24:51 | 显示全部楼层
仿真,看看寄存器差异就知道了
回复

使用道具 举报

1

主题

44

帖子

0

精华

高级会员

Rank: 4

积分
651
金钱
651
注册时间
2019-6-5
在线时间
54 小时
发表于 2019-8-3 08:42:01 | 显示全部楼层
学习一下!
回复

使用道具 举报

1

主题

44

帖子

0

精华

高级会员

Rank: 4

积分
651
金钱
651
注册时间
2019-6-5
在线时间
54 小时
发表于 2019-8-3 08:42:44 | 显示全部楼层
学习一下...
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-30 19:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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