你好,
请参阅先前的连结(https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl..。)我已经评论过了。我不知道怎么让这东西运转起来。我已经在SDK 5的自定义配置文件中尝试了这个功能,我能够从心率模块获得adc数据。所以现在我想在SDK 3中实现心率配置文件的这个函数,但似乎我不知道在哪里放置这个函数以便使它工作。我已经包含了adc头文件。(附件7)。我希望在配置文件中以bpm单位通知心率值。谢谢。
设备:
请查看更新后的附件。谢谢
嗨herochua617,
你说的是哪个功能?我不看到任何函数名的附件上传,正如我已经提到了以前的文章请看看RW BLE心率概要(合)接口规范为了检查的消息,您需要交换配置文件以交流与合概要文件模块。
由于MT_dialog
你好,
我搜索了RW-BLE-HRP-IS文件但看起来很肤浅。它没有显示我需要把我的adc编码,以便我获得数据。
unit 8_t heart_rate, sample, sample2;
adc_init (GP_ADC_SE, 0, GP_ADC_ATTN3X);
adc_enable_channel (ADC_CHANNEL_P01);
样本= adc_get_sample ();
GP_ADC_SE, GP_ADC_SIGN, GP_ADC_ATTN3X);
adc_enable_channel (ADC_CHANNEL_P01);
Sample2 = adc_get_sample ();
Heart_rate = (sample + sample2);
heart_rate = heart_rate / 2;
app_heart_rate_set_value (heart_rate)
这是我一直在讨论的adc函数,我将adc的输出输出给app_heart_set_value,这是app_hrps.c中的一个函数。见附件8。谢谢
嗨herochua617,
该文档解释了概要文件公开的消息,以便您使用它,您将在哪里从传感器执行测量,这取决于您的应用程序。因此文档提到了一个名为HRPS_MEAS_SEND_REQ的消息,为了将通知发送到中央的另一端,应该调用这个消息(只要您从中央启用了通知,通知就会到达另一端)。因此,您可以通过计时器触发该消息,并在消息被发送后立即执行adc测量,从adc获取值,将值打包到消息中,并将消息发送到配置文件。你已经做过了。如何触发功能,正如我提到取决于您的应用程序,它可以在连接,或者当中央写到指定的CCC心率概要文件来启用通知,您可以捕获该事件gattc_write_cmd_ind_handler hrps_task.c文件中的()。
由于MT_dialog
你好,
我已经调用了gattc_write_cmd_ind_handler中的函数。但是这些值并没有更新。我需要关闭和打开通知来获得值。顺便说一下,这个值不应该这么高因为我没有把电极贴在我身上。请参考附件9。非常感谢!
嗨herochua617,
你将不得不打开通知为了触发gattc_write_cmd_ind_handler()和为了计时器触发,也有把函数只要gattc_write_cmd_ind_handler()不管它的特点是富于计时器将被激活,重点是有计时器计数,只要你写的CCC特征,请试着阅读和理解代码。关于你得到的值,我不能假设为什么它们是高的(这是你必须通过调试发现的东西),我建议发送虚拟数据,直到你可以验证你可以正确发送数据。
由于MT_dialog
你好,
我想问,app_timer_set不同于app_easy_timer。我可以使用app_timer_set回调函数就像app_easy_timer?
你好,
我一直试图理解编码,并试图改变定时器函数的位置。我想有一个实时数据在我的智能手机,这意味着一旦通知心率值描述的配置文件将显示实时变化,直到我关闭通知但似乎无论我把定时器,结果似乎没有实时数据但准实时数据。非实时数据指的是当我触发通知按钮时显示在心率配置文件中的数据。一旦触发,显示的值将不会随着时间而改变。
你好,
通过本课题,我已经解决了循环问题https://support.dialog-semiconductor.com/timer-problem-again.谢谢
你好,
我发现@app_hrps.c。这要求——> meas_val。rr_intervals [0]
空白app_heart_rate_set_value (uint16_t heart_rate_val)
{
//分配消息
struct hrps_meas_send_req * req = KE_MSG_ALLOC(hrps_meas_send_req, TASK_HRPS, TASK_APP,
hrps_meas_send_req);
//填充参数结构
申请- > conhdl = app_env.conhdl;
/ /结构体hrs_hr_meas meas_val;
/ / /国旗
申请- > meas_val。旗帜= HRS_FLAG_HR_8BITS_VALUE;
/// RR-Interval numbers (max 4)
申请- > meas_val。nb_rr_interval = 4;
/ / / RR-Intervals
/ /请求- > meas_val。rr_intervals [0] = heart_rate_val;
///心率测量值
申请- > meas_val。heart_rate = heart_rate_val - 104;
/ / /能源消耗
申请- > meas_val。energy_expended = HRS_HR_CNTL_POINT_CODE;}
对心率值没有影响。无论我改变rr_interval[0]的值,从心率剖面得到的值都是相同的。这真的没有效果吗?谢谢
你好,
我能测量一下心率曲线上的rr_interval吗?我刚发现我的价值是心电图的,换句话说就是随着时间推移的电信号。从剖面图中产生的数据目前并不代表心率(bpm),而是随着时间推移的电信号值。有什么方法可以让我得到心率值吗?谢谢。
你好,
谢谢。我发现了。你已经在这个链接中回答了这个问题https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl..。.