使用app_easy_timer.

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
10个帖子/ 0个新
最后一篇
哈扎阿夫斯
离线
最后看到:6个月2周前
加入:2020-10-03 13:11
使用app_easy_timer.

亲爱的对话框,

因此,我开始使用DA14585和SDK 6.0.14建立一个小型而简单的项目。我宁愿说的一个小模拟。我想创建一个队列,该队列保存由用户定义的结构数据类型,并且exemple为exemple达到了30秒的每个间隔,直到它达到其最大大小。当建立连接并通过引用BLE外围设备时,当我询问时,当系统未连接时,我询问时,我会如何实现这一点,我设法在建立并获取数据时队列自动填充,然后建立连接一旦建立连接,我会在队列中获取数据计数并开始通过我侧面侧面的特征发送数据本身。即使BLE未激活,也可以使用app_easy_timer函数执行此操作以填充队列?如果是这样,因为它是一个拍摄计时器,有没有办法定期调用eNqueuing函数,直到BLE处于活动状态之前?

谢谢

设备:
PM_Dialog
离线
最后看到:2天14小时前
职员
加入:2018-02-08 11:03
嗨HamzaAffes,

嗨HamzaAffes,

谢谢你在网上提出的问题。您可以将数据存储在广告字符串中,并使用app_easy_timer更新它们。请查看SDK的ble_app_peripheral示例和adv_data_update_timer_cb()函数。这个回调在APP_ADV_DATA_UPDATE_TO秒之后更新特定于制造商的数据。

谢谢,PM_Dialog

哈扎阿夫斯
离线
最后看到:6个月2周前
加入:2020-10-03 13:11
嗨,对话框中,

嗨,对话框中,

能否进一步说明一下如何使用user_peripheral.c文件中的函数来实现我的上述请求?我试图完成的是,定期使用app_easy_timer用随机数填充队列,然后一旦连接建立,我停止排队,我通过类似于app_adcval1_timer_cb_handler的特征发送数据。

谢谢你

PM_Dialog
离线
最后看到:2天14小时前
职员
加入:2018-02-08 11:03
嗨HamzaAffes,

嗨HamzaAffes,

首先,您应该在广告字符串中定义制造商特定数据并使用app_easy_timer更新。请检查更新制造商特定数据的Adv_data_update_timer_cb()。

广告字符串中应该放置的数据量是多少?

请查看以下教程:

http://lpccs-docs.dialog-semiconductor.com/DA145xx_Advertising_Tutorial/changing_advertising_parameters.html#changing-the-advertising-data

连接设备后,应停止计时器,复制数据并通过通知发送它们。

关于BLE通知,请检查app_adcval1_timer_cb_handler()函数。

谢谢,PM_Dialog

哈扎阿夫斯
离线
最后看到:6个月2周前
加入:2020-10-03 13:11
嗨对话,谢谢

嗨对话,谢谢你的回复

#define buffer_length 1000 typedef struct sensoldata_t {uint16_t _sensor1;uint16_t _sensor2;uint16_t _sensor3;uint16_t _sensor4;uint16_t _sensor5;uint16_t _sensor6;uint16_t _sensor7;uint16_t _sensor8;uint16_t _sensor9;uint16_t _sensor10; uint16_t _sensor11 ; uint16_t _sensor12 ; }sensorData_t; sensorData_t SensorDataBuffer[BUFFER_LENGTH];

sensor1 12的值都是随机生成的(空值),然后存储在SensorDataBuffer每30秒,一旦我发送连接存储值一个通过某些订单一分之一app_adcval1_timer_cb_handler所以单个元素sizeof (sensorData_t) 24字节

PM_Dialog
离线
最后看到:2天14小时前
职员
加入:2018-02-08 11:03
嗨HamzaAffes,

嗨HamzaAffes,

只是为了澄清:在通过BLE通知发送之前,您的要求是什么?您是否需要将24bytes放入广告字符串并更新它?

谢谢,PM_Dialog

哈扎阿夫斯
离线
最后看到:6个月2周前
加入:2020-10-03 13:11
嗨,对话框中,

嗨,对话框中,

正如我在Sensordatabuffer之前填充Sensoldata_T变量,所以每隔30秒就像通过堆栈一样推动数据,然后电路板连接到LightBlue应用程序,我可以逐个将所有数据从堆栈中弹出。sensordatabuffer是一个数组,用于存储用于测试目的的随机生成的数据,因此如果阵列具有100个作为长度,它可以容纳2400字节的收集数据。我为这个初学者要求道歉

谢谢你

PM_Dialog
离线
最后看到:2天14小时前
职员
加入:2018-02-08 11:03
嗨HamzaAffes,

嗨HamzaAffes,

您可以使用用于存储自定义数据的副词或扫描响应数据。请结账使用GPIO中断和/或定时器更改广告参数BLE广告教程(HTML)

谢谢,PM_Dialog

哈扎阿夫斯
离线
最后看到:6个月2周前
加入:2020-10-03 13:11
嗨,对话框中,

嗨,对话框中,

我必须说我在你所说的和我的要求之间找不到任何共同之处。我需要存储2400字节,广告数据包无法持有此众多有效载荷。目标不是更新现有数据,而是在上一个注释中定义的结构之后存储新生成的数据。如果您可以恳请我如何实现它以及如何使用数据澄清我如何实现它app_easy_timer在没有建立连接时,然后当存在BLE连接时,我可以通过app_adcval1_timer_cb_handler特性弹出数据来监视整个缓冲区。

谢谢

PM_Dialog
离线
最后看到:2天14小时前
职员
加入:2018-02-08 11:03
嗨HamzaAffes,

嗨HamzaAffes,

>>如果您可以恳切地澄清我如何实现,则一个环形缓冲器可以解决这个问题。

这是你应该自己设计的。您可以查看实现循环缓冲区的DSP示例。

>>如何使用App_easy_Timer在没有建立连接时使用数据填充数据

如前所述的评论中所述,您应该是广告字符串,以便存储自定义数据。请查看SDK和ADV_DATA_UPDATE_TIMER_CB()函数的BLE_APP_PERITELAL示例

>>当存在BLE连接时,我可以通过app_adcval1_timer_cb_handler特性弹出数据来监视整个缓冲区。

SDK的BLE_APP_PHERIALAL示例演示了如何向对等设备发送通知

谢谢,PM_Dialog