FreeRTOS 的命名规则

2023-05-16

初学 FreeRTOS 的用户对其变量和函数的命名比较迷惑,下面专门做一下介绍:
◆ 变量
⚫ uint32_t 定义的变量都加上前缀 ul。u 代表 unsigned 无符号,l 代表 long 长整型。
⚫ uint16_t 定义的变量都加上前缀 us。u 代表 unsigned 无符号,s 代表 short 短整型。
⚫ uint8_t 定义的变量都加上前缀 uc。u 代表 unsigned 无符号,c 代表 char 字符型。
⚫ stdint.h 文件中未定义的变量类型,在定义变量时需要加上前缀 x,比如 BaseType_t 和
TickType_t 定义的变量。
⚫ stdint.h 文件中未定义的无符号变量类型,在定义变量时要加上前缀 u,比如 UBaseType_t 定义
的变量要加上前缀 ux。
⚫ size_t 定义的变量也要加上前缀 ux。
⚫ 枚举变量会加上前缀 e。
⚫ 指针变量会加上前缀 p,比如 uint16_t 定义的指针变量会加上前缀 pus。
⚫ 根据 MISRA 代码规则,char 定义的变量只能用于 ASCII 字符,前缀使用 c。
⚫ 根据 MISRA 代码规则,char *定义的指针变量只能用于 ASCII 字符串,前缀使用 pc。
◆ 函数
⚫ 加上了 static 声明的函数,定义时要加上前缀 prv,这个是单词 private 的缩写。
⚫ 带有返回值的函数,根据返回值的数据类型,加上相应的前缀,如果没有返回值,即 void 类型
,函数的前缀加上字母 v。
⚫ 根据文件名,文件中相应的函数定义时也将文件名加到函数命名中,比如 tasks.c 文件中函数
vTaskDelete,函数中的 task 就是文件名中的 task。
◆ 宏定义
⚫ 根据宏定义所在的文件,文件中的宏定义声明时也将文件名加到宏定义中,比如宏定义
configUSE_PREEMPTION 是定义在文件 FreeRTOSConfig.h 里面。宏定义中的 config 就是文
件名中的 config。另外注意,前缀要小写。
⚫ 除了前缀,其余部分全部大写,同时用下划线分开

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FreeRTOS 的命名规则 的相关文章

  • leetcode刷题(六)——快乐数

    编写一个算法来判断一个数 n 是不是快乐数 快乐数 定义为 xff1a 对于一个正整数 xff0c 每一次将该数替换为它每个位置上的数字的平方和 然后重复这个过程直到这个数变为 1 xff0c 也可能是 无限循环 但始终变不到 1 如果这个
  • leetcode刷题(七)——移动零

    给定一个数组 nums xff0c 编写一个函数将所有 0 移动到数组的末尾 xff0c 同时保持非零元素的相对顺序 请注意 xff0c 必须在不复制数组的情况下原地对数组进行操作 示例 1 输入 nums 61 0 1 0 3 12 输出
  • STM32 HAL库 串口接收不定长数据(帧头)

    写的比较垃圾 xff0c 将就着用 欢迎各位大佬指导 xff0c 我这里要用串口中断接收两种帧头的数据 xff0c 1 以0x0D 0x0A为帧头的数据 2 xff0c 以0x55 0xA5为帧头的数据 两数据包帧头不同 大小不同 其中定义
  • freeRTOS系列教程之【第一章】FreeRTOS概述与体验

    文章目录 教程目录1 1 FreeRTOS目录结构1 1 FreeRTOS目录结构1 2 核心文件1 3 移植时涉及的文件1 4 头文件相关 1 4 1 头文件目录1 4 2 头文件 1 5 内存管理1 6 Demo1 7 数据类型和编程规
  • 【RTOS的最通俗理解】行业大佬用一篇文章带你快速理解RTOS

    文章目录 单片机 RTOS 架构 1 RTOS的概念 1 1 用人来类比单片机程序和RTOS 1 1 1 我无法一心多用1 2 2 我可以一心多用 1 2 程序简单示例 2 架构的概念 2 1 用人来类比电子产品2 2 要深入理解RTOS就
  • 开源网络模拟器ns-3 架构与实践

  • 四、freeRTOS_同步互斥与通信概述

    目录 1 同步与互斥的概念 2 同步的例子 xff1a 有缺陷 3 互斥的例子 xff1a 有缺陷 4 通信的例子 xff1a 有缺陷 5 FreeRTOS的解决方案 对应程序 xff1a 12 freertos example sync
  • 五、freeRTOS_队列的使用

    目录 1 队列的理论讲解 1 1 常规操作 2 队列的常规使用 3 队列集 1 队列的理论讲解 1 1 常规操作 队列的简化操如入下图所示 xff0c 从此图可知 xff1a 队列可以包含若干个数据 xff1a 队列中有若干项 xff0c
  • 从零开始的leetcode刷题(使用python)Day1

    从零开始用python刷leetcode xff0c 随手记录一些tips 1 哈希表 xff08 leetcode第一题两数之和 xff09 哈希表也叫作散列表 xff0c 数据结构提供了键 xff08 key xff09 和值 xff0
  • [深度学习] 神经网络中的 batch 和 epoch

    参考文章为 神经网络中Batch和Epoch之间的区别是什么 xff1f Sample Sample是单个数据 即有意义的数据的最小单位 训练数据集由许多Sample组成 batch batch是一个人为设定的超参数 batch的意思是 批
  • Windows开启ftp服务-使用Xlight FTP Server

    适用于windows系统 xff0c 使用Xlight FTP Server软件 下载地址 xff1a 点击此处下载 1 将下面的软件 xff0c 安装在电脑上 2 开启ftp服务 点击程序主界面左上角 xff0c 默认端口号为21 xff
  • 控制理论中的常用定义与定理

    以下内容摘自 应用非线性控制 对于自治系统 xff08 在本书中与定常系统等价 xff09 一句话总结 xff1a 初始状态的足够小能够保证系统状态范数的任意小 不变集理论可以在V导为半负定时推导出渐进稳定的结论 xff0c 但只适用于自治
  • centos8服务器安装nginx

    安装nginx 安装依赖包 yum span class token parameter variable y span span class token function install span gcc zlib zlib devel
  • 部署hexo遇到报错ERROR Deployer not found: git的解决办法

    部署hexo遇到报错ERROR Deployer not found git的解决办法 今天部署hexo的时候遇到一个报错 hexo c span class token operator amp amp span hexo g span
  • npm install hexo-renderer-sass时报错解决办法

    npm install hexo renderer sass时报错 在安装配置hexo博客的时候 xff0c 有的主题需要安装 span class token function npm span span class token func
  • 实用工具网站推荐

    速写板 可以随时开一个web网页进行书面草稿的网站
  • kaggle 免费gpu,optuna学习,python中*的用法

    kaggle import optuna def obj trial x 61 trial suggest float 34 x 34 7 7 y 61 trial suggest float 34 y 34 7 7 return x 1
  • BFS题单总结

    BFS题单汇总 此文章用来记录遇到的经典的从某个点到达某个边界或者指定点的BFS题目 xff0c 将持续更新 1926 迷宫中离入口最近的出口 span class token keyword class span span class t
  • Java/C++输入输出特定格式模板总结

    Java输出每个数字占5个空格 xff0c 此输出模式见洛谷1443题 span class token class name System span span class token punctuation span out span c
  • DFS题单以及模板汇总

    此文章是为了记录自己学习DFS算法以及记录写过的DFS题单汇总 xff0c 持续补充 P1605 迷宫 迷宫 题目描述 给定一个 N M N times M N M 方格的迷宫 xff0c 迷宫里有

随机推荐