• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

C语言定时器如何算时间

尧与你随缘 2021-06-04 浏览量:457
C语言定时器如何算时间,比如我要定时一个定时要怎么写,请大神指导一下。
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 要看你要怎么实现,比如直接死循环不停查询执行,这样肯定可以,但CPU使用效率低,它的查询过程是阻塞的,CPU不能完全其它工作。

    这种大致的伪码是:

    time_t seconds;
    time_t ctimer=1622767396;
     while(1){
            seconds=time(NULL);
            if((ctimer-seconds)<=0){
                printf("时间到\n");
                exit(0);
            }  
        }   

    此外就是采用定时器中断查询计数之类的方式,这样CPU使用效率高。这种方式其实基本原理和 直接死循环差不多,只是触发条件变成了中断处理,这样不中断时的CPU处理可以不被阻塞去完成一些工作。

    • 发布于 2021-06-04
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:4
  • 这个事和硬件相关的,有两种方法,一是使用时钟中断,二是用循环延时。
    • 发布于2021-06-04
    • 举报
    • 评论 0
    • 0
    • 0

  • 晶振的频率决定了频率的基数,这个可以百度一下,然后再说延时程序的循环数,每个循环数耗时多少,用多少个循环计算出延时时间
    • 发布于2021-06-04
    • 举报
    • 评论 0
    • 0
    • 0

  • 平台,平台,平台,是单片机,是电脑,是不一样的,但都是要看主频的
    • 发布于2021-06-09
    • 举报
    • 评论 0
    • 0
    • 0

  • 单片机上用定时器,反转IO,再示波器测

    电脑,直接用输出时间的函数

    • 发布于2021-06-11
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

C语言定时器如何算时间