OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子全套STM32开发资料,上千讲STM32视频教程,RT1052教程免费下载啦...
查看: 17365|回复: 95

分享:增量型AB相编码器检测

[复制链接]

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
发表于 2015-1-5 14:30:24 | 显示全部楼层 |阅读模式
这个是我整理好的。希望能帮到迷途中的小盘友。
啥都别废话了直接给范例程序。^_^

编码器测试V3.5.rar

294.59 KB, 下载次数: 7525

原子哥是不是又要出黑科技了呀。^_^...
回复

使用道具 举报

  离线 

10

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2016-4-25
在线时间
31 小时
发表于 2016-5-11 20:04:23 | 显示全部楼层
fanghuiopenedv 发表于 2016-5-11 17:19
N=xxxx  这里的xxxx就是编码器的码值。可以理解成是脉冲数值。
如果你用的是1024线的编码器,那么转动一 ...

大神再麻烦您下,(电机尾部自带了13 线的磁(霍尔)编码器,减速比30:1 的电机,车轮转一圈,电机可以输出390 个脉冲)这个是 电机的编码器说明,可是我在看N值都是在十几到一千多这样来回循环。能在给下详解吗,谢谢
回复 支持 2 反对 0

使用道具 举报

  离线 

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-4-30
在线时间
2 小时
发表于 2015-5-25 08:45:08 | 显示全部楼层
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(19): error:  #5: cannot open source input file "stm32f10x_lib.h": No such file or directory

楼主,这个一直报错。。。。
回复 支持 1 反对 0

使用道具 举报

  离线 

509

主题

9万

帖子

31

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
132852
金钱
132852
注册时间
2010-12-1
在线时间
1247 小时
发表于 2015-1-5 22:57:51 | 显示全部楼层
不错,谢谢分享。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 1 反对 0

使用道具 举报

  离线 

15

主题

146

帖子

0

精华

高级会员

Rank: 4

积分
725
金钱
725
注册时间
2013-8-27
在线时间
318 小时
发表于 2015-1-6 08:27:15 | 显示全部楼层
谢谢分享,赞一个!(好东西要让它火起来)
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-1-15 10:47:08 | 显示全部楼层
回复【3楼】潜龙探渊:
---------------------------------
呜呜呜……还没火起来呢。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

0

主题

3

帖子

0

精华

新手入门

积分
23
金钱
23
注册时间
2015-3-10
在线时间
0 小时
发表于 2015-3-10 16:42:47 | 显示全部楼层
没看到相关程序→_→
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-3-11 10:33:29 | 显示全部楼层
回复【5楼】mm218457mm:
---------------------------------
仔细找啊。哈哈,^_^----(在stm32f10x_encoder.c里面)
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

4

主题

25

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
240
金钱
240
注册时间
2014-1-7
在线时间
41 小时
发表于 2015-4-21 17:49:51 | 显示全部楼层
回复【6楼】fanghuiopenedv:
---------------------------------
啊,库函数的,这我也看不懂的啊
回复 支持 反对

使用道具 举报

  离线 

2

主题

17

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2014-8-13
在线时间
0 小时
发表于 2015-4-22 18:02:45 | 显示全部楼层
楼主厉害,最近正好在头疼编码开关的,试了一下,好用,谢谢分享了!!!
三年
回复 支持 反对

使用道具 举报

  离线 

8

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
84
金钱
84
注册时间
2014-8-13
在线时间
5 小时
发表于 2015-4-23 00:51:35 | 显示全部楼层
先下载了慢慢学习,楼主好人一生平安
回复 支持 反对

使用道具 举报

  离线 

3

主题

16

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2015-5-8
在线时间
0 小时
发表于 2015-5-10 16:39:59 | 显示全部楼层
先下载来学习了,谢谢哈
回复 支持 反对

使用道具 举报

  离线 

1

主题

