亲爱的对话团队,
再会。
I would like to request support in getting the following request.
供参考。我正在使用Panasonic Pan1740 BLE模块和对话框开发套件(Pro)
1.我遇到了一个项目描述:对话框串行端口服务(DSP),我想请求项目示例代码以及文档(解释DSPS代码如何写入)。
2. Using DSPS code, please advice :
- 更改代码以使用GATT服务:UUID - 0000 FFF0作为TX / RX示例
- Add/Modify new characteristic with UUID - 0000 FFF1 as write/read capable, to enable host(eg android phone) write/read into PAN1740.
- For data writing(host into PAN1740), which part of the source code will be sending the write data to the our(end user) application, or some callback function to the our(end user) application.
- 用于数据读取,源代码的哪一部分将呼叫我们的应用程序,以便应用程序并将数据传递给BLE堆栈以向我们的应用程序发送或一些回调函数。
- 使用uuid - 0000 fff2添加/修改新特征作为读/写的能力,以便像0000 fff1一样的写入/读数
3.在Pan1740中传输的最大有效载荷是什么基于DAP DA-14580 BLE芯片组?
4. How can I change connection interval(sleep time between TX)? What is the minimum period of connection interval, in terms of mS?
5.用于访问外部闪存的任何示例代码,用于用户数据存储及其相应的文档。
6. PAN1740开发(基于DA-14580)在以下术语上提到,请在每个项目使用的情况下解释:
- OTP.
- SPI Flash.
- EEPROM.
looking forward for your guidance & support.
嗨ngchinping,
您可以从以下链接中获取DSP的源代码和应用程序的正确文档http://support.dialog-semicondiondiondum/product/da14580in order to customize further the application and add extra characteristics change UUID on the services etc you can advise the document on the following linkhttp://support.dialog-semicondiondiondum/resource/b-029-tutorial-developi ...此外,您可以在此链接上找到自定义配置文件代码的示例http://support.dialog-semiconductor.com/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,
非常感谢你, now I can perform the debugging.
From the document, it seems that the Read characteristic is perform within the BLE stack, using the variable that is create when characteristic is being created, without intervention from the application (or no appliation function call is being perform). Please let me know if my understanding is correct.
由于我的应用程序要求设备能够从外部存储器读取大部分数据(4k-8k),并根据主机请求给出数据的子集。由于总数据非常大,因此创建此变量阵列并不是可行的,并让读取特性来处理读取过程是不可行的。如何更改代码,以使这是可行的?
我正在考虑实现读取特征发生时会调用的函数,并且该功能将能够访问需要批量数据,选择需要的数据集并发回主机。请指导我实施此方法。
最后,当我尝试使用DSP的样本时,当从主机写入设备时,似乎从接收功能中缺少第一个字节。当我从手机发送21个字节时,只能接收20byte,删除第一个字节,只能接收到21个字节。
非常感谢您,非常感谢您的支持。
您是正确的,读取特征命令直接在BLE堆栈中执行。它只是回复当前存储在ATT DB中的值。
我看到三个选择:
1. Let the master send a write command to you. Upon receiving this command, you initiate your bulk data reading. When you are done, you store the value read into a characteristic and send the write response. When the master receives the write response, it immediately issues a Read request (probably a Read Long Characteristic request to get more data in each transaction (up to 512 bytes)). Increase MTU to get better performance, otherwise it will be very slow.
2.让主发送给您的写命令。收到此命令后,您可以启动批量数据读数。在检索数据时,您将通知发送到每个通知中最多20个字节。这将是最快的方式,因为DA14580可以在每个连接事件中自动适合多个通知,并且实现很简单。
3.使用DSP,为您处理一切。
Regarding 21 bytes: You can only fit 20 bytes in a standard Write Command unless you have increased the default MTU. If you use a layer on top of GATT (such as DSPS), it should do the segmentation and reassembly for you.
Hi Joacimwe,
我用方法1,工作得很好。
非常感谢你。