专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
STM32
时间差計算
2019-12-12 18:21
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
STM32/STM8
8436
18
19
条件如下
//输入开始 年 月 日 时 分 秒,
//输入结束 年 月 日 时 分 秒
// 计算两个时间的时间差,结果转成秒数
用 C语言,方便提供例程吗
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
jxn98310
1楼-- · 2019-12-14 05:37
本帖最后由 jxn98310 于 2019-3-12 18:38 编辑
转成UTC时间后,做减法
/*
** ===================================================================
** Method : m2m_time_ToUtc (component ENV)
**
** Description :
** This method converts a time in m2mTime_t to UTC time.
** Parameters : const m2mTimePtr_t fptTime:
** Returns : UINT32: UTC time in seconds
** ===================================================================
*/
UINT32 m2m_time_ToUtc(const m2mTimePtr_t fptTime)
{
m2mTime_t tm;
(void)memcpy(&tm, fptTime, sizeof(m2mTime_t));
if (0 >= (INT16) (tm.Month -= 2)) /* 1..12 -> 11,12,1..10 */
{
tm.Month += 12; /* Puts Feb last since it has leap day */
tm.Year -= 1;
}
return (((
(UINT32) (tm.Year / 4 - tm.Year / 100U + tm.Year / 400 + 367 * tm.Month / 12 + tm.Day) +
(UINT32)tm.Year * 365 - 719499
) * 24 + tm.Hour /* now have hours */
) * 60 + tm.Minute /* now have minutes */
) * 60 + tm.Second - tm.TimeZone * 3600; /* finally seconds */
}
加载中...
go2deathward
2楼-- · 2019-12-14 08:58
精彩回答 2 元偷偷看……
加载中...
郭震2009
3楼-- · 2019-12-14 10:34
c 的标准库里都有, 不要重复造轮子啦。
mktime
加载中...
trave_yang
4楼-- · 2019-12-14 11:14
mktime转换成时间戳后在计算。
加载中...
jxchen
5楼-- · 2019-12-14 16:54
armok 发表于 2019-3-12 00:02
“时间差計算 ”不是合格标题,违反版规11。如不修正,将被封锁ID。
请教要更改什么样标题才可以
加载中...
jxchen
6楼-- · 2019-12-14 19:04
RTC模块取得时间是年月日、时-分-秒格式,我想转换成一个总的秒计数,请问怎么实现?
Example: 2019 0415 1443 00
用C 语言
加载中...
上一页
1
2
3
一周热门
更多
>
相关问题
STM32F4上I2C(在PROTEUS中模拟)调试不通的问题
6 个回答
芯片供应紧张,准备换个MCU,MM32L系列替换STM32L系列的怎么样?
7 个回答
STM32同时使用两个串口进行数据收发时数据丢包的问题
5 个回答
STM32F103串口通信死机问题
4 个回答
STM32WLE5CC连接SX1268在LoRa模式下能与 SX1278互通吗?
2 个回答
STM32开发板免费用活动
7 个回答
stm32 处理 DHT11占用太多时间,大家程序是怎么设计的
8 个回答
分享一个STM32单片机做的离线编程器代码
9 个回答
相关文章
ST公司第一款无线低功耗单片机模块有效提高物联网设计生产效率
0个评论
如何实现对单片机寄存器的访问
0个评论
通过USB用STM32片内自带Bootloader下载程序及注意事项
0个评论
欲练此功必先自宫之STM32汇编启动,放慢是为了更好的前行
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
STM32
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
转成UTC时间后,做减法
/*
** ===================================================================
** Method : m2m_time_ToUtc (component ENV)
**
** Description :
** This method converts a time in m2mTime_t to UTC time.
** Parameters : const m2mTimePtr_t fptTime:
** Returns : UINT32: UTC time in seconds
** ===================================================================
*/
UINT32 m2m_time_ToUtc(const m2mTimePtr_t fptTime)
{
m2mTime_t tm;
(void)memcpy(&tm, fptTime, sizeof(m2mTime_t));
if (0 >= (INT16) (tm.Month -= 2)) /* 1..12 -> 11,12,1..10 */
{
tm.Month += 12; /* Puts Feb last since it has leap day */
tm.Year -= 1;
}
return (((
(UINT32) (tm.Year / 4 - tm.Year / 100U + tm.Year / 400 + 367 * tm.Month / 12 + tm.Day) +
(UINT32)tm.Year * 365 - 719499
) * 24 + tm.Hour /* now have hours */
) * 60 + tm.Minute /* now have minutes */
) * 60 + tm.Second - tm.TimeZone * 3600; /* finally seconds */
}
mktime
请教要更改什么样标题才可以
RTC模块取得时间是年月日、时-分-秒格式,我想转换成一个总的秒计数,请问怎么实现?
Example: 2019 0415 1443 00
用C 语言
一周热门 更多>