你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
讨论一下STM32编码器接口
[复制链接]
collins
提问时间:2017-11-27 20:47 /
阅读主题, 点击返回1楼
赞
0
收藏
0
评论
28
分享
发布时间:2017-11-27 20:47
请先
登录
后回复
28个回答
the_newbie
回答时间:2017-12-21 19:55:24
a0a.1 32b0c
也应该不会有什么大问题
赞
0
评论
回复
支持
反对
yangjiaxu
回答时间:2017-12-21 20:10:29
a0a.1 32b0c
电机转速测量 就霍尔传感器就行,第二,您这接俩定时器 应该会有冲突的
赞
0
评论
回复
支持
反对
谦
回答时间:2017-12-21 20:17:05
a0a.1 32b0c
没有处理过类似的问题,不过,我觉得单片机的定时器都是相对独立的,可以在硬件上将信号分路引入不同的定时器引脚,应该没有问题的
赞
0
评论
回复
支持
反对
手捧流年风和月
回答时间:2017-12-21 20:34:44
a0a.1 32b0c
没有处理过类似的问题,同时将一个信号接到两个定时器应该没问题,布线方式可能会造成捕获到不同的结果,但是毫无意义。既然ST留了编码器接口,为什么不从编码器接口获取到的数据来进行处理呢?经过处理也可以得到电机转速。
赞
0
评论
回复
支持
反对
豳草
回答时间:2017-12-21 20:34:54
a0a.1 32b0c
我没有类似的经验。但是我觉得没有隐患。定时器本来就是捕获脉冲的,而且32的定时器性能更加强大。可以更加精确地从测量编码器的速率。
赞
0
评论
回复
支持
反对
anobodykey
回答时间:2017-12-21 21:35:30
a0a.1 32b0c
这个没试过,可能会有隐患我觉得,一个信号接两个接口,中断来临时这两个中断肯定一起来,当处理时肯定有先后顺序的,如果速度比较慢我觉得还可以,速度快的话个人感觉会影响中断处理
赞
0
评论
回复
支持
反对
wolfgang
回答时间:2017-12-21 22:36:34
a0a.1 32b0c
可不用两个定时器
stm32的每个定时器的通道1和通道2内置了正交编码器模块,可以直接使用。
....
TIM_EncoderInterfaceConfig(ENCODER_TIMER, TIM_EncoderMode_TI12, TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);//使用编码器模式3
....
TIM_ICInitStructure.TIM_ICFilter =ICx_FILTER;//选择输入比较滤波器
通过读取TIM1->CNT的值来获取正交编码值了。
赞
0
评论
回复
支持
反对
feixiang20
回答时间:2017-12-21 22:39:32
a0a.1 32b0c
只要不发生结构性错误有什么好担心的
赞
0
评论
回复
支持
反对
yang_alex
回答时间:2017-12-21 22:49:19
a0a.1 32b0c
将一个编码器信号同时接到两个定时器的做法会不会有什么隐患存在主要在于你处理定时器中断的触发条件,以及中断处理时间。比如,你触发条件一样,只会有一个优先级高的中断会响应。其次,一个中断处理时间会不会影响到另外一个定时中断的处理或计时。 如果处理好了两个定时中断的触发条件和优先级设置,问题是可以解决的。另外一个办法可以采用中断嵌套的办法来解决你的问题。
赞
0
评论
回复
支持
反对
七哥
回答时间:2017-12-21 23:03:50
a0a.1 32b0c
自己虽然没这么做过,但是看过STM32手册,对采集编码器原理也略有了解。同时接到两个定时器上,问题不大,唯一需要注意的是,如果用了中断,那么中断优先级要控制好,中断服务程序也要尽可能精简。
赞
0
评论
回复
支持
反对
day_day
回答时间:2017-12-21 23:28:28
a0a.1 32b0c
感觉不会存在问题吧,既然有优先级,虽然是一起到达的,两个优先级应该可以处理这种状况。
赞
0
评论
回复
支持
反对
枫W
回答时间:2017-12-21 23:28:28
a0a.1 32b0c
没这样用过,但是可以尝试,如果能分时复用,可以分时测量;如果两个信号并联,可能会造成信号叠加失真。
赞
0
评论
回复
支持
反对
埃斯提爱慕
回答时间:2017-12-21 23:46:14
a0a.1 32b0c
提示:
作者被禁止或删除 内容自动屏蔽
赞
0
评论
回复
支持
反对
fangsir
回答时间:2017-12-22 00:00:27
a0a.1 32b0c
一个编码器信号同时接到两个定时器通过中断嵌套可以实现啊!就是你要处理好两个中断的优先级和中断服务程序的执行时间的配合。
赞
0
评论
回复
支持
反对
1
2
/ 2 页
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
stm32的每个定时器的通道1和通道2内置了正交编码器模块,可以直接使用。
....
TIM_EncoderInterfaceConfig(ENCODER_TIMER, TIM_EncoderMode_TI12, TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);//使用编码器模式3
....
TIM_ICInitStructure.TIM_ICFilter =ICx_FILTER;//选择输入比较滤波器
通过读取TIM1->CNT的值来获取正交编码值了。