#include "vibrator_service.h"
#include <mutex>
#include <memory>
+#include "bleEvent.h"
#define TIMER 1
#define BLETEST 0
TraingModel ::TraingModel()
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::TraingModel()");
+ freq = ConfigModel::GetInstance()->get_configData_int(ConfigModel::CONFIGMODEL_ITEM_TRANING_FREQ);
// sportdata->Initialize(); // 初始化结构体
}
TraingModel ::~TraingModel()
// PRINT("end_time [%s]\r\n", end_time);
sportdata->end_time = std::string(end_time);
Openstate = false; // 关闭运动标志位
-
- free(end_time); // 释放内存
+
+ free(end_time); // 释放内存
PRINT("sportdata->end_time [%s]\r\n", (sportdata->end_time).c_str());
/*存储正常数据[运动量达标]*/
data.src = Openingway;
data.bt = static_cast<uint32_t>(sportdata->sportType);
data.ty = static_cast<uint32_t>(sportdata->sportId);
- data.st = static_cast<uint32_t>((sportdata->starttime) * 1000);
- data.sp = static_cast<uint32_t>((sportdata->endtime) * 1000);
+ data.st = static_cast<uint32_t>((sportdata->starttime) / 1000);
+ data.sp = static_cast<uint32_t>((sportdata->endtime) / 1000);
data.tgt = static_cast<uint32_t>(sportdata->sportTagType);
data.tg = static_cast<uint32_t>(sportdata->tag);
data.pg = static_cast<uint32_t>(sportdata->goaldegree);
- data.du = static_cast<uint32_t>((sportdata->duration) * 60);
+ data.du = static_cast<uint32_t>((sportdata->duration) / 60);
data.ca = static_cast<uint32_t>(sportdata->calories);
data.di = static_cast<uint32_t>(sportdata->distance);
data.hr = static_cast<uint32_t>(sportdata->avgheart);
}
return MomentumFlag;
}
+ /*发送实时数据*/
+ void TraingModel::SendLiveData()
+ {
+ msg_get_train_data_info_t data;
+ data.st = sportdata->starttime / 1000;
+ data.hr = sportdata->heart;
+ data.ca = sportdata->calories;
+ data.stp = sportdata->steps;
+ data.ti = sportdata->intensity;
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SendLiveData Begin!");
+ sendtraningdata(&data); // 发送数据函数
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SendLiveData Stop!");
+ }
/* -------------------------------------------------------------------------- */
#if TIMER
/* 时间显示 */
if (g_motionTimes != 0)
{
sportdata->duration = g_motionTimes; // 训练时长
+ if (sportdata->duration % freq == 0)
+ {
+ SendLiveData(); // 发送实时数据
+ }
PRINT("duration:[%d] g_motionTimes[%d]\r\n", sportdata->duration, g_motionTimes);
}