51uwb.cn

 找回密码
 立即注册
查看: 17116|回复: 30
打印 上一主题 下一主题

DWM1000 收发数据总是超时

[复制链接]

7

主题

37

帖子

78

积分

注册会员

Rank: 2

积分
78
跳转到指定楼层
楼主
发表于 2020-7-13 18:07:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近刚用uwb模块开始做项目,遇到了问题,不知道是不是官方的bug,也是用 官方的api例程, A标签往B基站发送poll包, B基站可以接收到poll包,但是延迟发送respone包的时候,api函数总是返回dwt_error,供应商告诉我,不要用hal库,也不要用st以外的板子,换了stm32f103(标准库)和stm32f429(hal库),发现还是不行,厂商说不要去修改那些时间延迟,个人感觉,每一次spi通信时间都是us级别,按理来说不加大延迟,一定会是失败的,不知道是不是这个原因,我的SPI的速率都是16m,是否要调整成和官方说的要20m以上,按供应商说的,把respone包调整为马上发送,但是 A标签收不到respone包,接收总是超时,对应的 A标签接收respone包的延迟是否要大于 B基站 从接收poll包到发送respone的时间,我看蓝点大佬的视频,延迟都是ms级别。
回复

使用道具 举报

35

主题

1040

帖子

4469

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4469
沙发
发表于 2020-7-13 19:46:35 | 只看该作者
你用的是官方源码吗?
不应该有这么大延迟的,我们测距一次,三四条信息下来2ms左右。
回复

使用道具 举报

7

主题

37

帖子

78

积分

注册会员

Rank: 2

积分
78
板凳
 楼主| 发表于 2020-7-13 21:03:32 | 只看该作者
蓝点无限 发表于 2020-7-13 19:46
你用的是官方源码吗?
不应该有这么大延迟的,我们测距一次,三四条信息下来2ms左右。

你们填写那几个延迟参数都是多少啊,用的是官方API,模块初始化都没问题,就是交互的时候出问题了。尤其是收到poll包,发送respone的时候,一直都是发送失败,官方说法就是超过规定的延迟时间了,如果设置马上发送, 标签这里就收不到回包,提示超时
回复

使用道具 举报

35

主题

1040

帖子

4469

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4469
地板
发表于 2020-7-14 08:47:09 | 只看该作者
gi7878 发表于 2020-7-13 21:03
你们填写那几个延迟参数都是多少啊,用的是官方API,模块初始化都没问题,就是交互的时候出问题了。尤其 ...
  1.     dwt_setrxtimeout(0);
  2.     dwt_rxenable(0);
复制代码


可能你timeout设置调小了。 这样就不会超时了
回复

使用道具 举报

5

主题

29

帖子

264

积分

中级会员

Rank: 3Rank: 3

积分
264
5#
发表于 2020-7-14 08:57:24 | 只看该作者
我是延时发送一直发送失败 ,不知道楼主解决了吗
回复

使用道具 举报

7

主题

37

帖子

78

积分

注册会员

Rank: 2

积分
78
6#
 楼主| 发表于 2020-7-14 09:20:44 | 只看该作者
蓝点无限 发表于 2020-7-14 08:47
可能你timeout设置调小了。 这样就不会超时了

我看标签这边dwt_setrxtimeout(2700),如果写成0,不是时间更短了吗,还是我理解有问题
回复

使用道具 举报

7

主题

37

帖子

78

积分

注册会员

Rank: 2

积分
78
7#
 楼主| 发表于 2020-7-14 09:21:11 | 只看该作者
haonan1211 发表于 2020-7-14 08:57
我是延时发送一直发送失败 ,不知道楼主解决了吗

没呀,还在不断的调试中
回复

使用道具 举报

7

主题

37

帖子

78

积分

注册会员

Rank: 2

积分
78
8#
 楼主| 发表于 2020-7-14 09:22:33 | 只看该作者
gi7878 发表于 2020-7-14 09:20
我看标签这边dwt_setrxtimeout(2700),如果写成0,不是时间更短了吗,还是我理解有问题

Poll接收没问题,发送respone包的时候ret = dwt_starttx(DWT_START_TX_DELAYED | DWT_RESPONSE_EXPECTED); 这里ret一直是error
回复

使用道具 举报

7

主题

37

帖子

78

积分

注册会员

Rank: 2

积分
78
9#
 楼主| 发表于 2020-7-14 09:25:16 | 只看该作者
蓝点无限 发表于 2020-7-14 08:47
可能你timeout设置调小了。 这样就不会超时了

而且我还很容已出现一个问题就是,system_status有时候会报SYS_STATUS_CLKPLL_LL
回复

使用道具 举报

35

主题

1040

帖子

4469

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4469
10#
发表于 2020-7-14 10:00:16 | 只看该作者
haonan1211 发表于 2020-7-14 08:57
我是延时发送一直发送失败 ,不知道楼主解决了吗

延时时间太短了,导致配置tx发送命令的时候,延时已经过去。导致tx fifo 发不出去了。
问题这么多,赶快换我们的代码吧
回复

使用道具 举报

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

本版积分规则

bphero Inc.  

GMT+8, 2024-11-1 07:59 , Processed in 0.015496 second(s), 4 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

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