无法看到广告数据

2个职位/ 0个新职位
最后发表
swesbrj77
离线
最后看到:5年7个月前
加入:2015-11-25 19:57
无法看到广告数据

你好,我一直在尝试DA14580的基本设计,现在,还没有遇到任何成功。我对BLE还是个初学者,但我足够了解它现在应该可以工作了。我将从ble_app_barebone示例开始,并尝试在外部触发器上更改广告数据。当我运行这个示例而不做任何更改时,我可以在我的手机上看到广告。一旦我改变了源文件,我就再也看不到广告了。

安装过程如下:

  • 采用村田开发板和包含DA14580核心的芯片和J-Link LITE外设。
  • 要检测信号,我正在使用Android手机(Moto X 2013,支持BLE),其中一些扫描仪从Android App Store下载(蓝牙Le Scanner,RNF主控制面板)。我的笔记本电脑不幸的是不支持ble。
  • 我的应用程序总是发布广告,并在外部触发器上定期更新广告数据。不需要连接。外部触发器正在工作(即,我成功地能够捕获一个按钮事件,并切换一个LED响应)。
  • 我目前尝试首先使用无定向广告,这样我的代码将尽可能接近ble_app_barebone示例。一旦这个启动并运行,我计划将它切换到非连接广告。


目前,我有以下几个问题:

  1. 我如何知道BLE是否接受我试图让它使用的广告包?我可以查询BLE当前的广告功能的状态吗(例如,如果它是广告,它的数据是什么,等等)?
  2. 如果我使用非连接广告,但不改变示例中的任何其他设置,该设备还会被发现吗(以一种我手机上的BLE扫描仪会捕捉到它的方式)?是否有一个特定的Android扫描仪应用程序建议开发?
  3. 当更新广告数据时,我明白我必须停止广告数据,生成一个新的广告包,然后用新的包重新开始广告。那是正确的吗?
  4. 我知道最大数据包大小是31字节。这包括广告包结构内部的大小和类型吗?我听说其中三个字节是保留的,但是广告大小和类型在一起只包含两个字节。这三个保留字节是什么,我们必须显式地将它们包含在我们的广告数据结构中吗?另外,这些字段中的哪些被计算到数据长度字段中,哪些没有?例如,数据包长度字段本身是数据包长度的一部分吗?那么数据包类型字段呢?
  5. 有没有建议的资源如何使用Keil调试器?我担心我只是有点运行代码并查看它是否有效,这不是很有帮助。
  6. 有没有办法我可以打印tf()直接到Keil控制台?或者,是否有用于启动和运行UART的资源?UART和UART2之间的区别是什么(在Murata开发板上使用一个比另一个更合适)?我能够运行SDK附带的UART示例,但还没有成功地将UART支持合并到我的代码中。


我正试图按照UM-B-051中指定的API工作,当然当然会赞赏任何额外的资源。预先感谢您的帮助。

MT_dialog
离线
最后看到:5个月2个星期前
工作人员
加入:2015-06-08 34
嗨swesbrj77,

嗨swesbrj77,

1)你正在改变广告包,但你无法看到你的设备是否真的在做广告?如果广告成功你应该看到你的设备advrtising字符串的祝福电话,如果您使用的是赞成或专家工具包(嵌入一个电流测量电路必须能够看到3峰值,表明你的设备是3种不同的广告渠道)。如果你不能在电话上看到你的广告包,很可能是广告字符串有问题。

2)是的,你的手机应该能够发现非连接的广告包,没有特定的android ble应用程序,几乎所有可用的应用程序都能够跟踪广告字符串。

3)是的,为了更新广告字符串,你必须停止广告。

4)是的,广告字符串31字节,但3字节是强制性的,所以你不能有你的数据在所有31字节。这些字节是AD标志,请检查规范以获得更多相关信息。

5)你可以查看ARM keil的网站,获取更多关于keil的信息,或者对话的入门文档,获取如何下载代码到你的da的快速入门指南。

6)我们的大部分客户使用da的UART进行调试。您可以在文档UM-B-050第7节外设示例应用程序中找到如何使用UART,也可以在UM-B-051中查看UART的驱动程序。亚博国际官网平台网址这两个UART实现之间没有区别。请尝试以下链接http://support.dialog-semiconductor.com/sdk-5-uart

谢谢mt_dialog.