1814_ChibiOS中的时间以及时间间隔处理

全部学习汇总: ++GreyZhang/g_ChibiOS: I found a new RTOS called ChibiOS and it seems interesting! (github.com)++

  1. 时间的相关配置,有tick的计数精度、时钟频率、间隔时间精度、时间类型大小等不同的配置。这些参数,涉及到系统的时间计数器位宽、系统的速度以及各种单位的表达能力范围等。

  2. 时间转换单位是一个扩展了精度的时间类型,主要目的是为了保证时间转换的安全性。

  1. 系统时间的单位是tick。

  2. 时间间隔的单位不一定是tick,不能够与上面的时间混用。

  3. 时间阶段,结合了一对儿时间参数,分别用来记录时间的起始。

  4. 系统时间的技术的实现有两种实现方式,一种是利用周期性中断时间的经典的模式;另一种是借助于一个硬件计数器来实现的无tick模式。

看了这里记录的第4条,我才知道无tick模式是一个什么概念。之前也看到过FreeRTOS中有这样的功能,但是一直没有弄明白这究竟是一个什么功能。

  1. 这里介绍了什么是无tick模式;

  2. 获取时间的参数也给了各种不同的属性,其实进行了X扩展的可以在各种条件下使用。

上面的这个接口可以用来测量一个任务的执行时间,利用这样的功能不仅可以测试各个任务的执行时间,其实也很容易测出来整个系统的负荷率。

在时间转换方面,如果算出来的数值不是整数是有一个向上取整的考虑的。比如说,系统的最小的识别精度是1ms,而算出来的时间是0.1ms,这样可能会取1ms。

这里给出来了两个时间处理的例子,第一个例子其实是一个短暂延时区间内的循环处理;第二个例子是一个带超时的报文接收处理。两种表达在处理上都是一个非常自然的表达。

看到这些处理接口,感觉ChibiOS的时间处理接口对于应用的设计还是非常友好的。这更加让人想去体验一下这个OS的效果了。

相关推荐
集大周杰伦1 个月前
FreeRTOS 源码结构解析与 STM32 HAL 库移植实践(任务创建、删除篇)
stm32·freertos·实时操作系统·嵌入式开发·rtos·任务调度·任务控制块
Absorbed_w1 个月前
FreeRTOS(3)列表List
mcu·rtos
PegasusYu1 个月前
STM32CUBEIDE FreeRTOS操作教程(十三):task api 任务访问函数
stm32·操作系统·教程·rtos·free-rtos·task api·任务访问函数
老猿讲编程3 个月前
万字长文介绍ARINC 653,以及在综合模块化航空电子设备(IMA)中的作用
rtos·arinc653
flashier3 个月前
ESP32学习笔记_FreeRTOS(5)——Mutex
c语言·笔记·学习·esp32·rtos
一只搬砖的猹3 个月前
小米vela系统(基于开源nuttx内核)——openvela开源项目
linux·开源·小米·rtos·nuttx·openvela·apache2.0
一只搬砖的猹3 个月前
小米vela系统(基于开源nuttx内核)——如何使用信号量进行PV操作
嵌入式硬件·内核·小米·rtos·信号量·线程通信·vela系统
一只搬砖的猹3 个月前
项目实战——使用python脚本完成指定OTA或者其他功能的自动化断电上电测试
linux·单片机·嵌入式硬件·python自动化·rtos·嵌入式软件·ota
PegasusYu3 个月前
STM32CUBEIDE FreeRTOS操作教程(十二):std dynamic memory 标准动态内存
stm32·freertos·rtos·stm32cubeide·free-rtos·标准动态内存·dynamic memeory
清炒孔心菜3 个月前
RTOS 基础知识
rtos