]> begriffs open source - cmsis/blob - CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Migration.txt
RTX5: updated documentation (corrected typos)
[cmsis] / CMSIS / DoxyGen / RTOS2 / src / cmsis_os2_Migration.txt
1 /*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
2 /**
3 \page os2Migration Migration from API v1 to API v2
4
5 To use the API version 2 functions follow the steps described in:
6  - \subpage os2MigrationGuide - Steps to migrate from API version 1 to API version 2
7  - \subpage os2MigrationFunctions - List of function differences
8
9 \if NEVER_ENABLE
10 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
11        Functions 
12 \endif
13 \page os2MigrationFunctions Detailed API Function Differences 
14
15 This section lists the CMSIS-RTOS API v1 and API v2 functions along with the differences in functionality.
16 The list is sorted alphabetically by API v2 function names and is structured the following way:
17
18   - RTOS API v2 function prototype
19   - RTOS API v1 function prototype that is equivalent or provides similar functionality
20   - Brief description of the RTOS v2 function.
21   - Description of the difference.
22
23 The background color indicates:
24   - <div class="new">Green: New functions in API v2 that are not available in API v1 </div>
25   
26   - <div class="mod">Amber: Functions that are modified or replaced in API v2 compared to API v1 </div>
27   
28   - <div class="del">Red: Functions in API v1 that are deprecated in API v2 </div>
29
30
31 \if NEVER_ENABLE
32 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
33        Kernel Information and Control  
34 \endif
35
36 \section mig_kernel Kernel Information and Control
37
38 \div{new}
39 \func{osStatus_t #osKernelGetInfo (osVersion_t* version, char* id_buf, uint32_t id_size)}
40 \none
41 \copybrief{osKernelGetInfo}
42 New function #osKernelGetInfo.
43 \enddiv
44
45 \div{mod} 
46 \func{osKernelState_t #osKernelGetState (void)}
47 \func{int32_t &nbsp; &nbsp; &nbsp; &nbsp; osKernelRunning (void)}
48 \copybrief{osKernelGetState}
49  - The function \b osKernelGetState replaces the RTOS v1 function \b osKernelRunning.
50  - Return type changed to \ref osKernelState_t.
51
52 \enddiv
53
54 \div{new}
55 \func{uint32_t #osKernelGetTickCount (void)}
56 \none
57 \copybrief{osKernelGetTickCount}
58 New function.
59 \enddiv
60
61 \div{new}
62 \func{uint32_t #osKernelGetTickFreq (void)}
63 \none
64 \copybrief{osKernelGetTickFreq}
65  - The function \b osKernelGetTickFreq replaces the RTOS v1 macro \b osKernelTickMicroSec.
66
67 \enddiv
68
69 \div{mod}
70 \func{uint32_t #osKernelGetSysTimerCount (void)}
71 \func{uint32_t osKernelSysTick (void)}
72 \copybrief{osKernelGetSysTimerCount}
73  - The function \b osKernelGetSysTimerCount replaces the RTOS v1 function \b osKernelSysTick.
74
75 \enddiv
76
77 \div{new}
78 \func{uint64_t #osKernelGetSysTimerFreq (void)}
79 \none
80 \copybrief{osKernelGetSysTimerFreq}
81 New function.
82 \enddiv
83
84 \div{mod}
85 \func{osStatus_t #osKernelInitialize (void)}
86 \func{osStatus &nbsp; osKernelInitialize (void)}
87 \copybrief{osKernelInitialize}
88  - Return type changed to \ref osStatus_t.
89
90 \enddiv
91
92 \div{new}
93 \func{int32_t #osKernelLock (void)}
94 \none
95 \copybrief{osKernelLock}
96 New function.
97 \enddiv
98
99 \div{new}
100 \func{int32_t #osKernelUnlock (void)}
101 \none
102 \copybrief{osKernelUnlock}
103 New function.
104 \enddiv
105
106 \div{new}
107 \func{void #osKernelRestoreLock (void)}
108 \none
109 \copybrief{osKernelRestoreLock}
110 New function.
111 \enddiv
112
113 \div{mod}
114 \func{osStatus_t #osKernelStart (void)}
115 \func{osStatus &nbsp; osKernelStart (void)}
116 \copybrief{osKernelStart}
117  - Return type changed to \ref osStatus_t.
118
119 \enddiv
120
121 \div{new}
122 \func{uint32_t #osKernelSuspend (void)}
123 \none
124 \copybrief{osKernelSuspend}
125 New function.
126 \enddiv
127
128 \div{new}
129 \func{void #osKernelResume (uint32_t sleep_time)}
130 \none
131 \copybrief{osKernelResume}
132 New function.
133 \enddiv
134
135
136 \if NEVER_ENABLE
137 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
138 ======  Thread Management  =======
139 \endif 
140
141 \section mig_threadMgmt Thread Management
142
143 \div{new}
144 \func{osStatus_t #osThreadDetach (osThreadId_t thread_id)}
145 \none
146 \copybrief{osThreadDetach}
147 New function.
148 \enddiv
149
150 \div{new}
151 \func{uint32_t #osThreadEnumerate (osThreadId_t *thread_array, uint32_t array_items)}
152 \none
153 \copybrief{osThreadEnumerate}
154 New function.
155 \enddiv
156
157 \div{new}
158 \func{__NO_RETURN void #osThreadExit (void)}
159 \none
160 \copybrief{osThreadExit}
161 New function.
162 \enddiv
163
164 \div{new}
165 \func{uint32_t #osThreadGetCount (osThreadId_t thread_id)}
166 \none
167 \copybrief{osThreadGetCount}
168 New function.
169 \enddiv
170
171 \div{new}
172 \func{const char *#osThreadGetName (osThreadId_t thread_id)}
173 \none
174 \copybrief{osThreadGetName}
175 New function.
176 \enddiv
177
178 \div{mod}
179 \func{osThreadId_t #osThreadGetId (void)}
180 \func{osThreadId &nbsp; osThreadGetId (void)}
181 \copybrief{osThreadGetId}
182  - Return type changed to #osThreadId_t.
183
184 \enddiv
185
186 \div{mod}
187 \func{osPriority_t #osThreadGetPriority (osThreadId_t thread_id)}
188 \func{osPriority &nbsp; osThreadGetPriority (osThreadId thread_id)}
189 \copybrief{osThreadGetPriority}
190  - Return type changed to #osPriority_t. 
191  - Parameter type changed to #osThreadId_t.
192
193 \enddiv
194
195 \div{new}
196 \func{uint32_t #osThreadGetStackSize (osThreadId_t thread_id)}
197 \none
198 \copybrief{osThreadGetStackSize}
199 New function.
200 \enddiv
201
202 \div{new}
203 \func{uint32_t #osThreadGetStackSpace (osThreadId_t thread_id)}
204 \none
205 \copybrief{osThreadGetStackSpace}
206 New function.
207 \enddiv
208
209 \div{new}
210 \func{osThreadState_t #osThreadGetState (osThreadId_t thread_id)}
211 \none
212 \copybrief{osThreadGetState}
213 New function.
214 \enddiv
215
216 \div{new}
217 \func{osStatus_t #osThreadJoin (osThreadId_t thread_id)}
218 \none
219 \copybrief{osThreadJoin}
220 New function.
221 \enddiv
222
223 \div{mod}
224 \func{osThreadId_t #osThreadNew (osThreadFunc_t function, void *argument, const osThreadAttr_t *attr)}
225 \func{osThreadId &nbsp; osThreadCreate (const osThreadDef_t *thread_def, void *argument)} 
226 \copybrief{osThreadNew}
227  - The function \b osThreadNew replaces the RTOS v1 function \b osThreadCreate.
228  - Options are now passed using a \ref osThreadAttr_t struct, replacing the \b osThreadDef macro. 
229  - New function prototype is <kbd>void func (void *arg)</kbd>, before: <kbd>void func (const void *arg)</kbd>.
230
231 \enddiv
232
233 \div{new}
234 \func{osStatus_t #osThreadResume (osThreadId_t thread_id)}
235 \none
236 \copybrief{osThreadResume}
237 New function.
238 \enddiv
239
240 \div{mod}
241 \func{osStatus_t #osThreadSetPriority (osThreadId_t thread_id, osPriority_t priority)}
242 \func{osStatus &nbsp; osThreadSetPriority (osThreadId thread_id, osPriority priority)}
243 \copybrief{osThreadSetPriority}
244  - Return type changed to #osStatus_t. 
245  - Parameter types changed to #osThreadId_t and #osPriority_t.
246
247 \enddiv
248
249 \div{new}
250 \func{osStatus_t #osThreadSuspend (osThreadId_t thread_id)}
251 \none
252 \copybrief{osThreadSuspend}
253 New function.
254 \enddiv
255
256 \div{mod}
257 \func{osStatus_t #osThreadTerminate (osThreadId_t thread_id)}
258 \func{osStatus &nbsp; osThreadTerminate (osThreadId thread_id)}
259 \copybrief{osThreadTerminate}
260  - Return type changed to #osStatus_t. 
261  - Parameter type changed to #osThreadId_t.
262
263 \enddiv
264
265 \div{mod}
266 \func{osStatus_t #osThreadYield (void)}
267 \func{osStatus &nbsp; osThreadYield (void)}
268 \copybrief{osThreadYield}
269  - Return type changed to #osStatus_t.
270
271 \enddiv
272
273
274 \if NEVER_ENABLE
275 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
276 ======  Thread Flags  =======
277 \endif 
278
279 \section mig_threadFlags Thread Flags
280 \details
281 New section to synchronize threads using flags. Thread flags and the more flexible \ref mig_eventFlags are replacing the RTOS v1 <b>Signal Events</b>. Refer to \ref mig_signalEvents for a list of deprecated functions.
282 Refer to \ref CMSIS_RTOS_ThreadFlagsMgmt for details.
283
284 \div{new}
285 \func{uint32_t #osThreadFlagsSet (osThreadId_t thread_id, uint32_t flags)}
286 \none
287 \copybrief{osThreadFlagsSet}
288 New function.
289 \enddiv
290
291 \div{new}
292 \func{uint32_t #osThreadFlagsClear (uint32_t flags)}
293 \none
294 \copybrief{osThreadFlagsClear}
295 New function.
296 \enddiv
297
298 \div{new}
299 \func{uint32_t #osThreadFlagsGet (void)}
300 \none
301 \copybrief{osThreadFlagsGet}
302 New function.
303 \enddiv
304
305 \div{new}
306 \func{uint32_t #osThreadFlagsWait (uint32_t flags, uint32_t options, uint32_t timeout)}
307 \none
308 \copybrief{osThreadFlagsWait}
309 New function.
310 \enddiv
311
312
313 \if NEVER_ENABLE
314 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
315 ======  Event Flags  =======
316 \endif 
317
318 \section mig_eventFlags Event Flags
319 \details
320 New section to synchronize events using flags. Event flags and thread flags are replacing the RTOS v1 <b>Signal Events</b>.
321 All functions listed in the RTOS v1 <b>Signal Events</b> have been deprecated.
322 Refer to \ref mig_signalEvents for a list of deprecated functions.
323 Refer to \ref CMSIS_RTOS_EventFlags for details about the new function.
324
325 \div{new}
326 \func{uint32_t #osEventFlagsClear (osEventFlagsId_t ef_id, uint32_t flags)}
327 \none
328 \copybrief{osEventFlagsClear}
329 New function.
330 \enddiv
331
332 \div{new}
333 \func{const char *#osEventFlagsGetName (osEventFlagsId_t ef_id)}
334 \none
335 \copybrief{osEventFlagsGetName}
336 New function.
337 \enddiv
338
339 \div{new}
340 \func{osStatus_t #osEventFlagsDelete (osEventFlagsId_t ef_id)}
341 \none
342 \copybrief{osEventFlagsDelete}
343 New function.
344 \enddiv
345
346 \div{new}
347 \func{uint32_t #osEventFlagsGet (osEventFlagsId_t ef_id)}
348 \none
349 \copybrief{osEventFlagsGet}
350 New function.
351 \enddiv
352
353 \div{new}
354 \func{osEventFlagsId_t #osEventFlagsNew (const osEventFlagsAttr_t *attr)}
355 \none
356 \copybrief{osEventFlagsNew}
357 New function.
358 \enddiv
359
360 \div{new}
361 \func{uint32_t #osEventFlagsSet (osEventFlagsId_t ef_id, uint32_t flags)}
362 \none
363 \copybrief{osEventFlagsSet}
364 New function.
365 \enddiv
366
367 \div{new}
368 \func{uint32_t #osEventFlagsWait (osEventFlagsId_t ef_id, uint32_t flags, uint32_t options, uint32_t timeout)}
369 \none
370 \copybrief{osEventFlagsWait}
371 New function.
372 \enddiv
373
374
375 \if NEVER_ENABLE
376 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
377 ======  Generic Wait Functions  =======
378 \endif
379
380 \section mig_wait Generic Wait Functions
381 \details
382 Refer to \ref CMSIS_RTOS_Wait for details.
383
384 \div{mod}
385 \func{osStatus_t #osDelay (uint32_t ticks)}
386 \func{osStatus &nbsp; osDelay (uint32_t timeout)}
387 \copybrief{osDelay}
388  - The return type changed to #osStatus_t. 
389  
390 \enddiv
391
392 \div{new}
393 \func{osStatus_t #osDelayUntil (uint32_t ticks)}
394 \none
395 \copybrief{osDelayUntil}
396 New function.
397 \enddiv
398
399 \div{del}
400 \none
401 \func{osEvent osWait (uint32_t millisec)}
402 \n
403 Deprecated.
404 \enddiv
405
406
407
408 \if NEVER_ENABLE
409 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
410 ======  Timer Management  =======
411 \endif
412
413 \section mig_timer Timer Management
414 \details
415 Refer to \ref CMSIS_RTOS_TimerMgmt for details.
416
417 \div{mod}
418 \func{osStatus_t #osTimerDelete (osTimerId_t timer_id)}
419 \func{osStatus &nbsp; osTimerDelete (osTimerId timer_id)}
420 \copybrief{osTimerDelete}
421  - The return type changed to #osStatus_t. 
422  - The parameter type has changed to #osTimerId_t.
423
424 \enddiv
425
426 \div{new}
427 \func{const char *#osTimerGetName (osTimerId_t timer_id)}
428 \none
429 \copybrief{osTimerGetName}
430 New function.
431 \enddiv
432
433 \div{new}
434 \func{uint32_t #osTimerIsRunning (osTimerId_t timer_id)}
435 \none
436 \copybrief{osTimerIsRunning}
437 New function.
438 \enddiv
439
440 \div{mod}
441 \func{osTimerId_t #osTimerNew (osTimerFunc_t func, osTimerType_t type, void *argument, const osTimerAttr_t *attr)}
442 \func{osTimerId &nbsp; osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument)}
443 \copybrief{osTimerNew}
444  - The function \b osTimerNew replaces the RTOS v1 function \b osTimerCreate.
445  - The return type changed to #osTimerId_t. 
446  - The parameter list and types have changed.
447
448 \enddiv
449
450 \div{mod}
451 \func{osStatus_t #osTimerStart (osTimerId_t timer_id, uint32_t ticks)}
452 \func{osStatus &nbsp; osTimerStart (osTimerId timer_id, uint32_t timeout)}
453 \copybrief{osTimerStart}
454  - The return type changed to #osStatus_t. 
455  - The first parameter type has changed to #osTimerId_t.
456
457 \enddiv
458
459 \div{mod}
460 \func{osStatus_t #osTimerStop (osTimerId_t timer_id)}
461 \func{osStatus &nbsp; osTimerStop (osTimerId timer_id)}
462 \copybrief{osTimerStop}
463  - The return type changed to #osStatus_t. 
464  - The parameter type has changed to #osTimerId_t.
465
466 \enddiv
467
468
469 \if NEVER_ENABLE
470 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
471 ======  Mutexes  =======
472 \endif
473
474 \section mig_mutex Mutexes
475 Refer to \ref CMSIS_RTOS_MutexMgmt for details.
476
477 \div{mod}
478 \func{osStatus_t #osMutexAcquire (osMutexId_t mutex_id, uint32_t timeout)}
479 \func{osStatus &nbsp; osMutexWait (osMutexId mutex_id, uint32_t timeout)}
480 \copybrief{osMutexAcquire}
481  - The function \b osMutexAcquire replaces the RTOS v1 function \b osMutexWait.
482  - Return type changed to \ref osStatus_t. 
483  - First parameter type changed to \ref osMutexId_t.
484
485 \enddiv
486
487 \div{mod}
488 \func{osStatus_t #osMutexDelete (osMutexId_t mutex_id)}
489 \func{osStatus &nbsp; osMutexDelete (osMutexId mutex_id)}
490 \copybrief{osMutexDelete}
491  - The return type changed to \ref osStatus_t. 
492  - The parameter type changed to \ref osMutexId_t.
493
494 \enddiv
495
496 \div{new}
497 \func{const char *#osMutexGetName (osMutexId_t mutex_id)}
498 \none
499 \copybrief{osMutexGetName}
500 New function.
501 \enddiv
502
503 \div{new}
504 \func{osThreadId_t #osMutexGetOwner (osMutexId_t mutex_id)}
505 \none
506 \copybrief{osMutexGetOwner}
507 New function.
508 \enddiv
509
510 \div{mod}
511 \func{osMutexId_t #osMutexNew (const osMutexAttr_t *attr)}
512 \func{osMutexId &nbsp; osMutexCreate (const osMutexDef_t *mutex_def)}
513 \copybrief{osMutexNew}
514  - The function \b osMutexNew replaces the RTOS v1 function \b osMutexCreate.
515  - The return type changed to \ref osMutexId_t. 
516  - The parameter type changed to \ref osMutexAttr_t.
517
518 \enddiv
519
520 \div{mod}
521 \func{osStatus_t #osMutexRelease (osMutexId_t mutex_id)}
522 \func{osStatus &nbsp; osMutexRelease (osMutexId mutex_id)}
523 \copybrief{osMutexRelease}
524  - The return type changed to \ref osStatus_t. 
525  - The parameter type changed to \ref osMutexId_t.
526
527 \enddiv
528
529
530 \if NEVER_ENABLE
531 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
532 ======  SEMAPHORES  =======
533 \endif
534
535 \section mig_sem Semaphores
536 Refer to \ref CMSIS_RTOS_SemaphoreMgmt for details.
537
538 \div{new}
539 \func{osStatus_t #osSemaphoreAcquire (osSemaphoreId_t semaphore_id, uint32_t timeout)}
540 \none
541 \copybrief{osSemaphoreAcquire}
542 New function. Replaces \c osSemaphoreWait.
543 \enddiv
544
545 \div{mod}
546 \func{osStatus_t #osSemaphoreDelete (osSemaphoreId_t semaphore_id)}
547 \func{osStatus &nbsp; osSemaphoreDelete (osSemaphoreId semaphore_id)}
548 \copybrief{osSemaphoreDelete}
549  - The return type changed to #osStatus_t. 
550  - The parameter type has changed to #osSemaphoreId_t.
551
552 \enddiv
553
554 \div{new}
555 \func{uint32_t #osSemaphoreGetCount (osSemaphoreId_t semaphore_id)}
556 \none
557 \copybrief{osSemaphoreGetCount}
558 New function.
559 \enddiv
560
561 \div{new}
562 \func{const char *#osSemaphoreGetName (osSemaphoreId_t semaphore_id)}
563 \none
564 \copybrief{osSemaphoreGetName}
565 New function.
566 \enddiv
567
568 \div{mod}
569 \func{osSemaphoreId_t #osSemaphoreNew (uint32_t max_count, uint32_t initial_count, const osSemaphoreAttr_t *attr)}
570 \func{osSemaphoreId &nbsp; osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count)}
571 \copybrief{osSemaphoreNew}
572  - The function \b osSemaphoreNew replaces the RTOS v1 function \b osSemaphoreCreate.
573  - The return type changed to #osSemaphoreId_t. 
574  - The parameter list and types have changed.
575
576 \enddiv
577
578 \div{mod}
579 \func{osStatus_t #osSemaphoreRelease (osSemaphoreId_t semaphore_id)}
580 \func{osStatus &nbsp; osSemaphoreRelease (osSemaphoreId semaphore_id)}
581 \copybrief{osSemaphoreRelease}
582  - The return type changed to #osStatus_t. 
583  - The parameter type has changed to #osSemaphoreId_t.
584
585 \enddiv
586
587 \div{del}
588 \none
589 \func{int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t timeout)}
590 \n
591 Deprecated. Replaced by #osSemaphoreAcquire.
592 \enddiv
593
594
595 \if NEVER_ENABLE
596 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
597 ======  Memory Pool  =======
598 \endif
599
600 \section mig_memPool Memory Pool
601
602 \div{mod}
603 \func{void * #osMemoryPoolAlloc (osMemoryPoolId_t mp_id, uint32_t timeout)}
604 \func{void * osPoolAlloc &nbsp;(osPoolId pool_id)} 
605 \copybrief{osMemoryPoolAlloc}
606  - The function \b osMemoryPoolAlloc replaces both RTOS v1 functions \b osPoolAlloc.
607  - The parameter list and types changed.
608
609 \enddiv
610
611 \div{new}
612 \func{osStatus_t #osMemoryPoolDelete (osMemoryPoolId_t mp_id)}
613 \none
614 \copybrief{osMemoryPoolDelete}
615 New function.
616 \enddiv
617
618 \div{mod}
619 \func{osStatus_t #osMemoryPoolFree (osMemoryPoolId_t mp_id, void * block)}
620 \func{osStatus &nbsp; osPoolFree (osPoolId pool_id, void * block)} 
621 \copybrief{osMemoryPoolFree}
622  - The function \b osMemoryPoolFree replaces the RTOS v1 function \b osPoolFree.
623  - The first parameter type \b osMemoryPoolId_t replaces the ROTS v1 type \b osPoolId.
624
625 \enddiv
626
627 \div{new}
628 \func{uint32_t #osMemoryPoolGetBlockSize (osMemoryPoolId_t mp_id)}
629 \none
630 \copybrief{osMemoryPoolGetBlockSize}
631 New function.
632 \enddiv
633
634 \div{new}
635 \func{uint32_t #osMemoryPoolGetCapacity (osMemoryPoolId_t mp_id)}
636 \none
637 \copybrief{osMemoryPoolGetCapacity}
638 New function.
639 \enddiv
640
641 \div{new}
642 \func{uint32_t #osMemoryPoolGetCount (osMemoryPoolId_t mp_id)}
643 \none
644 \copybrief{osMemoryPoolGetCount}
645 New function.
646 \enddiv
647
648 \div{new}
649 \func{const char *#osMemoryPoolGetName (osMemoryPoolId_t mp_id)}
650 \none
651 \copybrief{osMemoryPoolGetName}
652 New function.
653 \enddiv
654
655 \div{new}
656 \func{uint32_t #osMemoryPoolGetSpace (osMemoryPoolId_t mp_id)}
657 \none
658 \copybrief{osMemoryPoolGetSpace}
659 New function.
660 \enddiv
661
662 \div{mod}
663 \func{osMemoryPoolId_t #osMemoryPoolNew (uint32_t block_count, uint32_t block_size, const osMemoryPoolAttr_t *attr)}
664 \func{osPoolId &nbsp; &nbsp; &nbsp; &nbsp; osPoolCreate (const osPoolDef_t * pool_def)}
665 \copybrief{osMemoryPoolGetSpace}
666  - The function \b osMemoryPoolNew replaces the RTOS v1 function \b osPoolCreate. 
667  - The return type changed to #osMemoryPoolId_t.
668  - Parameter list and parameter types have changed.
669
670 \enddiv
671
672
673 \if NEVER_ENABLE
674 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
675 ======  Message Queue  =======
676 \endif
677
678 \section mig_msgQueue Message Queue
679 In general, messages are now using fixed size memory instead of being 32-bit values. Refer to \ref CMSIS_RTOS_Message for
680 details. 
681
682 \div{new}
683 \func{osStatus_t #osMessageQueueDelete (osMessageQueueId_t mq_id)}
684 \none
685 \copybrief{osMessageQueueDelete}
686 New function.
687 \enddiv
688
689 \div{mod}
690 \func{osStatus_t #osMessageQueueGet (osMessageQueueId_t mq_id, void *msg_ptr, uint8_t *msg_prio, uint32_t timeout)}
691 \func{osEvent &nbsp;&nbsp; osMessageGet (osMessageQId queue_id, uint32_t timeout)}
692 \copybrief{osMessageQueueGet}
693  - The function \b osMessageQueueGet replaces the RTOS v1 function \b osMessageGet.
694  - The return type changed to #osStatus_t. 
695  - The parameter list and parameter types have changed. 
696
697 \enddiv
698
699 \div{new}
700 \func{uint32_t #osMessageQueueGetCapacity (osMessageQueueId_t mq_id)}
701 \none
702 \copybrief{osMessageQueueGetCapacity}
703 New function.
704 \enddiv
705
706 \div{new}
707 \func{uint32_t #osMessageQueueGetCount (osMessageQueueId_t mq_id)}
708 \none
709 \copybrief{osMessageQueueGetCount}
710 New function.
711 \enddiv
712
713 \div{new}
714 \func{uint32_t #osMessageQueueGetMsgSize (osMessageQueueId_t mq_id)}
715 \none
716 \copybrief{osMessageQueueGetMsgSize}
717 New function.
718 \enddiv
719
720 \div{new}
721 \func{const char *#osMessageQueueGetName (osMessageQueueId_t mq_id)}
722 \none
723 \copybrief{osMessageQueueGetName}
724 New function.
725 \enddiv
726
727 \div{new}
728 \func{uint32_t #osMessageQueueGetSpace (osMessageQueueId_t mq_id)}
729 \none
730 \copybrief{osMessageQueueGetSpace}
731 New function.
732 \enddiv
733
734 \div{mod}
735 \func{osMessageQueueId_t #osMessageQueueNew (uint32_t msg_count, uint32_t msg_size, const osMessageQueueAttr_t *attr)}
736 \func{osMessageQId &nbsp; &nbsp; &nbsp; osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id)}
737 \copybrief{osMessageQueueNew}
738  - The function \b osMessageQueueNew replaces the RTOS v1 function \b osMessageCreate.
739  - The return type changed to #osMessageQueueId_t. 
740  - The parameter list and parameter types have changed. 
741
742 \enddiv
743
744 \div{mod}
745 \func{osStatus_t #osMessageQueuePut (osMessageQueueId_t mq_id, const void *msg_ptr, uint8_t msg_prio, uint32_t timeout)}
746 \func{osStatus &nbsp; osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t timeout)}
747 \copybrief{osMessageQueuePut}
748  - The function \b osMessageQueuePut replaces the RTOS v1 function \b osMessagePut.
749  - The return type changed to #osStatus_t. 
750  - The parameter list and parameter types have changed. 
751
752 \enddiv
753
754 \div{new}
755 \func{osStatus_t #osMessageQueueReset (osMessageQueueId_t mq_id)}
756 \none
757 \copybrief{osMessageQueueReset}
758 New function.
759 \enddiv
760
761
762 \if NEVER_ENABLE
763 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
764 ======  Mail Queue  =======
765 \endif
766
767 \section mig_mailQueue Mail Queue
768 The <b>Mail Queue</b> RTOS v1 functions have been deprecated.
769 Use the functionality of the \ref CMSIS_RTOS_Message instead. 
770 Differences are listed under \ref mig_msgQueue.
771
772 \div{del}
773 \none
774 \func{void * osMailAlloc (osMailQId queue_id, uint32_t timeout)}
775 \n
776 Deprecated.
777 \enddiv
778
779 \div{del}
780 \none
781 \func{void * osMailCAlloc (osMailQId queue_id, uint32_t timeout)}
782 \n
783 Deprecated.
784 \enddiv
785
786 \div{del}
787 \none
788 \func{osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id)}
789 \n
790 Deprecated.
791 \enddiv
792
793 \div{del}
794 \none
795 \func{osStatus osMailFree (osMailQId queue_id, void *mail)}
796 \n
797 Deprecated.
798 \enddiv
799
800 \div{del}
801 \none
802 \func{osEvent osMailGet (osMailQId queue_id, uint32_t timeout)}
803 \n
804 Deprecated.
805 \enddiv
806
807 \div{del}
808 \none
809 \func{osStatus osMailPut (osMailQId queue_id, void *mail)}
810 \n
811 Deprecated.
812 \enddiv
813
814
815 \if NEVER_ENABLE
816 =======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====
817 ======  Signal Events  =======
818 \endif
819
820 \section mig_signalEvents Signal Events
821 \details
822 The section RTOS v1 <b>Signal Events</b> has been deprecated. Use the functions listed under \ref mig_threadFlags instead.
823
824 \div{del}
825 \none
826 \func{int32_t osSignalClear (osThreadId thread_id, int32_t signals)}
827 \n
828 Deprecated.
829 \enddiv
830
831 \div{del}
832 \none
833 \func{int32_t osSignalSet (osThreadId thread_id, int32_t signals)}
834 \n
835 Deprecated.
836 \enddiv
837
838 \div{del}
839 \none
840 \func{osEvent osSignalWait (int32_t signals, uint32_t timeout)}
841 \n
842 Deprecated.
843 \enddiv
844 */