7

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2015-3-5
在线时间
2 小时
发表于 2015-5-14 17:21:41 | 显示全部楼层
回复【10楼】cfree59742:
---------------------------------
楼主,,能不能发一个stm32官方的正反编码器的例程啊,,官网上找不到
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-15 14:02:27 | 显示全部楼层
回复【11楼】李双:
---------------------------------
这个就是官方给的,只是经过几个人修改过了。我修改了下才能使用(之前的编译报错)。官方原版的我也没有呀。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-4-30
在线时间
2 小时
发表于 2015-5-25 08:50:59 | 显示全部楼层
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(45): error:  #20: identifier "bool" is undefined
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(45): error:  #20: identifier "TRUE" is undefined
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(76): error:  #20: identifier "TIM3_IRQChannel" is undefined
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(122): error:  #20: identifier "U32_MAX" is undefined
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(208): error:  #20: identifier "FALSE" is undefined
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(288): error:  #20: identifier "U16_MAX" is undefined
..\STM32F10x_FWLib\src\stm32f10x_encoder.c(338): error:  #20: identifier "U16_MAX" is undefined

楼主,这些都是怎么解决的???
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-25 11:08:57 | 显示全部楼层
回复【14楼】吃咯:
---------------------------------
我用的是keil4 你用的是keil5吧。3.6版的已经上传,可以试试这个3.6的编译报错不,我这里不报错的。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-25 11:12:47 | 显示全部楼层
3.5版本的需要屏蔽这个://#include "exti.h"
之前没有细看,修改下就发帖了。这次有空看了下,发现编译报错,把exti.h屏蔽了就可以编译通过了。
新版上传如下:(已经编译通过)

编码器测试V3.6.rar

294.6 KB, 下载次数: 3979

原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-25 11:32:08 | 显示全部楼层
回复【13楼】吃咯:
---------------------------------
C:\Keil\ARM\INC\ST\STM32F10x\stm32f10x_lib.h
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-4-30
在线时间
2 小时
发表于 2015-5-25 16:23:07 | 显示全部楼层
回复【17楼】fanghuiopenedv:
---------------------------------
哥们,能不能提供下stm32f10x_lib.h这个文件。。我的老提示没有stm32f10x_map.h这个文件
回复 支持 反对

使用道具 举报

  离线 

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-4-30
在线时间
2 小时
发表于 2015-5-25 20:48:15 | 显示全部楼层
回复【17楼】fanghuiopenedv:
---------------------------------
D:\MDK4.70A\ARM\Inc\ST\STM32F10x\stm32f10x_lib.h(22): error:  #5: cannot open source input file "stm32f10x_map.h": No such file or directory
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-26 17:09:10 | 显示全部楼层
回复【18楼】吃咯:
---------------------------------
不是给你说了么 在这个目录下:C:\Keil\ARM\INC\ST\STM32F10x\stm32f10x_lib.h
如果没有说明你没有安装MDK或者是不完整的mdk。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-26 17:11:04 | 显示全部楼层
回复【19楼】吃咯:
---------------------------------
keil要安装到c盘的keil目录下,就是默认的目录,不然要修改好多的环境变量的。新手还是建议安装到默认目录下。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-4-30
在线时间
2 小时
发表于 2015-5-26 19:42:52 | 显示全部楼层
楼主,这是我写的程序。。用来检测脉冲个数的,不能正常工作,请你帮我看一下。。。

编码器测速.zip

5.9 MB, 下载次数: 3542

回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-5-27 08:39:47 | 显示全部楼层
回复【22楼】吃咯:
---------------------------------
编码器的函数你没有调用啊。就是没有调用:Encoder_server();
比如改成:
while(1)
{
         Encoder_server();
}
void Encoder_server(void)
{
        /*硬件连接的是PA6和PA7 必须是这两个脚,外部用的是高速光耦隔离 C410光耦 增量型AB相编码器 */
        if(delay_time2 == 0){
                delay_time2=50;
                rintf_encoder(Printf_TIMCNT);
                LCD_ShowxNum(20,40, TIM_GetCounter(ENCODER_TIMER),2,16,0);
        }
}
注意:这个编码器检测是有硬件要求的,你要确保连接的是PA6和PA7.
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
94
金钱
94
注册时间
2015-4-30
在线时间
2 小时
发表于 2015-5-28 20:05:25 | 显示全部楼层
回复【23楼】fanghuiopenedv:
---------------------------------
我硬件上是连接了的。。我再试下
回复 支持 反对

