历史上的今天
返回首页

历史上的今天

今天是:2025年01月29日(星期三)

2019年01月29日 | 关于STM32正交编码器边沿的理解

2019-01-29 来源:eefocus

STM32中的TIM_EncoderInterfaceConfig()函数。其配置的定时器有编码器接口等功能,一般是定时器的通道1和通道2才能作为编码器的输入口,对应编码器输出的两项。 

TIMx参数就是使用哪个定时器作为编码器接口的捕捉定时器。 

一般一个编码器占用一个定时器。 

TIM_EncoderMode参数是模式,是单相计数(只能反映速度)还是两相计数(速度和方向)。 

TIM_IC1Polarity和TIM_IC2Polarity参数就是通道1、2的捕捉极性。 

但是一般来说,STM32对应的都是两相计数,一项计数容易误判,也就是说,你可以按一路计数,但是接线时好像两相的编码线A,B都是需要接上的,否则容易误判。

  

一:Counting on TI1 only(通过TI1来计数,一个周期内只能有两个跳边沿): 

若TI2为高时(第一行):TI1上升沿则向下计数,下降沿则向上计数。 

1时刻:TI2为低电平,TI1上升沿跳变,计数器向上计数; 

3时刻:TI2为高电平,TI1下降沿跳变,计数器仍然向上计数。 

二. Countingon TI1 and TI2:一个周期完成4次跳变。精度提高 

1时刻:TI2为低电平,TI1上升沿跳变,计数器向上计数; 

2时刻:TI1为高电平,TI2上升沿跳变,计数器仍然向上计数; 

3时刻:TI2为高电平,TI1下降沿跳变,计数器仍然向上计数; 

4时刻:TI1为低电平,TI2下降沿跳变,计数器仍然向上计数。


 

上图可见编码器模式下不支持配置双边沿模式


上图可见STM32的编码器都是双边沿触发的   上升下降沿只是配置极性而已,个人理解也就是在输入端接个反相器。

上图是ST的标准外设库,说明的很明确。


可以在初始化代码中添加这么一句,就可以实现单通道计数,一个上升沿、一个下降沿计数器变化1


实测OK


TIM_PrescalerConfig(TIM2, 1 , TIM_PSCReloadMode_Immediate);



推荐阅读

史海拾趣

BRIGHT公司的发展小趣事

随着BRIGHT公司在国际市场上的不断拓展,其品牌和产品也引起了一定的争议。在一些国家和地区,BRIGHT公司的某些行为或言论引发了公众的不满和批评。然而,这并没有阻挡BRIGHT公司前进的步伐。他们坚持自己的发展策略,通过不断创新和改进产品,积极应对各种挑战和机遇。在国际市场上,BRIGHT公司逐渐树立起了自己的品牌形象,并为电子行业的发展做出了重要的贡献。

这些故事展示了BRIGHT公司在电子行业中的不同领域所取得的成就和发展。无论是无线耳机领域的开创者、太阳能领域的突破者,还是健康技术领域的创新者、酒店业务的拓展者,以及在国际市场上的拓展与争议,都体现了BRIGHT公司不断创新、追求卓越的精神。这些故事不仅反映了BRIGHT公司的发展历程,也展示了电子行业的多样性和活力。

Gold Peak Group公司的发展小趣事
控制电路的布局应合理,避免元件之间的电磁干扰和机械碰撞。
Daburn公司的发展小趣事

Daburn公司一直将研发创新作为公司发展的核心动力。公司拥有一支专业的研发团队,不断推出具有创新性和竞争力的新产品。同时,Daburn还注重客户需求,提供定制化的解决方案。这种以客户为中心的服务理念让Daburn赢得了众多客户的青睐。

CMOSIS公司的发展小趣事

在追求经济效益的同时,CMOSIS公司也注重可持续发展和社会责任。公司积极采用环保材料和工艺,减少生产过程中的能源消耗和废弃物排放。同时,公司还积极参与社会公益活动,为推动社会进步和可持续发展贡献自己的力量。这些举措不仅提升了公司的社会形象,也为公司的长期发展奠定了坚实的基础。

