首页 > 其他分享 >FreeRTOS添加计时器

FreeRTOS添加计时器

时间:2023-10-10 11:48:04浏览次数:26  
标签:定时器 const 函数 FreeRTOS TickType 添加 计时器 时钟

最近需要将在Linux上的代码移植到FreeRTOS上,许多系统函数运行不了,其中就包括gettimeofday,以及使用定时器的不同。

FreeRTOS的时间管理

首先,FreeRTOS 的系统时钟节拍可以在配置文件 FreeRTOSConfig.h 里面设置:

#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )//配置系统时钟1KHz,即 1ms

在FreeRTOS中,系统时钟节拍的特点就是周期性中断,既然要产生中断那就需要定时器,所以在这里就是使用了一个24位的定时器,采用向下计数的方式,然后可以产生周期性的中断。

xTaskGetTickCount

TickType_t xTaskGetTickCount( void )

该函数用于获取系统当前运行的时钟节拍数。

注意:此函数用于在任务代码里面调用,如果在中断服务程序里面调用的话,需要使用函数xTaskGetTickCountFromISR,这两个函数切不可混用。

例如:

xTimerCreate

TimerHandle_t xTimerCreate(    const char * const pcTimerName,                // 名称
                                const TickType_t xTimerPeriodInTicks,       // 时长 tick
                                const UBaseType_t uxAutoReload,          // 是否自动加载
                                void * const pvTimerID,               // 编号ID
                                TimerCallbackFunction_t pxCallbackFunction )    // 回调函数

该函数用来创建一个定时器。

标签:定时器,const,函数,FreeRTOS,TickType,添加,计时器,时钟
From: https://www.cnblogs.com/ouyang_wsgwz/p/17754248.html

相关文章

  • centos8添加永久路由
    linux配置静态路由,一般使用iprouteadd添加临时路由,重启会丢失配置永久配置路由方法:touch/etc/sysconfig/network-scripts/route-ens192nmcliconnectionmodifyens192+ipv4.routes"10.0.3.0/24192.168.2.254"nmclicreloadnmclicupens192编辑脚本封装多个命令,一......
  • 使用LVM给Centos根分区扩容(删除其他分区,将空余空间添加到根分区)
    使用LVM给Centos根分区扩容(删除其他分区,将空余空间添加到根分区)新建的虚拟机发现根分区空间只分配了一半,另外一半分给了/home,和想要的效果不一致,于是需要删除/dev/mapper/centos-home分区,将空间添加到根分区1.查看磁盘发现/dev/mapper/centos-home分区占了一半空间.[root@te......
  • 使用vue-router添加动态路由时遇到的坑
    在开发后台管理的时候,用户登录时需要根据权限来分配路由,这时候可以在路由守卫里通过router.addRoute()方法动态添加路由。importrouterfrom'./router'importstorefrom'./store'importstoragefrom'@/utils/storage'import{asyncRoute}from"@/router/routers";......
  • PostgreSQL添加角色,用户,更新密码,设置权限等配置操作
    创建用户:CREATEUSERqueryWITHPASSWORD'123456';授予用户权限:(1)给予权限:grantgrantselecton表名to用户名;(2)撤消权限:revokerevokeselecton表名from用户名;给用户授予全部表的权限:grantallonalltablesinschemapublictopublic;查看用户权限:select*fr......
  • jquery 直接添加<style>样式
    如何使用jQuery直接添加style样式作为一名经验丰富的开发者,我将带你了解如何使用jQuery直接添加style样式。在本文中,我将向你展示一个简单的步骤,并提供每一步所需的代码和注释。让我们开始吧!整体流程下面是整个过程的步骤概述:步骤描述1引入jQuery库2创建一个样式......
  • oracle添加表说明
    1、添加表的中文说明#添加表中文说明COMMENTONTABLETEST.EMPLOYEEIS'员工表';#查看说明select*fromdba_tab_comments;2、表字段添加说明#表字段添加说明COMMENTONCOLUMNTEST.EMPLOYEE.EMP_DESCRIPTIONIS'员工描述信息';#查看列的中文说明select*from......
  • python Excel添加Excel附件
    #"""#插入附件importwin32com.clientif__name__=="__main__":filename=r"23年09月.xlsx"xlApp=win32com.client.Dispatch('Excel.Application')xlApp.Visible=0#0不可见,1可见workbook=xlApp.Wo......
  • FreeRTOS入门教程(队列详细使用示例)
    (文章目录)前言上篇文章我们已经讲解了队列的概念和队列相关的API函数,那么本篇文章的话就开始带大家来学习使用队列。一、队列基本使用这个例子将会创建三个任务,其中两个任务用来发送数据到队列中,另一个任务用来从队列中读取数据。voidTask1Function(void*param){ intv......
  • 迅为RK3588开发板添加 RIL 驱动程序库
    将Quectel提供的相应RIL库文件放入Android系统的以下路径。作者拷贝到了源码的android_build/device/fsl/imx8m/evk_8mm/lib目录下,如下图所示:然后将apns-conf.xml拷贝到android_build/device/fsl/imx8m/evk_8mm/下,如下图所示:B站搜索-北京迅为RK3588开发板,公众Hao关注:......
  • FreeSWITCH添加h264编码及pcap视频提取
    操作系统:CentOS7.6_x64、Windows10_x64FreeSWITCH版本:1.10.9Python版本:3.9.2一、启用h264相关模块这里以mod_openh264为例进行演示。1、安装open_h264库获取open_h264源码:gitclonehttps://github.com/cisco/openh264.git若下载过慢,可从如下渠道获取:关注微信......