使用道具 举报

  离线 

4

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-1-19
在线时间
0 小时
发表于 2015-6-16 20:55:35 | 显示全部楼层
学习了!好东西
回复 支持 反对

使用道具 举报

  离线 

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2013-3-27
在线时间
0 小时
发表于 2015-7-2 22:42:48 | 显示全部楼层
回复【25楼】cxran2wms:
---------------------------------
回复【16楼】fanghuiopenedv:
---------------------------------
您好,请问为什么我在下载下来encoder 文件夹是空的啊? 能不能帮我重新发一个啊?万分感激!
为了心中的梦想 努力奋斗吧!
回复 支持 反对

使用道具 举报

  离线 

0

主题

7

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2015-6-3
在线时间
3 小时
发表于 2015-7-3 11:49:21 | 显示全部楼层
谢谢分享!!!
开启超人模式!
回复 支持 反对

使用道具 举报

  离线 

6

主题

26

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2014-4-1
在线时间
5 小时
发表于 2015-7-3 16:57:15 | 显示全部楼层
很好,学习了
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-7-4 09:19:39 | 显示全部楼层
回复【7楼】chengfen:
---------------------------------
恰恰相反,我看不懂寄存器的呢。当然也不是不会,只是很少用寄存器的。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-7-4 09:21:50 | 显示全部楼层
回复【8楼】chen_jp:
---------------------------------
不客气,能帮到你就行。^_^
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

29

主题

85

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
247
金钱
247
注册时间
2015-4-26
在线时间
5 小时
发表于 2015-7-20 11:57:04 | 显示全部楼层
谢谢分享,可能要用的到
回复 支持 反对

使用道具 举报

  离线 

1

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2015-6-6
在线时间
0 小时
发表于 2015-7-20 12:22:09 | 显示全部楼层
不知楼主是有意删除了,还是无意漏发了,项目中的Printf_encoder()函数在哪里??
三更有梦书当枕,千里怀人月在峰!
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-7-21 10:52:38 | 显示全部楼层
回复【32楼】laidaihua:
---------------------------------
双击--右键--定义---就能找到啊。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

1

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2015-6-6
在线时间
0 小时
发表于 2015-7-22 10:37:13 | 显示全部楼层
回复【33楼】fanghuiopenedv:
---------------------------------
你给的Encoder目录是删空了的,也就是说关键的编码器代码被故意删掉了,右键有什么用??
三更有梦书当枕,千里怀人月在峰!
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-7-22 16:30:55 | 显示全部楼层
回复【34楼】laidaihua:
---------------------------------
谁说的啊。我可是把源码给上传了的。你下载错了吧(楼上有个不是我上传的,那个是他修改后的,有问题的!)。你下载我上传的V3.6版本的。没有缺少任何东西的哦。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-7-22 16:35:24 | 显示全部楼层
回复【34楼】laidaihua:
---------------------------------
文件没有放在HARDWARE\encoder目录下。你自己没有仔细找!这个encoder文件夹是我建立的,但是没有使用的哦。
是你自己没有仔细找,别抱怨我呀。比窦娥还冤枉呢我。55555……
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

7

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2015-6-21
在线时间
2 小时
发表于 2015-7-22 19:22:53 | 显示全部楼层
感谢分享分享
回复 支持 反对

使用道具 举报

  离线 

4

主题

9

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2015-4-11
在线时间
0 小时
发表于 2015-7-28 12:48:06 | 显示全部楼层
火起来了,谢谢分享
回复 支持 反对

使用道具 举报

  离线 

2

主题

7

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2015-8-5
在线时间
0 小时
发表于 2015-8-5 10:18:36 | 显示全部楼层
回复【15楼】fanghuiopenedv:
---------------------------------
楼主我和13楼是同样的问题,我觉得这是版本的问题,我是keil5,我把你的程序编译下,结果没有"stm32f10x_lib.h",后来发现高版本的stm32f10x_lib.h变成了stm32f10x.h,然后我把stm32f10x_lib.h变成stm32f10x.h后结果出现了和13楼一样的问题
回复 支持 反对

