From 40e04e3772726829d66c12e69f24b03920d79c67 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Wed, 25 Jan 2017 22:24:18 +0100 Subject: o Moving tinyprintf and stm libraries under thirdparty. --- .../group___c_m_s_i_s___r_t_o_s___message.html | 380 +++++++++++++++++++++ 1 file changed, 380 insertions(+) create mode 100644 thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Libraries/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html (limited to 'thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Libraries/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html') diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Libraries/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Libraries/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html new file mode 100644 index 0000000..7e383fa --- /dev/null +++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Libraries/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html @@ -0,0 +1,380 @@ + + + + +Message Queue Management + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + +
+
CMSIS-RTOS +  Version 1.00 +
+
CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
+
+
+ +
+ +
+ + + +
+
+ +
+
+
+ +
+
+ +
+
Message Queue Management
+
+
+ +

Control, send, receive, or wait for messages. +More...

+ + + + + + + + + + + + + + + +

+Defines

#define osFeature_MessageQ   1
 Message Queues: 1=available, 0=not available.
#define osMessageQDef(name, queue_sz, type)
 Create a Message Queue Definition.
#define osMessageQ(name)   &os_messageQ_def_##name
 Access a Message Queue Definition.

+Functions

osMessageQId osMessageCreate (osMessageQDef_t *queue_def, osThreadId thread_id)
 Create and Initialize a Message Queue.
osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t millisec)
 Put a Message to a Queue.
osEvent osMessageGet (osMessageQId queue_id, uint32_t millisec)
 Get a Message or Wait for a Message from a Queue.
+

Description

+

Message Queue Management functions allow to control, send, receive, or wait for messages. A message can be an integer or pointer value that is send to a thread or interrupt service routine.

+
+MessageQueue.png +
+CMSIS-RTOS Message Queue
+

Define Documentation

+ +
+
+ + + + +
#define osFeature_MessageQ   1
+
+
+

A CMSIS-RTOS implementation may support message queues. When the value osFeature_MailQ is 1 message queues are supported. When the value osFeature_MailQ is 0 no message queues are supported.

+ +
+
+ +
+
+ + + + + + + + +
#define osMessageQ( name)   &os_messageQ_def_##name
+
+
+

Access to the message queue definition for the function osMessageCreate.

+
Parameters:
+ + +
namename of the queue
+
+
+
Note:
CAN BE CHANGED: The parameter to osMessageQ shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
#define osMessageQDef( name,
 queue_sz,
 type 
)
+
+
+

Define the attributes of a message queue created by the function osMessageCreate using osMessageQ.

+
Parameters:
+ + + + +
namename of the queue.
queue_szmaximum number of messages in the queue.
typedata type of a single message element (for debugger).
+
+
+
Note:
CAN BE CHANGED: The parameter to osMessageQDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
osMessageQId osMessageCreate (osMessageQDef_tqueue_def,
osThreadId thread_id 
)
+
+
+
Parameters:
+ + + +
[in]queue_defqueue definition referenced with osMessageQ.
[in]thread_idthread ID (obtained by osThreadCreate or osThreadGetId) or NULL.
+
+
+
Returns:
message queue ID for reference by other functions or NULL in case of error.
+
Note:
MUST REMAIN UNCHANGED: osMessageCreate shall be consistent in every CMSIS-RTOS.
+

Create and initialize a message queue.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
osEvent osMessageGet (osMessageQId queue_id,
uint32_t millisec 
)
+
+
+
Parameters:
+ + + +
[in]queue_idmessage queue ID obtained with osMessageCreate.
[in]millisectimeout value or 0 in case of no time-out.
+
+
+
Returns:
event information that includes status code.
+
Note:
MUST REMAIN UNCHANGED: osMessageGet shall be consistent in every CMSIS-RTOS.
+

Suspend the execution of the current RUNNING thread until a message arrives. When a message is already in the queue, the function returns instantly with the message information. When millisec is 0, the function returns instantly with status osOK. Otherwise the thread is put into the state WAITING. When millisec is set to osWaitForever the function will wait for an infinite time until a message arrives.

+
Note:
The parameter millisec must be 0 for using this function in an ISR.
+

Status and Error Codes
+

+
    +
  • osOK: no message is available in the queue and no timeout was specified.
  • +
  • osEventTimeout: no message has arrived during the given timeout period.
  • +
  • osEventMessage: message received, value.p contains the pointer to message.
  • +
  • osErrorParameter: a parameter is invalid or outside of a permitted range.
  • +
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
osStatus osMessagePut (osMessageQId queue_id,
uint32_t info,
uint32_t millisec 
)
+
+
+
Parameters:
+ + + + +
[in]queue_idmessage queue ID obtained with osMessageCreate.
[in]infomessage information.
[in]millisectimeout value or 0 in case of no time-out.
+
+
+
Returns:
status code that indicates the execution status of the function.
+
Note:
MUST REMAIN UNCHANGED: osMessagePut shall be consistent in every CMSIS-RTOS.
+

Put the message info in a message queue specified by queue_id. When the message queue is full, the system retry for a specified time with millisec. In this case, the tread is put into the state WAITING. When millisec is set to osWaitForever, the function will wait for an infinite time until a message queue slot becomes available.

+
Note:
The parameter millisec must be 0 for using this function in an ISR.
+

Status and Error Codes
+

+
    +
  • osOK: the message is put into the queue.
  • +
  • osErrorResource: no memory in the queue was available.
  • +
  • osErrorTimeoutResource: no memory in the queue was available during the given time limit.
  • +
  • osErrorParameter: a parameter is invalid or outside of a permitted range.
  • +
+ +
+
+
+
+ + + + + -- cgit v1.2.3