1.1 官网

1.2 源码
FreeRTOS Real Time Kernel (RTOS) - Browse /FreeRTOS at SourceForge.net

1.3 参考手册
Free RTOS Book and Reference Manual

1.4 编程风格
1.4.1 数据类型
FreeRTOS 定义有自己的数据类型,移植到不同平台需要实现数据类型的对接。在 Cortex-M 内核的 MCU 中,short 为 16 位, long 为 32位。char 类型有无符号(默认无符号)可通过MDK Options→C/C++ 设置。
| FreeRTOS | C |
| portCHAR | char |
| portFLOAT | float |
| portDOUBLE | double |
| portLONG | long |
| portSHORT | short |
| portSTACK_TYPE | uint32_t |
| portBASE_TYPE | long |
| portMAX_DELAY | uint16_t / uint32_t |
1.4.2 变量名
[无符号、指针前缀 + ] 变量类型前缀 + 变量名。
| 变量类型 | 前缀 |
| char | c |
| short | s |
| long | l |
| portBASE_TYPE | x |
| 数据结构、任务句柄、队列句柄 | x |
| 无符号 | u |
| 指针 | p |
1.4.3 函数名
[私有函数前缀 prv (private) + ] 函数返回值类型前缀 + 函数所在文件名 + 函数功能。
前缀采用小写,其它采用驼峰命名法。
1.4.4 宏
宏所在文件名前缀 + 宏名。
前缀小写,宏名大写。信号量的函数采用宏定义实现,其命名遵循函数命名方法。
| 前缀 | 宏定义的文件 |
| port | portable.h |
| task | task.h |
| pd | projdefs.h |
| config | FreeRTOSConfig.h |
| err | projdefs.h |
FreeRTOS 逻辑宏的值。
| 宏名 | 值 |
| pdTRUE | 1 |
| pdFALSE | 0 |
| pdPASS | 1 |
| pdFAIL | 0 |
1.4.5 格式
Tab = 4 Space
优先使用空格进行缩进,不同编译器或 IDE 识别 Tab 不一致。
本文详细介绍FreeRTOS官方资源、源码浏览、参考手册以及编程风格,包括数据类型、变量命名规则、函数命名和宏定义,帮助开发者理解和应用这一市场领先的RTOS。
2050

被折叠的 条评论
为什么被折叠?



