你好我正在通过uart将数据从我的设备传输到DA14580,并通过ble到dsps iphone应用程序使用sps_device演示但是我不想连续发送它,我想通过uart接收~5kB到DK,然后通过ble发送到iphone应用程序所以基本上我想发送一批~ 5kB的时间我应该在什么地方做修改
tnxroi
嗨roinovi,
50kB是一个很大的数据量,我不认为你可以增加那么多的缓冲区。虽然你可以试着删除迭代检查我们在app_ble_pull()所以没有发送数据由于时间的流逝,和传送只有当如果你想要达到的极限(阅读量),增加缓冲区的大小尺寸你想要RX_BUFFER_ITEM_COUNT,您还应该小心地在RX_BUFFER_HW限制下设置发送限制为了不丢失数据增加HW。我想这行得通。
由于MT_dialog
我的数据大小是5kB不是50kB,这样更合理吗?我在“app_sps_scheduler.h”中修改了这些#define RX_BUFFER_ITEM_COUNT (int) 4940
#define RX_BUFFER_HWM (int) 3458 //70%#define RX_BUFFER_LWM (int) 1482 //30%在“app_ble_pull”If ((read_amount = app_item_count(&uarttoble_buffer)) ==4940){// if (read_amount >= TX_WAIT_LEVEL | (rounds_waiting++) >= TX_WAIT_ROUNDS)/ / {// rounds_waiting = 0;app_init_ble_tx ();/ /}}
但在iphone应用程序中,它认不出DK然而,当我改变缓冲区大小到2000它工作,应用程序识别DK和我看到的数据在分批(2000字符我假定)的传输2000缓冲区大小是最大的工作,超过这个应用程序不识别DK原因是什么?还有其他参数需要更改吗?为什么缓冲区的大小是有限的?我不能在闪存中存储数据吗?
roi
抱歉50kB,这是一个输入错误,5k仍然是缓冲区要保存的大量数据。这个配置没有测试,我只能提供你一个建议如何做。
没有别的东西,我能想到你应该改变,我猜这是当前内存映射的限制,这就是为什么你不能看到任何功能从应用程序。在闪存中存储数据是你可能想要尝试的东西,因为当外部设备发送你将不得不在闪存中存储数据,我不能确定你是否能够跟上。
嗨,roinovi
#define RX_BUFFER_ITEM_COUNT (int) 4940#define RX_BUFFER_HWM (int) 3458 //70%#define RX_BUFFER_LWM (int) 1482 //30%
是否可以提高每秒SPS kB的速率?
你什么意思“它能增加每秒SPS kB的速率?”
我如何写和读数据到\从闪存?请参考一个例子或手册tnx
请看看在peripheral_examples项目的SDK有一个如何使用SPI flash的例子,也有一些参考设计,如信标和智能标签使用SPI flash。
嗨roinovi,
50kB是一个很大的数据量,我不认为你可以增加那么多的缓冲区。虽然你可以试着删除迭代检查我们在app_ble_pull()所以没有发送数据由于时间的流逝,和传送只有当如果你想要达到的极限(阅读量),增加缓冲区的大小尺寸你想要RX_BUFFER_ITEM_COUNT,您还应该小心地在RX_BUFFER_HW限制下设置发送限制为了不丢失数据增加HW。我想这行得通。
由于MT_dialog
我的数据大小是5kB不是50kB,这样更合理吗?
我在“app_sps_scheduler.h”中修改了这些
#define RX_BUFFER_ITEM_COUNT (int) 4940
#define RX_BUFFER_HWM (int) 3458 //70%
#define RX_BUFFER_LWM (int) 1482 //30%
在“app_ble_pull”
If ((read_amount = app_item_count(&uarttoble_buffer)) ==4940)
{
// if (read_amount >= TX_WAIT_LEVEL | (rounds_waiting++) >= TX_WAIT_ROUNDS)
/ / {
// rounds_waiting = 0;
app_init_ble_tx ();
/ /}
}
但在iphone应用程序中,它认不出DK
然而,当我改变缓冲区大小到2000它工作,应用程序识别DK和我看到的数据在分批(2000字符我假定)的传输
2000缓冲区大小是最大的工作,超过这个应用程序不识别DK
原因是什么?
还有其他参数需要更改吗?
为什么缓冲区的大小是有限的?
我不能在闪存中存储数据吗?
roi
嗨roinovi,
抱歉50kB,这是一个输入错误,5k仍然是缓冲区要保存的大量数据。这个配置没有测试,我只能提供你一个建议如何做。
没有别的东西,我能想到你应该改变,我猜这是当前内存映射的限制,这就是为什么你不能看到任何功能从应用程序。在闪存中存储数据是你可能想要尝试的东西,因为当外部设备发送你将不得不在闪存中存储数据,我不能确定你是否能够跟上。
由于MT_dialog
嗨,roinovi
#define RX_BUFFER_ITEM_COUNT (int) 4940
#define RX_BUFFER_HWM (int) 3458 //70%
#define RX_BUFFER_LWM (int) 1482 //30%
是否可以提高每秒SPS kB的速率?
你什么意思“它能增加每秒SPS kB的速率?”
我如何写和读数据到\从闪存?
请参考一个例子或手册
tnx
嗨roinovi,
请看看在peripheral_examples项目的SDK有一个如何使用SPI flash的例子,也有一些参考设计,如信标和智能标签使用SPI flash。
由于MT_dialog