1 FreeRTOS 基本知识 (参考野火FreeRTOS文档)

1.1 官网

FreeRTOS - Market leading RTOS (Real Time Operating System) for embedded systems with Internet of Things extensions

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 不一致。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值