Appearance
MessageQueue
Message Queue.
Types
Name | |
---|---|
struct | osMessageQueueAttr_t Attributes structure for message queue. |
Functions Overview
Name | |
---|---|
osMessageQueueId_t | osMessageQueueNew(uint32_t msg_count, uint32_t msg_size, const osMessageQueueAttr_t * attr) Create and Initialize a Message Queue object. |
const char * | osMessageQueueGetName(osMessageQueueId_t mq_id) Get name of a Message Queue object. |
osStatus_t | osMessageQueuePut(osMessageQueueId_t mq_id, const void * msg_ptr, uint8_t msg_prio, uint32_t timeout) Put a Message into a Queue or timeout if Queue is full. |
osStatus_t | osMessageQueueGet(osMessageQueueId_t mq_id, void * msg_ptr, uint8_t * msg_prio, uint32_t timeout) Get a Message from a Queue or timeout if Queue is empty. |
uint32_t | osMessageQueueGetCapacity(osMessageQueueId_t mq_id) Get maximum number of messages in a Message Queue. |
uint32_t | osMessageQueueGetMsgSize(osMessageQueueId_t mq_id) Get maximum message size in a Message Queue. |
uint32_t | osMessageQueueGetCount(osMessageQueueId_t mq_id) Get number of queued messages in a Message Queue. |
uint32_t | osMessageQueueGetSpace(osMessageQueueId_t mq_id) Get number of available slots for messages in a Message Queue. |
osStatus_t | osMessageQueueReset(osMessageQueueId_t mq_id) Reset a Message Queue to initial empty state. |
osStatus_t | osMessageQueueDelete(osMessageQueueId_t mq_id) Delete a Message Queue object. |
Function Details
function osMessageQueueNew
cpp
osMessageQueueId_t osMessageQueueNew(
uint32_t msg_count,
uint32_t msg_size,
const osMessageQueueAttr_t * attr
)
Create and Initialize a Message Queue object.
Parameters:
- msg_count maximum number of messages in queue.
- msg_size maximum message size in bytes.
- attr message queue attributes; NULL: default values.
Return: message queue ID for reference by other functions or NULL in case of error.
function osMessageQueueGetName
cpp
const char * osMessageQueueGetName(
osMessageQueueId_t mq_id
)
Get name of a Message Queue object.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: name as null-terminated string.
function osMessageQueuePut
cpp
osStatus_t osMessageQueuePut(
osMessageQueueId_t mq_id,
const void * msg_ptr,
uint8_t msg_prio,
uint32_t timeout
)
Put a Message into a Queue or timeout if Queue is full.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
- msg_ptr pointer to buffer with message to put into a queue.
- msg_prio message priority.
- timeout CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
Return: status code that indicates the execution status of the function.
function osMessageQueueGet
cpp
osStatus_t osMessageQueueGet(
osMessageQueueId_t mq_id,
void * msg_ptr,
uint8_t * msg_prio,
uint32_t timeout
)
Get a Message from a Queue or timeout if Queue is empty.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
- msg_ptr pointer to buffer for message to get from a queue.
- msg_prio pointer to buffer for message priority or NULL.
- timeout CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
Return: status code that indicates the execution status of the function.
function osMessageQueueGetCapacity
cpp
uint32_t osMessageQueueGetCapacity(
osMessageQueueId_t mq_id
)
Get maximum number of messages in a Message Queue.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: maximum number of messages.
function osMessageQueueGetMsgSize
cpp
uint32_t osMessageQueueGetMsgSize(
osMessageQueueId_t mq_id
)
Get maximum message size in a Message Queue.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: maximum message size in bytes.
function osMessageQueueGetCount
cpp
uint32_t osMessageQueueGetCount(
osMessageQueueId_t mq_id
)
Get number of queued messages in a Message Queue.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: number of queued messages.
function osMessageQueueGetSpace
cpp
uint32_t osMessageQueueGetSpace(
osMessageQueueId_t mq_id
)
Get number of available slots for messages in a Message Queue.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: number of available slots for messages.
function osMessageQueueReset
cpp
osStatus_t osMessageQueueReset(
osMessageQueueId_t mq_id
)
Reset a Message Queue to initial empty state.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: status code that indicates the execution status of the function.
function osMessageQueueDelete
cpp
osStatus_t osMessageQueueDelete(
osMessageQueueId_t mq_id
)
Delete a Message Queue object.
Parameters:
- mq_id message queue ID obtained by osMessageQueueNew.
Return: status code that indicates the execution status of the function.