在好例子网,分享、交流、成长!
您当前所在位置:首页C/C++ 开发实例嵌入式开发 → FreeRTOS 官方 参考手册 英文

FreeRTOS 官方 参考手册 英文

嵌入式开发

下载此实例
  • 开发语言:C/C++
  • 实例大小:3.05M
  • 下载次数:20
  • 浏览次数:156
  • 发布时间:2020-02-25
  • 实例类别:嵌入式开发
  • 发 布 人:Charone
  • 文件格式:.pdf
  • 所需积分:2
 相关标签: FreeRTOS 参考 手册 英文 官方

实例介绍

【实例简介】FreeRTOS_Reference_Manual_V9.0.0.pdf

【实例截图】


【核心代码】

Contents
Contents ...................................................................................................................................5
List of Figures ...........................................................................................................................8
List of Code Listings .................................................................................................................9
List of Tables .......................................................................................................................... 15
List of Notation........................................................................................................................ 15
Chapter 1 About This Manual............................................................................................... 16
1.1 Scope........................................................................................................................ 17
Chapter 2 Task and Scheduler API...................................................................................... 20
2.1 portSWITCH_TO_USER_MODE()............................................................................ 21
2.2 vTaskAllocateMPURegions() .................................................................................... 22
2.3 xTaskAbortDelay() .................................................................................................... 25
2.4 xTaskCallApplicationTaskHook()............................................................................... 27
2.5 xTaskCheckForTimeOut()......................................................................................... 30
2.6 xTaskCreate() ........................................................................................................... 32
2.7 xTaskCreateStatic() .................................................................................................. 37
2.8 xTaskCreateRestricted() ........................................................................................... 41
2.9 vTaskDelay()............................................................................................................. 46
2.10 vTaskDelayUntil()...................................................................................................... 48
2.11 vTaskDelete()............................................................................................................ 51
2.12 taskDISABLE_INTERRUPTS() ................................................................................. 53
2.13 taskENABLE_INTERRUPTS() .................................................................................. 55
2.14 taskENTER_CRITICAL()........................................................................................... 56
2.15 taskENTER_CRITICAL_FROM_ISR()....................................................................... 59
2.16 taskEXIT_CRITICAL()............................................................................................... 61
2.1 taskEXIT_CRITICAL_FROM_ISR()........................................................................... 63
2.2 xTaskGetApplicationTaskTag() ................................................................................. 65
2.3 xTaskGetCurrentTaskHandle().................................................................................. 67
2.4 xTaskGetIdleTaskHandle()........................................................................................ 68
2.1 xTaskGetHandle()..................................................................................................... 69
2.2 uxTaskGetNumberOfTasks() .................................................................................... 71
2.3 vTaskGetRunTimeStats().......................................................................................... 72
2.4 xTaskGetSchedulerState()........................................................................................ 76
2.5 uxTaskGetStackHighWaterMark()............................................................................. 77
2.6 eTaskGetState()........................................................................................................ 79
2.7 uxTaskGetSystemState() .......................................................................................... 81
2.8 vTaskGetTaskInfo()................................................................................................... 85
2.9 pvTaskGetThreadLocalStoragePointer()................................................................... 87
vi
2.10 pcTaskGetName().....................................................................................................89
2.11 xTaskGetTickCount() ................................................................................................90
2.12 xTaskGetTickCountFromISR() ..................................................................................92
2.13 vTaskList().................................................................................................................94
2.14 xTaskNotify().............................................................................................................97
2.15 xTaskNotifyAndQuery() ...........................................................................................100
2.16 xTaskNotifyAndQueryFromISR().............................................................................104
2.17 xTaskNotifyFromISR().............................................................................................108
2.18 xTaskNotifyGive()....................................................................................................113
2.19 vTaskNotifyGiveFromISR()......................................................................................116
2.20 xTaskNotifyStateClear() ..........................................................................................119
2.21 ulTaskNotifyTake() ..................................................................................................121
2.22 xTaskNotifyWait()....................................................................................................124
2.23 uxTaskPriorityGet() .................................................................................................127
2.24 vTaskPrioritySet()....................................................................................................129
2.25 vTaskResume().......................................................................................................131
2.26 xTaskResumeAll()...................................................................................................133
2.27 xTaskResumeFromISR().........................................................................................136
2.28 vTaskSetApplicationTaskTag()................................................................................139
2.29 vTaskSetThreadLocalStoragePointer()....................................................................141
2.30 vTaskSetTimeOutState().........................................................................................143
2.31 vTaskStartScheduler().............................................................................................145
2.32 vTaskStepTick() ......................................................................................................147
2.33 vTaskSuspend() ......................................................................................................149
2.34 vTaskSuspendAll() ..................................................................................................151
2.35 taskYIELD().............................................................................................................153
Chapter 3 Queue API.........................................................................................................155
3.1 vQueueAddToRegistry()..........................................................................................156
3.2 xQueueAddToSet() .................................................................................................158
3.3 xQueueCreate().......................................................................................................160
3.4 xQueueCreateSet() .................................................................................................162
3.5 xQueueCreateStatic()..............................................................................................166
3.6 vQueueDelete().......................................................................................................168
3.7 pcQueueGetName()................................................................................................170
3.8 xQueueIsQueueEmptyFromISR()............................................................................171
3.9 xQueueIsQueueFullFromISR()................................................................................172
3.10 uxQueueMessagesWaiting() ...................................................................................173
3.11 uxQueueMessagesWaitingFromISR() .....................................................................174
3.12 xQueueOverwrite()..................................................................................................176
3.13 xQueueOverwriteFromISR()....................................................................................178
3.14 xQueuePeek().........................................................................................................180
3.15 xQueuePeekFromISR()...........................................................................................183
3.16 xQueueReceive() ....................................................................................................184
vii
3.17 xQueueReceiveFromISR()...................................................................................... 187
3.18 xQueueRemoveFromSet() ...................................................................................... 190
3.19 xQueueReset()........................................................................................................ 192
3.20 xQueueSelectFromSet().......................................................................................... 193
3.21 xQueueSelectFromSetFromISR() ........................................................................... 195
3.22 xQueueSend(), xQueueSendToFront(), xQueueSendToBack()............................... 197
3.23 xQueueSendFromISR(), xQueueSendToBackFromISR(),
xQueueSendToFrontFromISR() .............................................................................. 200
3.24 uxQueueSpacesAvailable()..................................................................................... 204
Chapter 4 Semaphore API ................................................................................................. 206
4.1 vSemaphoreCreateBinary()..................................................................................... 207
4.2 xSemaphoreCreateBinary()..................................................................................... 210
4.3 xSemaphoreCreateBinaryStatic()............................................................................ 213
4.4 xSemaphoreCreateCounting() ................................................................................ 216
4.5 xSemaphoreCreateCountingStatic()........................................................................ 219
4.6 xSemaphoreCreateMutex()..................................................................................... 222
4.7 xSemaphoreCreateMutexStatic() ............................................................................ 224
4.8 xSemaphoreCreateRecursiveMutex() ..................................................................... 226
4.9 xSemaphoreCreateRecursiveMutexStatic() ............................................................ 229
4.10 vSemaphoreDelete()............................................................................................... 231
4.11 uxSemaphoreGetCount() ........................................................................................ 232
4.12 xSemaphoreGetMutexHolder()................................................................................ 233
4.13 xSemaphoreGive().................................................................................................. 234
4.14 xSemaphoreGiveFromISR().................................................................................... 236
4.15 xSemaphoreGiveRecursive() .................................................................................. 239
4.16 xSemaphoreTake() ................................................................................................. 242
4.17 xSemaphoreTakeFromISR() ................................................................................... 245
4.18 xSemaphoreTakeRecursive().................................................................................. 247
Chapter 5 Software Timer API ........................................................................................... 251
5.1 xTimerChangePeriod()............................................................................................ 252
5.2 xTimerChangePeriodFromISR().............................................................................. 255
5.3 xTimerCreate()........................................................................................................ 257
5.4 xTimerCreateStatic()............................................................................................... 261
5.5 xTimerDelete() ........................................................................................................ 265
5.1 xTimerGetExpiryTime()........................................................................................... 267
5.1 pcTimerGetName() ................................................................................................. 269
5.2 xTimerGetPeriod()................................................................................................... 270
5.3 xTimerGetTimerDaemonTaskHandle().................................................................... 271
5.4 pvTimerGetTimerID() .............................................................................................. 272
5.5 xTimerIsTimerActive()............................................................................................. 274
5.6 xTimerPendFunctionCall()....................................................................................... 276
5.7 xTimerPendFunctionCallFromISR() ........................................................................ 278
viii
5.8 xTimerReset() .........................................................................................................281
5.9 xTimerResetFromISR() ...........................................................................................284
5.10 vTimerSetTimerID().................................................................................................286
5.11 xTimerStart() ...........................................................................................................288
5.12 xTimerStartFromISR() .............................................................................................290
5.13 xTimerStop() ...........................................................................................................292
5.14 xTimerStopFromISR() .............................................................................................294
Chapter 6 Event Groups API..............................................................................................296
6.1 xEventGroupClearBits()...........................................................................................297
6.2 xEventGroupClearBitsFromISR() ............................................................................299
6.3 xEventGroupCreate() ..............................................................................................302
6.4 xEventGroupCreateStatic() .....................................................................................304
6.1 vEventGroupDelete()...............................................................................................306
6.2 xEventGroupGetBits() .............................................................................................307
6.1 xEventGroupGetBitsFromISR() ...............................................................................308
6.2 xEventGroupSetBits()..............................................................................................309
6.3 xEventGroupSetBitsFromISR()................................................................................311
6.1 xEventGroupSync().................................................................................................314
6.2 xEventGroupWaitBits()............................................................................................318
Chapter 7 Kernel Configuration ..........................................................................................321
7.1 FreeRTOSConfig.h..................................................................................................322
7.2 Constants that Start “INCLUDE_”............................................................................323
7.3 Constants that Start “config”....................................................................................327
APPENDIX 1: Data Types and Coding Style Guide ..........................................................347
INDEX...................................................................................................................................350
List of Figures
Figure 1 An example of the table produced by calling vTaskGetRunTimeStats() ....................72
Figure 2 An example of the table produced by calling vTaskList()...........................................94
Figure 3 Time line showing the execution of 4 tasks, all of which run at the idle priority ........332
Figure 4 An example interrupt priority configuration ..............................................................335
ix
List of Code Listings
Listing 1 portSWITCH_TO_USER_MODE() macro prototype ................................................. 21
Listing 2 vTaskAllocateMPURegions() function prototype ....................................................... 22
Listing 3 The data structures used by xTaskCreateRestricted() .............................................. 23
Listing 4 Example use of vTaskAllocateMPURegions()........................................................... 24
Listing 5 xTaskAbortDelay() function prototype....................................................................... 25
Listing 6 Example use of xTaskAbortDelay()........................................................................... 26
Listing 7 xTaskCallApplicationTaskHook() function prototype ................................................. 27
Listing 8 The prototype to which all task hook functions must conform ................................... 27
Listing 9 Example use of xTaskCallApplicationTaskHook()..................................................... 29
Listing 10 xTaskCheckForTimeOut() function prototype.......................................................... 30
Listing 11 Example use of vTaskSetTimeOutState() and xTaskCheckForTimeOut()............... 31
Listing 12 xTaskCreate() function prototype............................................................................ 32
Listing 13 Example use of xTaskCreate() ............................................................................... 36
Listing 14 xTaskCreateStatic() function prototype................................................................... 37
Listing 15 Example use of xTaskCreateStatic()....................................................................... 40
Listing 16 xTaskCreateRestricted() function prototype............................................................ 41
Listing 17 The data structures used by xTaskCreateRestricted() ............................................ 42
Listing 18 Statically declaring a correctly aligned stack for use by a restricted task................. 43
Listing 19 Example use of xTaskCreateRestricted()................................................................ 45
Listing 20 vTaskDelay() function prototype ............................................................................. 46
Listing 21 Example use of vTaskDelay()................................................................................. 47
Listing 22 vTaskDelayUntil() function prototype ...................................................................... 48
Listing 23 Example use of vTaskDelayUntil().......................................................................... 50
Listing 24 vTaskDelete() function prototype ............................................................................ 51
Listing 25 Example use of the vTaskDelete().......................................................................... 52
Listing 26 taskDISABLE_INTERRUPTS() macro prototype .................................................... 53
Listing 27 taskENABLE_INTERRUPTS() macro prototype ..................................................... 55
Listing 28 taskENTER_CRITICAL macro prototype ................................................................ 56
Listing 29 Example use of taskENTER_CRITICAL() and taskEXIT_CRITICAL()..................... 58
Listing 30 taskENTER_CRITICAL_FROM_ISR() macro prototype.......................................... 59
Listing 31 Example use of taskENTER_CRITICAL_FROM_ISR() and
taskEXIT_CRITICAL_FROM_ISR() ................................................................. 60
Listing 32 taskEXIT_CRITICAL() macro prototype.................................................................. 61
Listing 33 taskEXIT_CRITICAL_FROM_ISR() macro prototype.............................................. 63
Listing 34 xTaskGetApplicationTaskTag() function prototype.................................................. 65
Listing 35 Example use of xTaskGetApplicationTaskTag() ..................................................... 66
Listing 36 xTaskGetCurrentTaskHandle() function prototype .................................................. 67
Listing 37 xTaskGetIdleTaskHandle() function prototype ........................................................ 68
Listing 38 xTaskGetHandle() function prototype ..................................................................... 69
Listing 39 Example use of xTaskGetHandle() ......................................................................... 70
x
Listing 40 uxTaskGetNumberOfTasks() function prototype .....................................................71
Listing 41 vTaskGetRunTimeStats() function prototype...........................................................72
Listing 42 Example macro definitions, taken from the LM3Sxxx Eclipse Demo .......................74
Listing 43 Example macro definitions, taken from the LPC17xx Eclipse Demo .......................75
Listing 44 Example use of vTaskGetRunTimeStats() ..............................................................75
Listing 45 xTaskGetSchedulerState() function prototype.........................................................76
Listing 46 Example use of uxTaskGetStackHighWaterMark() .................................................78
Listing 47 eTaskGetState() function prototype.........................................................................79
Listing 48 uxTaskGetSystemState() function prototype ...........................................................81
Listing 49 Example use of uxTaskGetSystemState()...............................................................83
Listing 50 The TaskStatus_t definition.....................................................................................84
Listing 51 vTaskGetTaskInfo() function prototype ...................................................................85
Listing 52 Example use of vTaskGetTaskInfo() .......................................................................86
Listing 53 pvTaskGetThreadLocalStoragePointer() function prototype....................................87
Listing 54 Example use of pvTaskGetThreadLocalStoragePointer()........................................88
Listing 55 pcTaskGetName() function prototype......................................................................89
Listing 56 xTaskGetTickCount() function prototype .................................................................90
Listing 57 Example use of xTaskGetTickCount().....................................................................91
Listing 58 xTaskGetTickCountFromISR() function prototype...................................................92
Listing 59 Example use of xTaskGetTickCountFromISR().......................................................93
Listing 60 vTaskList() function prototype .................................................................................94
Listing 61 Example use of vTaskList().....................................................................................96
Listing 62 xTaskNotify() function prototype..............................................................................97
Listing 63 Example use of xTaskNotify() .................................................................................99
Listing 64 xTaskNotifyAndQuery() function prototype............................................................100
Listing 65 Example use of xTaskNotifyAndQuery() ...............................................................103
Listing 66 xTaskNotifyAndQueryFromISR() function prototype..............................................104
Listing 67 Example use of xTaskNotifyAndQueryFromISR() .................................................107
Listing 68 xTaskNotifyFromISR() function prototype .............................................................108
Listing 69 Example use of xTaskNotifyFromISR() .................................................................112
Listing 70 xTaskNotifyGive() function prototype ....................................................................113
Listing 71 Example use of xTaskNotifyGive() ........................................................................115
Listing 72 vTaskNotifyGiveFromISR() function prototype ......................................................116
Listing 73 Example use of vTaskNotifyGiveFromISR()..........................................................118
Listing 74 xTaskNotifyStateClear() function prototype ...........................................................119
Listing 75 Example use of xTaskNotifyStateClear()...............................................................120
Listing 76 ulTaskNotifyTake() function prototype...................................................................121
Listing 77 Example use of ulTaskNotifyTake().......................................................................123
Listing 78 xTaskNotifyWait() function prototype.....................................................................124
Listing 79 Example use of xTaskNotifyWait() ........................................................................126
Listing 80 uxTaskPriorityGet() function prototype ..................................................................127
Listing 81 Example use of uxTaskPriorityGet()......................................................................128
Listing 82 vTaskPrioritySet() function prototype ....................................................................129
xi
Listing 83 Example use of vTaskPrioritySet()........................................................................ 130
Listing 84 vTaskResume() function prototype ....................................................................... 131
Listing 85 Example use of vTaskResume()........................................................................... 132
Listing 86 xTaskResumeAll() function prototype ................................................................... 133
Listing 87 Example use of xTaskResumeAll()....................................................................... 135
Listing 88 xTaskResumeFromISR() function prototype ......................................................... 136
Listing 89 Example use of xTaskResumeFromISR()............................................................. 138
Listing 90 vTaskSetApplicationTaskTag() function prototype ................................................ 139
Listing 91 Example use of vTaskSetApplicationTaskTag().................................................... 140
Listing 92 vTaskSetThreadLocalStoragePointer() function prototype.................................... 141
Listing 93 Example use of vTaskSetThreadLocalStoragePointer()........................................ 142
Listing 94 vTaskSetTimeOutState() function prototype ......................................................... 143
Listing 95 Example use of vTaskSetTimeOutState() and xTaskCheckForTimeOut()............. 144
Listing 96 vTaskStartScheduler() function prototype ............................................................. 145
Listing 97 Example use of vTaskStartScheduler()................................................................. 146
Listing 98 Example use of vTaskStepTick() .......................................................................... 148
Listing 99 vTaskSuspend() function prototype ...................................................................... 149
Listing 100 Example use of vTaskSuspend() ........................................................................ 150
Listing 101 vTaskSuspendAll() function prototype................................................................. 151
Listing 102 Example use of vTaskSuspendAll() .................................................................... 152
Listing 103 taskYIELD() macro prototype.............................................................................. 153
Listing 104 Example use of taskYIELD()............................................................................... 154
Listing 105 vQueueAddToRegistry() function prototype ........................................................ 156
Listing 106 Example use of vQueueAddToRegistry()............................................................ 157
Listing 107 xQueueAddToSet() function prototype................................................................ 158
Listing 108 xQueueCreate() function prototype..................................................................... 160
Listing 109 Example use of xQueueCreate()......................................................................... 161
Listing 110 xQueueCreateSet() function prototype................................................................ 162
Listing 111 Example use of xQueueCreateSet() and other queue set API functions ............. 165
Listing 112 xQueueCreateStatic() function prototype ............................................................ 166
Listing 113 Example use of xQueueCreateStatic()................................................................ 167
Listing 114 vQueueDelete() function prototype ..................................................................... 168
Listing 115 Example use of vQueueDelete()......................................................................... 169
Listing 116 pcQueueGetName() function prototype .............................................................. 170
Listing 117 xQueueIsQueueEmptyFromISR() function prototype .......................................... 171
Listing 118 xQueueIsQueueFullFromISR() function prototype .............................................. 172
Listing 119 uxQueueMessagesWaiting() function prototype.................................................. 173
Listing 120 Example use of uxQueueMessagesWaiting() ..................................................... 173
Listing 121 uxQueueMessagesWaitingFromISR() function prototype.................................... 174
Listing 122 Example use of uxQueueMessagesWaitingFromISR() ....................................... 175
Listing 123 xQueueOverwrite() function prototype ................................................................ 176
Listing 124 Example use of xQueueOverwrite().................................................................... 177
Listing 125 xQueueOverwriteFromISR() function prototype .................................................. 178
xii
Listing 126 Example use of xQueueOverwriteFromISR() ......................................................179
Listing 127 xQueuePeek() function prototype........................................................................180
Listing 128 Example use of xQueuePeek() ...........................................................................182
Listing 129 xQueuePeekFromISR() function prototype..........................................................183
Listing 130 xQueueReceive() function prototype...................................................................184
Listing 131 Example use of xQueueReceive().......................................................................186
Listing 132 xQueueReceiveFromISR() function prototype.....................................................187
Listing 133 Example use of xQueueReceiveFromISR().........................................................189
Listing 134 xQueueRemoveFromSet() function prototype .....................................................190
Listing 135 Example use of xQueueRemoveFromSet().........................................................191
Listing 136 xQueueReset() function prototype ......................................................................192
Listing 137 xQueueSelectFromSet() function prototype ........................................................193
Listing 138 xQueueSelectFromSetFromISR() function prototype ..........................................195
Listing 139 Example use of xQueueSelectFromSetFromISR()..............................................196
Listing 140 xQueueSend(), xQueueSendToFront() and xQueueSendToBack() function
prototypes ......................................................................................................197
Listing 141 Example use of xQueueSendToBack() ...............................................................199
Listing 142 xQueueSendFromISR(), xQueueSendToBackFromISR() and
xQueueSendToFrontFromISR() function prototypes ......................................200
Listing 143 Example use of xQueueSendToBackFromISR() .................................................203
Listing 144 uxQueueSpacesAvailable() function prototype....................................................204
Listing 145 Example use of uxQueueSpacesAvailable() .......................................................204
Listing 146 vSemaphoreCreateBinary() macro prototype ......................................................207
Listing 147 Example use of vSemaphoreCreateBinary() .......................................................209
Listing 148 xSemaphoreCreateBinary() function prototype ...................................................210
Listing 149 Example use of xSemaphoreCreateBinary() .......................................................212
Listing 150 xSemaphoreCreateBinaryStatic() function prototype...........................................213
Listing 151 Example use of xSemaphoreCreateBinaryStatic() ..............................................215
Listing 152 xSemaphoreCreateCounting() function prototype ...............................................216
Listing 153 Example use of xSemaphoreCreateCounting()...................................................218
Listing 154 xSemaphoreCreateCountingStatic() function prototype.......................................219
Listing 155 Example use of xSemaphoreCreateCountingStatic() ..........................................221
Listing 156 xSemaphoreCreateMutex() function prototype....................................................222
Listing 157 Example use of xSemaphoreCreateMutex()........................................................223
Listing 158 xSemaphoreCreateMutexStatic() function prototype ...........................................224
Listing 159 Example use of xSemaphoreCreateMutexStatic()...............................................225
Listing 160 xSemaphoreCreateRecursiveMutex() function prototype ....................................226
Listing 161 Example use of xSemaphoreCreateRecursiveMutex()........................................228
Listing 162 xSemaphoreCreateRecursiveMutexStatic() function prototype ...........................229
Listing 163 Example use of xSemaphoreCreateRecursiveMutexStatic() ...............................230
Listing 164 vSemaphoreDelete() function prototype..............................................................231
Listing 165 uxSemaphoreGetCount() function prototype.......................................................232
Listing 166 xSemaphoreGetMutexHolder() function prototype ..............................................233
Listing 167 xSemaphoreGive() function prototype.................................................................234
xiii
Listing 168 Example use of xSemaphoreGive() .................................................................... 235
Listing 169 xSemaphoreGiveFromISR() function prototype .................................................. 236
Listing 170 Example use of xSemaphoreGiveFromISR() ...................................................... 238
Listing 171 xSemaphoreGiveRecursive() function prototype................................................. 239
Listing 172 Example use of xSemaphoreGiveRecursive()..................................................... 241
Listing 173 xSemaphoreTake() function prototype................................................................ 242
Listing 174 Example use of xSemaphoreTake().................................................................... 244
Listing 175 xSemaphoreTakeFromISR() function prototype.................................................. 245
Listing 176 xSemaphoreTakeRecursive() function prototype ................................................ 247
Listing 177 Example use of xSemaphoreTakeRecursive().................................................... 249
Listing 178 xTimerChangePeriod() function prototype .......................................................... 252
Listing 179 Example use of xTimerChangePeriod() .............................................................. 254
Listing 180 xTimerChangePeriodFromISR() function prototype ............................................ 255
Listing 181 Example use of xTimerChangePeriodFromISR()................................................ 256
Listing 182 xTimerCreate() function prototype ...................................................................... 257
Listing 183 The timer callback function prototype.................................................................. 258
Listing 184 Definition of the callback function used in the calls to xTimerCreate() in
Listing 185 ..................................................................................................... 259
Listing 185 Example use of xTimerCreate() .......................................................................... 260
Listing 186 xTimerCreateStatic() function prototype.............................................................. 261
Listing 187 The timer callback function prototype.................................................................. 262
Listing 188 Definition of the callback function used in the calls to xTimerCreate() in
Listing 185 ..................................................................................................... 263
Listing 189 Example use of xTimerCreateStatic() ................................................................. 264
Listing 190 xTimerDelete() macro prototype ......................................................................... 265
Listing 191 xTimerGetExpiryTime() function prototype.......................................................... 267
Listing 192 Example use of xTimerGetExpiryTime() ............................................................. 268
Listing 193 pcTimerGetName() function prototype................................................................ 269
Listing 194 xTimerGetPeriod() function prototype ................................................................. 270
Listing 195 Example use of xTimerGetPeriod()..................................................................... 270
Listing 196 xTimerGetTimerDaemonTaskHandle() function prototype .................................. 271
Listing 197 pvTimerGetTimerID() function prototype............................................................. 272
Listing 198 Example use of pvTimerGetTimerID()................................................................. 273
Listing 199 xTimerIsTimerActive() function prototype............................................................ 274
Listing 200 Example use of xTimerIsTimerActive() ............................................................... 275
Listing 201 xTimerPendFunctionCall() function prototype ..................................................... 276
Listing 202 The prototype of a function that can be pended using a call to
xTimerPendFunctionCall() ............................................................................. 276
Listing 203 xTimerPendFunctionCallFromISR() function prototype ....................................... 278
Listing 204 The prototype of a function that can be pended using a call to
xTimerPendFunctionCallFromISR() ............................................................... 278
Listing 205 Example use of xTimerPendFunctionCallFromISR()........................................... 280
Listing 206 xTimerReset() function prototype........................................................................ 281
Listing 207 Example use of xTimerReset()............................................................................ 283
xiv
Listing 208 xTimerResetFromISR() function prototype ..........................................................284
Listing 209 Example use of xTimerResetFromISR()..............................................................285
Listing 210 vTimerSetTimerID() function prototype ...............................................................286
Listing 211 Example use of vTimerSetTimerID() ...................................................................287
Listing 212 xTimerStart() function prototype..........................................................................288
Listing 213 xTimerStartFromISR() macro prototype ..............................................................290
Listing 214 Example use of xTimerStartFromISR() ...............................................................291
Listing 215 xTimerStop() function prototype ..........................................................................292
Listing 216 xTimerStopFromISR() function prototype............................................................294
Listing 217 Example use of xTimerStopFromISR()................................................................295
Listing 218 xEventGroupClearBits() function prototype .........................................................297
Listing 219 Example use of xEventGroupClearBits().............................................................298
Listing 220 xEventGroupClearBitsFromISR() function prototype ...........................................299
Listing 221 Example use of xEventGroupClearBitsFromISR()...............................................301
Listing 222 xEventGroupCreate() function prototype.............................................................302
Listing 223 Example use of xEventGroupCreate().................................................................303
Listing 224 xEventGroupCreateStatic() function prototype ....................................................304
Listing 225 Example use of xEventGroupCreateStatic()........................................................305
Listing 226 vEventGroupDelete() function prototype .............................................................306
Listing 227 xEventGroupGetBits() function prototype............................................................307
Listing 228 xEventGroupGetBitsFromISR() function prototype..............................................308
Listing 229 xEventGroupSetBits() function prototype ............................................................309
Listing 230 Example use of xEventGroupSetBits()................................................................310
Listing 231 xEventGroupSetBitsFromISR() function prototype ..............................................311
Listing 232 Example use of xEventGroupSetBitsFromISR()..................................................313
Listing 233 xEventGroupSync() function prototype................................................................314
Listing 234 Example use of xEventGroupSync() ...................................................................317
Listing 235 xEventGroupWaitBits() function prototype...........................................................318
Listing 236 Example use of xEventGroupWaitBits() ..............................................................320
Listing 237 Declaring an array that will be used as the FreeRTOS heap...............................327
Listing 238 An example configASSERT() definition...............................................................328
Listing 239 The stack overflow hook function prototype ........................................................328
Listing 240 An example of saving and restoring the processors privilege state .....................333
Listing 241 The daemon task startup hook function name and prototype. .............................340
Listing 242 The idle task hook function name and prototype. ................................................340
Listing 243 The malloc() failed hook function name and prototype. .......................................341
Listing 244 The tick hook function name and prototype.........................................................344

实例下载地址

FreeRTOS 官方 参考手册 英文

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警