[STM32F4] stm32f407 的timer5 和timer2 是不是有bug。

[复制链接]
 楼主| ff8zgs 发表于 2017-7-20 09:02 | 显示全部楼层 |阅读模式
数据手册说,TIM2和TIM5是32位计数器,可是我自己测试发现ARR寄存器只要设置超过24位的数,CNT计数就会乱掉。PS 向上计数,stm32f407zet6.
feelhyq 发表于 2017-7-20 10:47 | 显示全部楼层
应该不会吧,毕竟407出货量很大,很多人都在用
 楼主| ff8zgs 发表于 2017-7-20 11:09 | 显示全部楼层
feelhyq 发表于 2017-7-20 10:47
应该不会吧,毕竟407出货量很大,很多人都在用

问题是我的现象就是,如果tim2和tim5d的ARR寄存器设置超过了24位数,CNT计数是乱的,小于24位数据没有任何问题。所以奇怪才跑来问一下。
df_flying 发表于 2017-7-20 11:39 | 显示全部楼层
本帖最后由 df_flying 于 2017-7-20 11:42 编辑

应该没问题吧,看下配置
feelhyq 发表于 2017-7-20 11:46 | 显示全部楼层
ff8zgs 发表于 2017-7-20 11:09
问题是我的现象就是,如果tim2和tim5d的ARR寄存器设置超过了24位数,CNT计数是乱的,小于24位数据没有任 ...

你配置好寄存器后先运行一会儿,然后查看TIME硬件寄存器各个bit位是不是预期的
strang 发表于 2017-7-20 12:58 | 显示全部楼层
是不是其他功能影响了,建议你建立一个独立的定时器工程试试
 楼主| ff8zgs 发表于 2017-7-20 13:40 | 显示全部楼层
strang 发表于 2017-7-20 12:58
是不是其他功能影响了,建议你建立一个独立的定时器工程试试

就是独立功能,只有TIM2,寄存器每一个都看了的,均正常。出问题就是在ARR上,只要设置超过了24位,CNT计数就是乱的。
mmuuss586 发表于 2017-7-20 14:15 | 显示全部楼层
数据乱了,没有一点规律吗?
应该是你配置的方式不对吧;
54chenjq 发表于 2017-7-20 14:27 | 显示全部楼层
我用这两个定时器做正交编码器,亲测可用
strang 发表于 2017-7-20 15:25 | 显示全部楼层
ff8zgs 发表于 2017-7-20 13:40
就是独立功能,只有TIM2,寄存器每一个都看了的,均正常。出问题就是在ARR上,只要设置超过了24位,CNT计 ...

可能配置上出了问题,要不你用官方stm32cubemx工具配置TIM2试试
戈卫东 发表于 2017-7-20 15:30 | 显示全部楼层
ARR是16BIT不是32BIT
xmshao 发表于 2017-7-20 16:32 | 显示全部楼层
估计你的代码是基于某个工程修改的,你的ARR值被局限于24位了。你直接将对应ARR的代码值修改到32位。

我刚测试了TIM2,Counter可工作在32位。
Mattheww 发表于 2017-7-21 09:15 | 显示全部楼层
单独测试一下定时器功能
icecut 发表于 2017-7-21 10:02 | 显示全部楼层
可见stm32cubemx 存在的意义....
Bjorn 发表于 2017-7-21 16:19 | 显示全部楼层
是不是配置的方式不对?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

199

帖子

1

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