智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2083|回复: 12
打印 上一主题 下一主题

如何判断FTM中断是由Rising还是Failing触发

[复制链接]

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
80
威望
40
贡献
22
兑换币
22
注册时间
2014-3-31
在线时间
9 小时
毕业学校
中山大学
跳转到指定楼层
1#
发表于 2014-3-31 19:20:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
FTM是可以在初始化时通过设置Rising_or_Failiing设定为双触发的,那请问要如何判断当前的触发是由Rising 还是 Failing事件触发的呢?
回复

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
80
威望
40
贡献
22
兑换币
22
注册时间
2014-3-31
在线时间
9 小时
毕业学校
中山大学
2#
 楼主| 发表于 2014-3-31 20:02:14 | 只看该作者
本帖最后由 hmyyellow 于 2014-3-31 20:11 编辑

竟然没人理那就把这贴写成问题解决过程吧提出这个问题,主要是我们在做一个倒立摆的实验。目地是使用一个编码器来测倒立摆的偏转角。
我们通过根循迹法确定了偏转角和应给小车加速度之间的关系。目前小车能在初始的几秒内保持稳定,但是时间一长会由于方向的反复偏差使得测量的偏转角产生较大误差,故想使用倍频的方法来消除误差(详见bbs.21ic.com/icview-50575-1-1.html)K60的FTM是可以配置为Rising_or_Failing的方式触发,但看说明无法找到当前触发事件是Rising 还是 Failing

回复 支持 反对

使用道具 举报

32

主题

3009

帖子

0

精华

杰出人士

学期班的来卖萌?

Rank: 12Rank: 12Rank: 12

积分
14832

在线王奖章活跃会员奖章优秀会员奖章论坛元老奖章资源大师奖章

威望
5952
贡献
3172
兑换币
4257
注册时间
2013-11-26
在线时间
2854 小时
3#
发表于 2014-3-31 22:08:16 | 只看该作者
你是怎么初始化的就是怎么触发啊。。。
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
80
威望
40
贡献
22
兑换币
22
注册时间
2014-3-31
在线时间
9 小时
毕业学校
中山大学
4#
 楼主| 发表于 2014-3-31 22:23:00 | 只看该作者
zhou1994 发表于 2014-3-31 22:08
你是怎么初始化的就是怎么触发啊。。。

呃。。可能没表达清楚。这么说吧,若触发时我设置为Rising_or_Failiing,而非单纯的Risin或者Failiing,那么FTM被触发时除非直接访问那个接口的寄存器取值(当然,如果我找到方法读的话早就不用纠结了),是无法判断本次触发到底是由Rising还是Failing触发的
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
80
威望
40
贡献
22
兑换币
22
注册时间
2014-3-31
在线时间
9 小时
毕业学校
中山大学
5#
 楼主| 发表于 2014-3-31 22:26:46 | 只看该作者
忽然想到了一个很挫的解决办法,既然问题是不知道如何在已将某管脚(PTXx)设为FTM触发时如何读它的值而无法判断当前为Rising 或 Failing,那不如直接另开一路gpio,把PTXx用电线直接多分一路接到新开的gpio上,然后直接gpio_get去读PTXx的值就完事啦!
回复 支持 反对

使用道具 举报

32

主题

3009

帖子

0

精华

杰出人士

学期班的来卖萌?

Rank: 12Rank: 12Rank: 12

积分
14832

在线王奖章活跃会员奖章优秀会员奖章论坛元老奖章资源大师奖章

威望
5952
贡献
3172
兑换币
4257
注册时间
2013-11-26
在线时间
2854 小时
6#
发表于 2014-3-31 22:50:41 | 只看该作者
hmyyellow 发表于 2014-3-31 22:23
呃。。可能没表达清楚。这么说吧,若触发时我设置为Rising_or_Failiing,而非单纯的Risin或者Failiing,那 ...

我懂你的意思了。你就说你想从跳变沿里面找出本次触发的方式嘛。但是你为什么要这么做呢?
回复 支持 反对

使用道具 举报

5

主题

154

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1277
威望
623
贡献
330
兑换币
347
注册时间
2013-7-17
在线时间
162 小时
毕业学校
JNU
7#
发表于 2014-4-1 00:00:03 | 只看该作者
触发后读io电平是良策
回复 支持 反对

使用道具 举报

162

主题

2048

帖子

5

精华

超级版主

岳麓山没有车神

Rank: 10Rank: 10Rank: 10

积分
14920

论坛元老奖章优秀会员奖章活跃会员奖章论坛骨干奖章在线王奖章优秀版主奖章资源大师奖章

QQ
威望
6285
贡献
5963
兑换币
2581
注册时间
2013-11-14
在线时间
1336 小时
8#
发表于 2014-4-1 14:19:49 | 只看该作者
为何如此纠结?
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
80
威望
40
贡献
22
兑换币
22
注册时间
2014-3-31
在线时间
9 小时
毕业学校
中山大学
9#
 楼主| 发表于 2014-4-1 20:14:12 | 只看该作者
zhou1994 发表于 2014-3-31 22:50
我懂你的意思了。你就说你想从跳变沿里面找出本次触发的方式嘛。但是你为什么要这么做呢?

因为我们遇到了这样的问题bbs.21ic.com/icview-50575-1-1.html,想要用倍频的方法来解决它
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
80
威望
40
贡献
22
兑换币
22
注册时间
2014-3-31
在线时间
9 小时
毕业学校
中山大学
10#
 楼主| 发表于 2014-4-1 20:16:50 | 只看该作者
czr27 发表于 2014-4-1 00:00
触发后读io电平是良策

其实经过测试,这个方法也是不行的。因为有延迟这个问题的存在,所以即使设置为只通过Rising来触发FTM,就算在FTM Handler里第一句就去用gpio_get去读电平,读到的都不一定是1
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-7 00:27 , Processed in 0.068994 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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