This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

CMSIS RTOS2 Queue Message with Static Memory Block

Hi All,

I am porting the project from CMSIS RTOS1 to RTOS2.

I am little confused on assigning the static memory for RTOS2 queue.

Below is the RTOS1 Method:

m_Keil_Msg_Def.pool = &m_Keil_Msg[i][0];                                          (uint32_t m_Keil_Msg [50] [4400]) from this pool one of the block is assigned
m_Keil_Msg_Def.queue_sz = m_Number_Of_Packets + 4;                  (m_Number_Of_Packets+4 will be less than or equal to 4400)
m_Keil_Msg_ID = osMessageCreate(&m_Keil_Msg_Def, NULL);              

Now how can I convert it to RTOS 2

I tried below one but it failed :

m_Keil_Msg_Attr.mq_mem = &m_Keil_Msg[i][0];
m_Keil_Msg_Attr.mq_size = (m_Number_Of_Packets + 4) * sizeof(uint32_t);
m_Keil_Msg_ID = osMessageQueueNew (m_Number_Of_Packets + 4 , sizeof(uint32_t), &m_Keil_Msg_Attr);