復制一個網站怎么做的青島做網站的公司哪家好
1、數(shù)據(jù)類型
(1)每個移植的版本都含有自己的portmacro.h頭文件,里面定義了2個數(shù)據(jù)類型。
(2)TickType_t
- FreeRTOS配置了一個周期性的時鐘中斷:Tick Interrup
- 每發(fā)生一次中斷,中斷次數(shù)累加,這被稱為tick count
- tick count這個變量的類型就是TickType_t
- TickType_t可以是16位的,也可以是32位的
- FreeRTOSConfig.h中定義configUSE_16_BIT_TICKS時,TickType_t就是uint16_t
否則TickType_t就是uint32_t - 對于32位架構,建議把TickType_t配置為uint32_t
(3)BaseType_t
- 這是該架構最高效的數(shù)據(jù)類型
- 32位架構中,它就是uint32_t
- 16位架構中,它就是uint16_t
- 8位架構中,它就是uint8_t
- BaseType_t通常用作簡單的返回值的類型,還有邏輯值,比如 pdTRUE/pdFALSE
2、編程規(guī)范
2.1、變量名的前綴
變量名前綴 | 含義 |
c | char |
s | uint16_t,short |
l | uint32_t,long |
x | BaseType_t, 其他非標準類型:結構體、task handle、queue handle等 |
u | unsigned |
p | 指針 |
uc | uint8_t,unsigned char |
pc | char指針 |
2.2、函數(shù)名
(1)函數(shù)名的前綴有兩部分:返回值類型,在哪個文件定義。
(2)前綴為最前面的小寫字母。
函數(shù)名前綴 | 含義 |
vTaskPriorityset | 返回值類型:void 在task.c中定義 |
xQueuReceive | 返回值類型:BaseType_t 在queue.c中定義 |
pvTimerGetTimerID | 返回值類型:pointer to void 在timer.c中定義 |
2.3、宏定義
宏的名字是大小,可以添加小寫的前綴。前綴是用來表示:宏在哪個文件中定義。
宏的前綴 | 含義:在哪個文件里定義 |
port(比如portMAX_DELAY) | portable.h或portmacro.h |
task(比如taskENTER_CRITICAL()) | task.h |
pd (比如pdTRUE) | projdefs.h |
config (比如configUSE_PREEMPTION) | FreeRTOSConfig.h |
err (比如errQUEUE_FULL) | projdefs.h |
通用的宏定義如下:
宏 | 值 |
pdTRUE | 1 |
pdFALSE | 0 |
pdPASS | 1 |
pdFAIL | 0 |
?