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

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

3天内不再提示

建立系统滴答率所涉及的基本权衡

星星科技指导员 来源:嵌入式计算设计 作者:Matt Gordon 2022-06-29 09:15 次阅读

许多 RTOS 内核在设置内核的周期性滴答中断方面为开发人员提供了很大的灵活性。不幸的是,这种灵活性有时会导致混乱。似乎是许多问题根源的刻度的一个可配置方面是频率。我将尝试消除与频率有关的常见神话,并尝试解释建立系统滴答率所涉及的基本权衡。

也许由于其他内核或特定硬件平台中存在的限制,似乎有一个广泛的共识,即 µC/OS-II 和 µC/OS-III 限制了应用程序代码可用的滴答频率范围。然而,内核本身应该能够支持在给定 MCU 上可行的任何滴答频率。我已经看到应用程序以远低于 100 Hz 的滴答率运行,而在频谱的另一端,则远远超过 1 kHz。

如果内核对系统的滴答频率没有任何特殊影响,那么在设置此参数时应该考虑哪些因素?除了会产生滴答声的外围设备施加的限制之外,您的主要关注点应该是开销和分辨率。使用相对较高的频率,您将能够以比其他方式更小的增量建立延迟,但是您将为此能力付出代价,增加的开销是以处理滴答的 CPU 时间的形式。较低的频率会减少滴答处理时间,但当然也会限制系统延迟的分辨率。例如,在每 10 毫秒发生一次滴答的系统中,内核将无法提供低至 1 毫秒的延迟。

为了在开销和分辨率之间取得适当的平衡,您需要考虑硬件平台的功能和应用程序的时序需求。以 µC/OS-II 或 µC/OS-III 为例,在以 300 MHz 运行的 32 位处理器上,任一内核每秒处理 1,000 个滴答所需的开销可能不会超过 CPU 周期的 1%。但是,具有 24 MHz 时钟的 16 位 MCU 可能是另一回事。同样,仅使用时间延迟来轮询按钮按下的应用程序在 50 毫秒的滴答分辨率下可能不会遇到任何问题,但对于截止日期较紧的任务来说,这样的设置可能是不可接受的。

关于最后一点,重要的是要注意,滴答声可能不是解决系统中所有延迟的最佳解决方案。例如,如果您想每 500 µs 从 A/D 转换器读取数据,那么最好的方法可能是让您的转换器由中断驱动并使用定时器触发转换(与滴答中断无关的定时器) 。 换句话说,基于滴答的函数旨在用于严重延迟——例如,负责大约每 10 毫秒输出一条消息的状态任务可能需要这样——并且你应该转向专用的硬件定时器,当需要更准确的延迟。我将在第 3 部分中提供与此主题相关的更多详细信息,其中我解释了内核节拍的另一个有时令人困惑的方面:优先级。

审核编辑:郭婷

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

    关注

    68

    文章

    18604

    浏览量

    224480
  • 定时器
    +关注

    关注

    23

    文章

    3178

    浏览量

    112684
  • RTOS
    +关注

    关注

    20

    文章

    782

    浏览量

    118920
