修复ble协议 时间同步计算错误
* refs/changes/370/head: (1 commits squashed)
- 修复ble协议 时间同步计算错误
Signed-off-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
Reviewed-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
Merged-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/370
\r
\r
/***计算timezone*/\r
- struct tm *tmp = gmtime(×tamp);\r
- time_t timestamp2 = mktime(tmp);\r
- uint32_t timezone = (timestamp-timestamp2)/60/15; \r
+ struct tm tmp={0};\r
+ tmp.tm_year = year+2000 - 1900;\r
+ tmp.tm_mon = month -1;\r
+ tmp.tm_mday = day;\r
+ tmp.tm_hour = hour;\r
+ tmp.tm_min = minute;\r
+ tmp.tm_sec = second;\r
+ time_t timestamp2 = __tm_to_secs(&tmp);\r
+ uint32_t timezone = (timestamp2-timestamp)/60/15; \r
printf("timezone in quarters %d\n",timezone);\r
uapi_set_timezone(timezone); //要在uaip_sntp_set_time_utc 之前执行才有效\r
/********/\r
timeinfo.tm_hour,
timeinfo.tm_min,
timeinfo.tm_sec,zone_quarters,ret);
- printf("utc timestamp %d , local timestamp %d\n",get_current_timestamp(),get_local_timestamp());
+ printf("utc timestamp %d , local timestamp %d, timezone %ld\n",get_current_timestamp(),get_local_timestamp(),timezone);
return ERRCODE_SUCC;
}