请注意,以上故事是基于一般性的电子行业发展趋势和CMOS图像传感器市场的特点构建的,并未涉及CMOSIS公司的具体内部情况。如果需要更详细和准确的信息,建议直接查阅CMOSIS公司的官方资料或相关新闻报道。

振宝佳(DMBJ)公司的发展小趣事

振宝佳(DMBJ)公司自成立之初,就专注于贴片铝电解电容的研发与生产。在1998年之前,公司一直在台湾深耕细作,积累了丰富的技术实力和市场资源。进入21世纪,随着电子产业的快速发展,振宝佳意识到技术突破的重要性。于是,公司投入大量资源,研发出多项专利技术,这些技术不仅提升了产品的性能,也增强了公司的市场竞争力。

Glenair公司的发展小趣事
电路中的连接线可能松动、接触不良或断裂,导致信号无法正确传输。

问答坊 | AI 解惑

开源的国外AT91SAM7S64开发板

开源的国外AT91SAM7S64开发板…

查看全部问答>

提供另一種 Cadence Allegro SPB 16.2 的 安裝資料

Allegro 另外一種安裝方式的說明, 先安裝 License 文件, 再安裝 Allegro [ 本帖最后由 dale 于 2009-11-16 01:21 编辑 ]…

查看全部问答>

继电器粘连问题

  现在遇到一个问题,公司主板需要控制继电器输出,继电器控制灯光等电器。由于现场采用了节能灯,而节能灯都带整流器。因此才灯光启动的时候,会造成继电器粘连。以前处理办法就是外接一个大功率固态继电器。问一下大家,有没有其它办法 ...…

查看全部问答>

为什么EVC创建建Pocket PC 2003 程序时,默认就变standardsdk了?

然后我选Pocket PC 2003 平台,evc就卡住了 .无法响应 都重装好几次EVC,Pocket PC 2003  SDK了…

查看全部问答>

为什么sysgen hpc 产生两个大小不同的ceshell.lib

C:\\WINCE500\\PBWorkspaces\\simu3\\WINCE500\\Emulator_x86\\cesysgen\\sdk\\lib\\x86\\retail\\ceshell.lib   (5K) C:\\WINCE500\\PUBLIC\\SHELL\\OAK\\LIB\\X86\\RETAIL\\ceshell.lib    (1150K) 我的hpc是从wince老版本 ...…

查看全部问答>

求助!怎样理解一种开发板能不能支持某种操作系统?

各位好: 我买开发板的时候经常听到有人问这种开发板能不能支持某一种操作系统,比如VxWorks操作系统。 我是菜鸟,我不理解所谓的开发板能不能支持什么操作系统。但我查了有关资料之后就产生如下理解: “一种开发板能不能支持某一种操作系统, ...…

查看全部问答>

一个学了一年VC的人去做车载音响软件开发需要学习什么硬件知识,请大家帮忙!

        各位好,请过来人帮忙!我本来是准备走VC应用程序道路的,大四上学期才开始学的VC,找了将近半年多的VC工作没有找到。现在反而找到一个机会去做车载音响软件开发。当时面试官说你学桌面软件的,但我们是做那种单片机 ...…

查看全部问答>

(MSP430分享)使用MSP430单片机做产品写程序的体会

使用TI的MSP430芯片已经有几年了,最近做产品用到了一款MSP430G2231,很愿意和大家分享一下。     先说一下这个MSP430G2231,面对巨大的中低端MCU市场的诱惑,TI终于不再沉默,推出了G2xx系列超值MCU,其实它和Fxx系列mcu完全兼容,只是 ...…

查看全部问答>

我为北京国企整车厂猎贤

实验室管理工程师 设备管理工程师 电池质量工程师 EMC整改工程师 信号完整性分析工程师 硬件电路设计工程师 软件工程师 硬件工程师 Windows程序开发工程师 电池管理系统控制策略开发工程师 电池管理系统安全工程师 电网配电工程师 充电 ...…

查看全部问答>