收藏 人收藏

    评论

    相关推荐

    使用系统滴答定时中断,基于按键的状态机怎么只能1个1个+,不能连+?

    使用系统滴答定时中断,基于按键的状态机怎么只能1个1个+,不能连+ #define KEY1_USERGPIO_ReadInputDataBit(GPIOC,GPIO_Pin_13
    发表于 05-16 06:27

    STM8S103F系列支持滴答时钟吗?

    STM8S103F系列支持滴答时钟吗?
    发表于 05-10 07:13

    操作FreeRTOS时,执行__WFI()导致系统滴答中断无法唤醒设备怎么解决?

    1、在操作FreeRTOS时,本想着是在空闲钩子中执行__WFI()以降低设备功耗,等系统滴答中断自动唤醒设备继续执行,运行中发现执行__WFI()之后设备无法唤醒,分析应该是__WFI()将CPU
    发表于 04-24 08:29

    如何权衡阻抗控制性能与稳定性的关系

    阻抗控制性能提升后对稳定性有怎样的影响?如何权衡阻抗控制性能与稳定性的关系? 当阻抗控制性能提升时,往往需要更高的控制增益来实现更快的响应和更小的跟踪误差。 这会导致控制系统的稳定性受到挑战,因为
    的头像 发表于 11-14 15:26 482次阅读
    如何<b class='flag-5'>权衡</b>阻抗控制性能与稳定性的关系

    滴答定时器在单片机中的作用?

    使用lpc54110的时候,将滴答定时器中断注释掉之后单片机就直接不工作了(就是这个函数SysTick_Handler)
    发表于 11-09 08:30

    实时操作系统滴答Tick设置多少才合适?

    实时操作系统滴答Tick设置多少才合适? 介绍实时操作系统中Tick的设置。 在实时操作系统中,Tick是指操作系统的时间基准,它是操作
    的头像 发表于 10-29 16:33 599次阅读

    基于网络远程监控系统设计中所涉及的关键技术

    电子发烧友网站提供《基于网络远程监控系统设计中所涉及的关键技术.pdf》资料免费下载
    发表于 10-23 10:42 0次下载
    基于网络远程监控<b class='flag-5'>系统</b>设计中<b class='flag-5'>所涉及</b>的关键技术

    清华大学设计一种新型可偏转的离心微流控系统

    微流控(Microfluidics)指的是使用微管道(尺寸为数十到数百微米)处理或操纵微小流体(体积为纳升到阿升)的系统所涉及的科学和技术
    的头像 发表于 10-09 17:08 661次阅读
    清华大学设计一种新型可偏转的离心微流控<b class='flag-5'>系统</b>

    STC12的内部有滴答定时器的外设吗?

    STC12的内部有滴答定时器的外设吗
    发表于 10-09 07:31

    8051计时器滴答声中断

    经常需要在程序中使用计时器来为事件计时,或者仅仅作为一个简单的圈速计时器。 使用C51,很容易将强大的、中断驱动的计时器滴答支持添加到您的应用程序中,只需很少的工作。 本应用笔记提供了一个定时器滴答
    发表于 09-04 06:24

    电机标定通常涉及哪些参数呢

    标定电机所涉及的参数因具体的电机类型、车辆系统和制造商而异。不过,标定常见参数包括: 扭矩控制(Torque Control):调整电机的扭矩输出,确保其符合预期的性能和效率要求。 电流和电压
    发表于 09-01 15:20 2070次阅读
    电机标定通常<b class='flag-5'>涉及</b>哪些参数呢

    在HMI设备上进行初始值采集和条件分析所涉及的工作原理是什么?

    按照定义的顺序执行 PLC 代码视图中的条件分析评估。本示例介绍了在 HMI 设备上进行初始值采集和条件分析所涉及的工作原理。
    的头像 发表于 08-21 09:47 573次阅读
    在HMI设备上进行初始值采集和条件分析<b class='flag-5'>所涉及</b>的工作原理是什么?

    GD32VF103有系统滴答定时器吗?

    GD32VF103有系统(SysTick)滴答定时器吗???有它的定时器中断吗????我没找到,希望有大神帮忙一下,万分感谢!
    发表于 08-15 06:00

    低功耗系统在降低功耗的同时保持精度所涉及的时序因素和解决方案

    本文将介绍低功耗系统在降低功耗的同时保持精度所涉及的时序因素和解决方案,以满足测量和监控应用的要求。
    的头像 发表于 07-11 16:16 466次阅读
    低功耗<b class='flag-5'>系统</b>在降低功耗的同时保持精度<b class='flag-5'>所涉及</b>的时序因素和解决方案

    STM32F407 滴答定时器

    介绍STM32F407滴答定时器配置方法、使用方式,封装延时函数得到精确的时间。
    的头像 发表于 07-06 14:32 1493次阅读
    STM32F407 <b class='flag-5'>滴答</b>定时器