《FreeRTOS内核实现与应用开发实战指南:基于STM32》 —1.4 FreeRTOS的编程风格
【摘要】 本节书摘来自华章计算机《FreeRTOS内核实现与应用开发实战指南:基于STM32》一书中第1章,第1.4.1节,作者是刘火良 杨 森。
1.4 FreeRTOS的编程风格
学习一个RTOS,弄清楚它的编程风格很重要,这可以大大提高我们阅读代码的效率。下面我们就从FreeRTOS中的数据类型、变量名、函数名、宏以及格式这几个方面做简单介绍。
1.4.1 数据类型
在FreeRTOS中,使用的数据类型虽然都是标准C里面的数据类型,但是针对不同的处理器,对标准C的数据类型又进行了重定义,给它们设置了一个新的名字,比如为char重新定义了一个名字portCHAR,这里的port表示接口,在将FreeRTOS移植到处理器上时,需要用这些接口文件把它们连接在一起。但是用户在写程序时并非一定要遵循FreeRTOS的风格,仍可以直接用C语言的标准类型。在FreeRTOS中,int型从不使用,只使用short型和long型。在Cortex-M内核的MCU中,short为16位,long为32位。
FreeRTOS中详细的数据类型重定义在portmacro.h头文件中实现,具体参见表1-3和代码清单1-1。
表1-3 FreeRTOS中的数据类型重定义
代码清单1-1 FreeRTOS中的数据类型重定义
在编程时,如果用户没有明确指定char的符号类型,那么编译器会默认指定char型的变量为无符号或者有符号。正是基于这个原因,在FreeRTOS中,我们都需要明确指定变量char是有符号的还是无符号的。在KEIL中,默认char是无符号的,但是也可以配置为有符号的,具体配套过程如图1-3所示。
图1-3 char型变量的符号配置(KEIL)
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)