YFROBOT创客社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: aosini
打印 上一主题 下一主题

编码器速度和方向检测,371电机方向与速度检测,stm32编码器接口模式

  [复制链接]

签到天数: 63 天

[LV.6]常住居民II

51#
 楼主| 发表于 2015-10-9 08:21:53 | 只看该作者
wodezpy 发表于 2015-10-8 10:29
我有个疑问:我能不能通过人为的给某个通道用导线接个高或低电平(因为下图有个相对电平为高或者低),然 ...
14.3.12 编码器接口模式(P273)
选择编码器接口模式的方法是:如果计数器只在TI2的边沿计数,则置TIMx_SMCR寄存器中的SMS=001;如果只在TI1边沿计数,则置SMS=010;如果计数器同时在TI1和TI2边沿计数,则置SMS=011。
按照手册来说,是可以的 您可以试一下
回复 支持 反对

使用道具 举报

签到天数: 63 天

[LV.6]常住居民II

52#
 楼主| 发表于 2015-10-9 10:32:58 | 只看该作者
wodezpy 发表于 2015-10-9 10:07
结果失败了,不知道什么问题!

[AppleScript] 纯文本查看 复制代码
//TIM2_Encoder_Init,Tim2_CH1(PA0);Tim2_CH2(PA1)
//arr:自动重装值 0XFFFF
//psc:时钟预分频数        ,不分频
void TIM2_Encoder_Init(u16 arr,u16 psc)
{
    RCC->APB1ENR|=1<<0;       //TIM2时钟使能
        RCC->APB2ENR|=1<<2;       //使能PORTA时钟
        
    GPIOA->CRL&=0XFFFFFF00;   //PA0、PA1 清除之前设置
    GPIOA->CRL|=0X00000044;   //PA0、PA1 浮空输入
            
    TIM2->ARR=arr;            //设定计数器自动重装值 
    TIM2->PSC=psc;            //预分频器

        TIM2->CCMR1 |= 1<<0;          //输入模式,IC1FP1映射到TI1上
        TIM2->CCMR1 |= 1<<8;          //输入模式,IC2FP2映射到TI2上
        TIM2->CCER |= 0<<1;                  //IC1不反向
        TIM2->CCER |= 0<<5;           //IC2不反向
        TIM2->SMCR |= [color=#ff0000]3[/color]<<0;                  //所用输入均在上升沿或下降沿有效
        TIM2->CR1 |= 1<<0;                  //使能计数器
}

只把3改为1或2试一下,看上一次给您的回复
回复 支持 反对

使用道具 举报

签到天数: 1 天

[LV.1]初来乍到

53#
发表于 2015-10-12 15:17:24 | 只看该作者
楼主 您好,请问您能不能告诉下我,要是加上中断该怎么加呢????

现在计数只能-65535/2~65535/2,可是加了中断后变成0~65535,只要反转就从0马上进入中断,好奇怪
回复 支持 反对

使用道具 举报

签到天数: 63 天

[LV.6]常住居民II

54#
 楼主| 发表于 2015-10-13 08:35:06 | 只看该作者
活在瞬间 发表于 2015-10-12 15:17
楼主 您好,请问您能不能告诉下我,要是加上中断该怎么加呢????

现在计数只能-65535/2~65535/2,可 ...

编码器模式是不需要中断的
回复 支持 反对

使用道具 举报

该用户从未签到

55#
发表于 2015-10-13 20:57:48 | 只看该作者
楼主,我这边编译出现了很多错误,请教是什么问题呢。请问你那边原来编译出现过错误吗??
回复 支持 反对

使用道具 举报

签到天数: 63 天

[LV.6]常住居民II

56#
 楼主| 发表于 2015-10-14 10:01:12 | 只看该作者
wcb198866 发表于 2015-10-13 20:57
楼主,我这边编译出现了很多错误,请教是什么问题呢。请问你那边原来编译出现过错误吗??

软件的版本不同,使用会有所区别,您要先用这个版本的软件创建一个简单的工程,之后您就会知道如何用这个软件了。
回复 支持 反对

使用道具 举报

该用户从未签到

57#
发表于 2015-10-14 20:09:36 | 只看该作者
刚学这个,楼主高手,您是如何调用库文件呀!麻烦您指导一下!谢谢
回复 支持 反对

使用道具 举报

签到天数: 63 天

[LV.6]常住居民II

58#
 楼主| 发表于 2015-10-15 08:11:47 | 只看该作者
cbcy 发表于 2015-10-14 20:09
刚学这个,楼主高手,您是如何调用库文件呀!麻烦您指导一下!谢谢

这几句话还真的说不清楚,你先学会建立一个简单的跑马灯,估计这个你就就自然而然的会调用了
回复 支持 反对

使用道具 举报

该用户从未签到

59#
发表于 2015-10-23 11:25:44 | 只看该作者
aosini 发表于 2015-10-14 10:01
软件的版本不同,使用会有所区别,您要先用这个版本的软件创建一个简单的工程,之后您就会知道如何用这个 ...

请问你有没有在stm32f4上做过编码器解码??求助
回复 支持 反对

使用道具 举报

签到天数: 63 天

[LV.6]常住居民II

60#
 楼主| 发表于 2015-10-23 14:47:01 | 只看该作者
wcb198866 发表于 2015-10-23 11:25
请问你有没有在stm32f4上做过编码器解码??求助

不好意思 没有哦 ?但是我想应该是一样的,您可以看一下stm32f4编码器部分的手册,对比一下看看。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|联系我们|YFROBOT ( 苏ICP备20009901号-2  

GMT+8, 2024-11-21 20:41 , Processed in 0.108442 second(s), 22 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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