This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RTOS/LAUNCHXL-CC2650:Heart Rate project - How to change the data to be transmitted?(RTOS/LAUNCHXL-CC2650:Heart Rate 项目-如何更改要传输的数据?)

Guru**** 2578945 points
Other Parts Discussed in Thread: CC2650

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/592138/rtos-launchxl-cc2650-heart_rate-project---how-to-change-the-data-to-be-transmitted

器件型号:LAUNCHXL-CC2650
Thread 中讨论的其他器件:CC2650

工具/软件:TI-RTOS

大家好、

我已经在 cc2650 launchpad 中下载了耳戴式示例、并能够在我的 Android 应用程序中获取仿真值。

我将按照如下方式修改项目:我已将一些数字存储在数组中、我希望这些数字  以20字节数据包的形式从 cc2650 launchpad 传输到 Constant default_heartate_period 中定义的每1秒应用程序。

我必须知道在心率项目代码中、该值是从心率 bpm 变量传输的。 如何更改它、以便它可以发送20字节的数据包? 我的代码是:

static void HeartRate_measNotify (void)
{
shuffleArray ();
cartRateBpm = parray;

attHandleValueNoti_t c心arateMeas;

c心arateMeas .pValue = GATT_BM_alloc (gapConnHandle、ATT_Handle_Value_Noti、
HEARTATE_MEAS_LEN、NULL);
if (heartateMeas .pValue!= NULL)
{
uint8_t *p = c心arateMeas .pValue;
uint8_t flags =心跳标志[flagsIdx];

//根据模拟值建立心率测量结构。
*p++=标志;
*p++=心跳速率;
//*p++=(uint8_t) parray[计数器];

IF (flags & heartate_flags_format_UINT16)
{
// 16位格式的附加字节。
*P++= 0;
}

IF (flags & heartate_flags_energy_EXP)
{
*p++= LO_UINT16 (c心跳 EnergyLevel);
*p++= HI_UINT16 (c心跳 EnergyLevel);
}

IF (flags & heartate_flags_rr)
{
*p++= LO_UINT16 (c心跳 速率间隔);
*p++= HI_UINT16 (c心跳 速率间隔);
*p++= LO_UINT16 (c心跳 速率范围2);
*p++= HI_UINT16 (c心碎 RateRrInterval2);
}

bedRateMeas.len =(uint8)(p - bedRateMeas.pValue);

//发送通知。
if (HeartRate_MeasNotify (gapConnHandle、&centerRateMeas)!=成功)
{
GATT_BM_FREE (((gattMsg_t *)&心跳 速率测量、ATT_Handle_value_Noti);
}

心跳频率间隔=心跳频率间隔2 =心率 BPM2RR (心跳频率 BPM);
}

但我注意到、c心arateBpm 是 uint8_t、因此它仅将数组中的第一个数字发送到我的应用程序。 如何将其更改为发送20字节的数据包?

谢谢你
Henry

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Huy、

    您可以通过 SimpleLink Academy 查看相关示例。 Project Zero 应用程序数据服务中的第一个特征是一个40字节的数组。

    对于 CC2650、可在以下位置找到 SimpleLink Academy: http://software-dl.ti.com/lprf/simplelink_academy/overview.html

    对于 CC2640R2、可在 Resource Explorer中找到 SimpleLink Academy。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rachel、

    感谢你的答复。 哇、这是我所期望的信息太多了。 您是否想为我指出指定通过 BLE 发送的数据及其大小的正确函数(在 Heart Rate 或 project_zero 中)?

    Henry
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Huy、

    我认为、您提出的是 Project Zero 文件夹"配置文件"的"data_service.c"和"data_service.h"文件以及相应函数 DataService_GetParameter()和 DataService_SetParameter()。

    此致、
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    问题迎刃而解! 供参考:您需要首先在 Attribute 表(Characteristic Value)中修改该值、然后使用 GATT_Notification 调用或在您的心跳 RateMeasNotify 调用中传递特征值和大小。