嵌入式学习笔记_Linux(二)——Linux时间编程

Linux时间编程

获取日历时间:

#include <time.h>
time_t time(time_t *tloc);

功能:获取当前系统时间,即从1970年1月1日0点到现在所经历的秒数

时间转换:

struct tm *gmtime(const time_t *timep)

功能:将日历时间转化为格林威治标准时间,并保存至TM结构

struct tm *localtime(const time_t *timep)

功能:将日历时间转化为本地时间,并保存至TM结构

TM结构体:

struct tm{
int tm_sec;//秒值
int tm_min;//分钟值
int tm_hour;//小时值
int tm_mday;//本月第几日
int tm_mon;//本年第几月
int tm_year;//tm_year+1900=哪一年
int tm_wday;//本周第几日
int tm_yday//本年第几日
int tm_isdst;//日光节约时间
}


time_gettim

#include <stdio.h>
#include <time.h>

int main(void){

    struct tm *local;
    time_t t;

    //获得时间秒数
    t=time(NULL);

    //得到本地时间
    local=localtime(&t);
    printf("Local hour is: %d\n",local->tm_hour);

    //得到格林威治时间
    local=gmtime(&t);
    printf("UTC hour is: %d\n",local->tm_hour);

    return 0;
}

运行结果:
这里写图片描述



时间显示:

char *asctime(const time_t *timep)

功能:将tm格式的时间转化为字符串

char *ctime(const time_t *timep)

功能:将日历时间转化为本地时间的字符串形式

获取时间:
//从凌晨到现在的时间

int gettimeofday(struct timeval *tv,struct timezobne *tz)
struct timeval
{
int tv_sec;//秒数
int tv_usec;//微秒数
}


time_dis

#include <stdio.h>
#include <time.h>

int main(void){

    struct tm *ptr;
    time_t t;

    //获得时间秒数
    t=time(NULL);

    //得到格林威治时间
    ptr=gmtime(&t);

    printf(asctime(ptr));
    printf(ctime(&t));

    return 0;
}

运行结果:

*这里写图片描述*


函数睡眠:

unsigned int sleep(unsigned int seconds)

功能:使程序睡眠seconds秒

void usleep(unsigned long usec)

功能:使程序睡眠usec微秒

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很高兴回答你关于野火嵌入式Linux学习的问题!以下是一些学习笔记的建议: 1. 了解嵌入式系统:首先,你需要了解嵌入式系统是什么以及它们与桌面操作系统的区别。嵌入式系统通常用于特定的应用领域,例如智能家居、汽车电子和工业控制等。 2. 学习Linux基础知识:野火嵌入式Linux是基于Linux内核的操作系统,所以你需要掌握Linux的基础知识,包括文件系统、进程管理、设备驱动程序等。 3. 硬件平台了解:野火嵌入式Linux有不同的硬件平台,例如野火开发板。你需要学习如何操作和配置这些硬件平台,并了解它们的特性和限制。 4. 交叉编译环境设置:为了在PC上开发嵌入式系统,你需要设置一个交叉编译环境,以便能够编译和调试嵌入式应用程序。这涉及到安装和配置交叉编译工具链。 5. 内核定制和驱动程序开发:学习如何定制Linux内核以满足特定需求,并开发设备驱动程序以支持外部硬件。 6. 应用程序开发:掌握嵌入式应用程序的开发技术,包括使用C/C++语言、Makefile和调试工具。 7. 调试和故障排除:学会使用调试工具和技术来定位和解决嵌入式系统中的问题。 8. 实际项目经验:通过参与实际的嵌入式项目或完成一些小型项目来应用你的知识和技能。 这些只是一些学习笔记的建议,野火嵌入式Linux学习需要不断的实践和探索。希望这些对你有帮助!如果你有任何进一步的问题,欢迎继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值