0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

定时器会阻塞线程吗 定时器指令有哪几种

工程师邓生 来源:未知 作者:刘芹 2023-12-19 14:03 次阅读

定时器会阻塞线程吗 定时器指令有哪几种

定时器一般不会阻塞线程,但具体是否会阻塞取决于所使用的定时器实现方式和使用方式。

定时器指令可以分为硬件定时器指令和软件定时器指令。下面将详细介绍各种定时器指令:

一、硬件定时器指令:

1. 初始化定时器:用于配置和初始化定时器的各个参数寄存器。可以设置定时器的时钟源、时钟分频比、计数模式等。

2. 设置计数值:用于设置定时器的计数值。当定时器开始计数时,当计数值达到设定值时,定时器会触发中断或产生其他指定的动作。

3. 启动定时器:用于启动定时器的计数。一旦启动,定时器会根据设定的参数开始计时。

4. 停止定时器:用于停止定时器的计数。一旦停止,定时器将会停止计时,不再触发中断或产生其他指定的动作。

5. 读取计数值:用于读取当前定时器的计数值。可以通过读取计数值来获取定时器的剩余时间。

二、软件定时器指令:

1. 创建定时器:用于创建一个软件定时器对象。在创建定时器时,需要指定定时器的回调函数和定时器的超时时间。

2. 启动定时器:用于启动软件定时器的计时。一旦启动,软件定时器会开始倒计时,当超过设定的超时时间时,会触发定时器的回调函数。

3. 暂停定时器:用于暂停软件定时器的计时。一旦暂停,定时器的倒计时会停止,不再触发回调函数。

4. 重置定时器:用于重置软件定时器的计时。重置定时器会将定时器的倒计时时间重新设置为初始设定的超时时间。

5. 删除定时器:用于删除已创建的软件定时器。删除定时器后,定时器的回调函数不会再触发。

定时器的应用场景非常广泛。例如,可以用来实现定时任务调度、定时数据采集、定时操作等。

虽然定时器一般不会阻塞线程,但在某些特殊情况下,使用不当可能会导致线程阻塞或处理的延时。因此,在使用定时器时,应该合理设置定时器的参数和超时时间,以避免对线程或系统的影响。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 定时器
    +关注

    关注

    23

    文章

    3147

    浏览量

    112037
  • 回调函数
    +关注

    关注

    0

    文章

    87

    浏览量

    11455
  • 触发中断
    +关注

    关注

    0

    文章

    10

    浏览量

    6531
