亲爱的对话团队,
再会。
我想请求支持获取以下要求。
供参考。我正在使用Panasonic Pan1740 BLE模块和对话框开发套件(Pro)
1.我遇到了一个项目描述:对话框串行端口服务(DSP),我想请求项目示例代码以及文档(解释DSPS代码如何写入)。
2.使用DSPS代码,请建议:
- 更改代码以使用GATT服务:UUID - 0000 FFF0作为TX / RX示例
- 使用UUID - 0000 FFF1添加/修改新特性作为写入/读取功能,使主机(例如Android Phone)写入/读入Pan1740。
- 用于数据写入(主机到PAN1740),源代码的哪个部分将以我们(最终用户)应用程序的写入数据发送到我们(最终用户)应用程序的某些回调函数。
- 用于数据读取,源代码的哪一部分将呼叫我们的应用程序,以便应用程序并将数据传递给BLE堆栈以向我们的应用程序发送或一些回调函数。
- 使用uuid - 0000 fff2添加/修改新特征作为读/写的能力,以便像0000 fff1一样的写入/读数
3.在Pan1740中传输的最大有效载荷是什么基于DAP DA-14580 BLE芯片组?
4.如何更改连接间隔(TX之间的休眠时间)?在MS方面是什么是连接间隔的最短期限?
5.用于访问外部闪存的任何示例代码,用于用户数据存储及其相应的文档。
6. PAN1740开发(基于DA-14580)在以下术语上提到,请在每个项目使用的情况下解释:
- OTP.
- SPI Flash.
- EEPROM.
期待您的指导和支持。
设备:

嗨ngchinping,
您可以从以下链接中获取DSP的源代码和应用程序的正确文档http://support.dialog-semicondiondiondum/product/da14580为了进一步自定义应用程序并添加额外的特性更改服务等UUID,您可以在以下链接上建议文档http://support.dialog-semicondiondiondum/resource/b-029-tutorial-developi ...此外,您可以在此链接上找到自定义配置文件代码的示例http://support.dialog-semicondiondiondum/resource/b-029-tutorial-files-su ...。最大有效载荷取决于主机和外围设备之间的聚集。DA符合蓝牙规范,因此最大MTU是规范定义的MTU。为了访问外部存储器,您可以在SDK中的Peripheral_examples项目中查看示例,并且还有很多参考设计,例如,使用SPI标识和相应的文档。请查看文档和参考设计。
谢谢mt_dialog.
嗨mt_dialog,
我目前正在与Ngchinping相同的项目一起工作。谢谢mt_dialog为您的回复。
除此之外,我们想知道我们是否可以使用Keil项目进行软件调试。我们发现当我们在Keil调试模式下运行Pan1740(即使没有断点),设备无法连接。当我们退出调试模式时,设备只能连接。
非常感谢你
嗨tkcheng,
当设备在扩展或深度睡眠模式下运行时,您无法执行软件调试。要调试所有应用程序,您必须从DA14580_CONF雷竞技安卓下载IG.H文件中禁用休眠状态。如果在睡眠时调试在休眠状态时停止,并且陷入困境的循环中被捕获,直到禁用跳动。
谢谢mt_dialog.
嗨mt_dialog,
非常感谢,现在我可以执行调试。
从文档中,似乎读取特性在BLE堆栈中执行,使用在创建特征时创建的变量,而无需从应用程序的干预(或未执行Appliation函数调用)。如果我的理解是正确的,请告诉我。
由于我的应用程序要求设备能够从外部存储器读取大部分数据(4k-8k),并根据主机请求给出数据的子集。由于总数据非常大,因此创建此变量阵列并不是可行的,并让读取特性来处理读取过程是不可行的。如何更改代码,以使这是可行的?
我正在考虑实现读取特征发生时会调用的函数,并且该功能将能够访问需要批量数据,选择需要的数据集并发回主机。请指导我实施此方法。
最后,当我尝试使用DSP的样本时,当从主机写入设备时,似乎从接收功能中缺少第一个字节。当我从手机发送21个字节时,只能接收20byte,删除第一个字节,只能接收到21个字节,gattc_write_cmd_ind_handler()/ app_ble_push()函数。
非常感谢您,非常感谢您的支持。
您是正确的,读取特征命令直接在BLE堆栈中执行。它只是回复当前存储在ATT DB中的值。
我看到三个选择:
1.让主服务向您发送写入命令。收到此命令后,您可以启动批量数据读数。完成后,将值存储为特征并发送写入响应。当主机接收到写入响应时,它立即发出读取请求(可能是读取长度的特征请求,以在每个事务中获取更多数据(最多512字节))。增加MTU以获得更好的性能,否则会很慢。
2.让主发送给您的写命令。收到此命令后,您可以启动批量数据读数。在检索数据时,您将通知发送到每个通知中最多20个字节。这将是最快的方式,因为DA14580可以在每个连接事件中自动适合多个通知,并且实现很简单。
3.使用DSP,为您处理一切。
关于21个字节:除非您增加了默认MTU,否则您只能在标准写命令中拟合20个字节。如果在GATT上使用一层(如DSP),则应为您进行分段和重新组装。
嗨Joacimwe,
我用方法1,工作得很好。
非常感谢你。