Dear Dialog ,
因此,我开始使用DA14585和SDK 6.0.14建立一个小型而简单的项目。我宁愿说的一个小模拟。我想创建一个队列,该队列保存由用户定义的结构数据类型,并且exemple为exemple达到了30秒的每个间隔,直到它达到其最大大小。当建立连接并通过引用BLE外围设备时,当我询问时,当系统未连接时,我询问时,我会如何实现这一点,我设法在建立并获取数据时队列自动填充,然后建立连接一旦建立连接,我会在队列中获取数据计数并开始通过我侧面侧面的特征发送数据本身。即使BLE未激活,也可以使用app_easy_timer函数执行此操作以填充队列?如果是这样,因为它是一个拍摄计时器,有没有办法定期调用eNqueuing函数,直到BLE处于活动状态之前?
谢谢
设备:
Hi HamzaAffes,
Thanks for your question online. You could store the data in advertising string and use the app_easy_timer to apdate them. Please take a look at the ble_app_peripheral example of the SDK and adv_data_update_timer_cb() function. This callback updates the manufacturer specific data after APP_ADV_DATA_UPDATE_TO seconds.
Thanks, PM_Dialog
Hi dialog,
Could you please further explain how to implement my request above using the functions in user_peripheral.c file? for what im trying to accomplish is, fill a queue with random numbers periodically by using the app_easy_timer and then once a connection is established i stop enqueueing and i send the data through a characteristic similar to app_adcval1_timer_cb_handler .
谢谢你
Hi HamzaAffes,
首先,您应该在广告字符串中定义制造商特定数据并使用app_easy_timer更新。请检查更新制造商特定数据的Adv_data_update_timer_cb()。
What is the amount of data that should be placed in the advertising string?
Please also check the following tutorial :
http://lpccs-docs.dialog-semiconductor.com/DA145xx_Advertising_Tutorial/changing_advertising_parameters.html#changing-the-advertising-data
连接设备后,应停止计时器,复制数据并通过通知发送它们。
关于BLE通知,请检查app_adcval1_timer_cb_handler()函数。
Thanks, PM_Dialog
嗨对话,谢谢你的回复
sensor1 12的值都是随机通用电气nerated (dummy values) and then stored in the SensorDataBuffer every 30 sec and once i connect i send the stored values one by one in a certain order through app_adcval1_timer_cb_handler so a single element would be sizeof(sensorData_t) which is 24 bytes
Hi HamzaAffes,
只是为了澄清:在通过BLE通知发送之前,您的要求是什么?您是否需要将24bytes放入广告字符串并更新它?
Thanks, PM_Dialog
hi dialog,
正如我在Sensordatabuffer之前填充Sensoldata_T变量,所以每隔30秒就像通过堆栈一样推动数据,然后电路板连接到LightBlue应用程序,我可以逐个将所有数据从堆栈中弹出。sensordatabuffer是一个数组,用于存储用于测试目的的随机生成的数据,因此如果阵列具有100个作为长度,它可以容纳2400字节的收集数据。我为这个初学者要求道歉
谢谢你
Hi HamzaAffes,
您可以使用用于存储自定义数据的副词或扫描响应数据。请结账使用GPIO中断和/或定时器更改广告参数andBLE Advertising Tutorial (HTML)。
Thanks, PM_Dialog
Hi dialog,
我必须说我在你所说的和我的要求之间找不到任何共同之处。我需要存储2400字节,广告数据包无法持有此众多有效载荷。目标不是更新现有数据,而是在上一个注释中定义的结构之后存储新生成的数据。如果您可以恳请我如何实现它以及如何使用数据澄清我如何实现它app_easy_timer在没有建立连接时,然后当存在BLE连接时,我可以通过app_adcval1_timer_cb_handler特性弹出数据来监视整个缓冲区。
谢谢
Hi HamzaAffes,
>>如果您可以恳切地澄清我如何实现,则一个环形缓冲器可以解决这个问题。
这是你应该自己设计的。您可以查看实现循环缓冲区的DSP示例。
>>如何使用App_easy_Timer在没有建立连接时使用数据填充数据
如前所述的评论中所述,您应该是广告字符串,以便存储自定义数据。请查看SDK和ADV_DATA_UPDATE_TIMER_CB()函数的BLE_APP_PERITELAL示例
>>当存在BLE连接时,我可以通过app_adcval1_timer_cb_handler特性弹出数据来监视整个缓冲区。
SDK的BLE_APP_PHERIALAL示例演示了如何向对等设备发送通知
Thanks, PM_Dialog