使用道具 举报

  离线 

2

主题

7

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2015-8-5
在线时间
0 小时
发表于 2015-8-5 10:41:11 | 显示全部楼层
回复【39楼】___heima__:
---------------------------------
楼主的库函数版本应该是2.0的,现在麻烦事怎么改为3.5的版本,如果要改的话怎么改,希望楼主和大神指教
回复 支持 反对

使用道具 举报

  离线 

2

主题

7

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2015-8-5
在线时间
0 小时
发表于 2015-8-5 11:15:20 | 显示全部楼层
我想知道的是楼主是怎么编译成功的,用了stm32f10x_lib.h和stm32f10x.h,这两个不会有重复定义吗,
回复 支持 反对

使用道具 举报

  离线 

2

主题

7

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2015-8-5
在线时间
0 小时
发表于 2015-8-5 17:49:02 | 显示全部楼层
回复【4楼】fanghuiopenedv:
-------------------------------
先谢谢楼主,有了这个模板我把它成功改造为v3.5版本的了,但是楼主本身的代码在我的MDK上有错,经过一天的努力。我发现楼主的程序理论上是不能通过编译的,stm32f10x_lib.h包含stm32f10x_map  stm32f10x_nvic  stm32f10x_type和这三个合起来会和stm32f10x.h有重复定义,而楼主stm32f10x_lib.h和stm32f10x.h这两个都用了,我不明白是怎么通过编译的。大家想知道stm32f10x_lib.h和stm32f10x.h的关系请看http://www.openedv.com/posts/list/37542.htm,或者这里 http://www.openedv.com/posts/list/29355.htm  这两个讲的相对比较清楚,我的代码经过改造暂时调试成功,还没硬件调试,如果可以,我会把模板发下来。
回复 支持 反对

使用道具 举报

  离线 

19

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2015-1-14
在线时间
7 小时
发表于 2015-8-6 10:51:41 | 显示全部楼层
回复【8楼】chen_jp:
---------------------------------
帅哥,能否发一份到我邮箱里呀,编了几天程序,还是没弄出来16112540732qq.com
回复 支持 反对

使用道具 举报

  离线 

19

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2015-1-14
在线时间
7 小时
发表于 2015-8-6 10:53:13 | 显示全部楼层
回复【42楼】___heima__:
---------------------------------
帅哥,能否发一份到我邮箱里呀,编了几天程序,还是没弄出来16112540732qq.com
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-8-7 09:45:10 | 显示全部楼层
回复【44楼】CUTE-BOY:
---------------------------------
在这个帖子上找v3.6版本的压缩包,自己下载就行了的。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-8-7 09:46:13 | 显示全部楼层
回复【42楼】___heima__:
---------------------------------
我编译了,可以通过啊。我用的是keil4.12版。v3.6版可以通过的。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

30

主题

707

帖子

1

精华

新手入门

积分
15
金钱
15
注册时间
2013-3-14
在线时间
52 小时
 楼主| 发表于 2015-8-7 09:47:02 | 显示全部楼层
回复【42楼】___heima__:
---------------------------------
我实际也测试了,可以检测编码器的。
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

  离线 

19

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2015-1-14
在线时间
7 小时
发表于 2015-8-8 09:38:27 | 显示全部楼层
回复【45楼】fanghuiopenedv:
---------------------------------
编译通不过呀
回复 支持 反对

使用道具 举报

  离线 

19

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2015-1-14
在线时间
7 小时
发表于 2015-8-8 09:43:36 | 显示全部楼层
回复【46楼】fanghuiopenedv:
---------------------------------
而且,我是V3.5版本的
回复 支持 反对

使用道具 举报

  离线 

2

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2015-6-19
在线时间
7 小时
发表于 2015-8-9 10:13:37 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

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

本版积分规则




关闭

必看,必学:"原子哥”力荐上一条 /1 下一条

正点原子公众号

QQ|联系我们|手机版|官方淘宝店|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2018-9-24 23:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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