收藏 人收藏

    评论

    相关推荐

    断电延时定时器指令TOF

    TOF指令用于允许输入端断开后的单一间隔定时。当定时器的输入端IN为ON时,TOF的状态位为ON,其常开触点闭合,常闭触点断开,但是定时器的当前值仍为0。
    的头像 发表于 04-01 11:40 408次阅读
    断电延时<b class='flag-5'>定时器</b><b class='flag-5'>指令</b>TOF

    ​PLC保持型通电延时定时器TONR

    TONR指令用于积累许多时间间隔。当定时器的输入端IN为ON时,定时器开始计时,当定时器的当前值大于等于设定值时,定时器被置位,其常开触点闭
    发表于 03-31 09:13 150次阅读
    ​PLC保持型通电延时<b class='flag-5'>定时器</b>TONR

    使用555定时器的可调双定时器电路

    定时器 IC 555 是最通用和最常用的 IC 之一,因为它的应用范围更广,如 PWM放大器、延迟定时器、开关电路、占空比选择器、时钟脉冲发生器等。这也可用于各种应用,如精确定时、顺序定时
    的头像 发表于 02-25 15:16 342次阅读
    使用555<b class='flag-5'>定时器</b>的可调双<b class='flag-5'>定时器</b>电路

    间歇定时器怎么使用?定时器时间间隔程序浅析

    间歇定时器的作用是重复执行一个函数,且不会阻塞线程。这种类型的定时器常用于间隔性地自动执行代码,例如网页中的倒计时。
    的头像 发表于 12-14 15:16 609次阅读

    定时器设计实现

    由于目前C++标准中没有现成的定时器,本设计使用C++11相关语法并进行封装。 本定时器包含一个TimerManager类用于创建定时器和进行定时任务管理,TimerManager会创
    的头像 发表于 11-08 16:50 278次阅读

    定时器定时启动信号特点

    定时器定时启动信号特点  定时器是一种常用的计时器,可以在指定的时间后发出信号。它们在各种电器、仪器和控制系统中被广泛应用。 定时器定时
    的头像 发表于 10-24 11:49 391次阅读

    关于软件定时器的一些讨论

    这就是简单的软件定时器,是的,这就是特别简洁版本的软件定时器。当然它是有缺点的,比如systick_ms每1ms加1,所以软件定时器的精度是ms为单位的,并且如果while(1)中有其他代码
    的头像 发表于 10-13 16:14 284次阅读
    关于软件<b class='flag-5'>定时器</b>的一些讨论

    定时器中断程序怎么写

    定时器中断程序怎么写  在嵌入式系统中,定时器被广泛应用于各种任务。它们在实时系统中可用于轮询,计时等任务。定时器可以被配置为周期性定时器,非周期性
    的头像 发表于 09-01 10:17 1165次阅读

    STM32有哪几种定时器 STM32高级定时器有哪些功能

    SysTick定时器的功能比较单一,主要是供给系统使用的,系统默认设置为1ms触发一次中断。而用户想要使用自己的定时器,STM32提供的用户定时器不但数量多且功能更加强大。
    的头像 发表于 07-27 16:25 3853次阅读
    STM32有<b class='flag-5'>哪几种</b><b class='flag-5'>定时器</b> STM32高级<b class='flag-5'>定时器</b>有哪些功能

    定时器中断是什么意思,定时器中断的工作原理

    定时器中断是由单片机中的定时器溢出而申请的中断。51单片机中有两个定时器T0和T1。STM32中共有11个定时器
    的头像 发表于 07-23 09:45 3697次阅读

    STM32 TIM—基本定时器

    STM32F4xx系列控制器有共有14个TIM定时器。其中2个高级控制定时器TIM1和TIM8、10 个通用定时器TIM2TIM5和TIM9TIM14、 2个基本定时器TIM6和TIM
    的头像 发表于 07-22 17:05 3334次阅读
    STM32 TIM—基本<b class='flag-5'>定时器</b>

    STM32定时器(二)定时器中断

    常规定时器:基本定时器TIM6&TIM7)、通用定时器(TIM2~TIM5,TIM9~TIM14)、高级定时器(TIM1&TIM8)
    的头像 发表于 07-21 14:54 1857次阅读
    STM32<b class='flag-5'>定时器</b>(二)<b class='flag-5'>定时器</b>中断

    基于STM32的软件定时器设计

    软件定时器是用程序模拟出来的定时器,可以由一个硬件定时器模拟出成千上万个软件定时器,这样程序在需要使用较多定时器的时候就不会受限于硬件资源的
    发表于 07-03 17:06 641次阅读
    基于STM32的软件<b class='flag-5'>定时器</b>设计

    什么是软件定时器?软件定时器的实现原理

    软件定时器是用程序模拟出来的定时器,可以由一个硬件定时器模拟出成千上万个软件定时器,这样程序在需要使用较多定时器的时候就不会受限于硬件资源的
    的头像 发表于 05-23 17:05 1848次阅读

    倍福PLC中定时器的使用

    定时器指令存放在函数库:Tc2_Standard,在新项目创建时会自动加载。我在之前的文章中多次介绍过IEC定时器,比如【西门子SCL编程入门教程连载(7)-定时器
    的头像 发表于 05-04 16:00 2088次阅读
    倍福PLC中<b class='flag-5'>定时器</b>的使用