Other Parts Discussed in Thread: CC1310
Hi,
I've identified a problem in my software system. At a moment in time, the software doesn't come back from Mailbox_post call.
Here is a preview of my code:
task_key = Task_disable();
mailBoxMsgAvailable = FALSE;
for (i = 0u; i <= size; i++)
{
idx = i % MAILBOX_MSG_LENGTH;
mailBoxMessage[idx] = report[i];
mailBoxMsgAvailable = TRUE;
if (idx == (MAILBOX_MSG_LENGTH - 1))
{
Mailbox_post(rflevel2mailbox, mailBoxMessage, BIOS_NO_WAIT);
mailBoxMsgAvailable = FALSE;
memset(mailBoxMessage,0,MAILBOX_MSG_LENGTH);
}
}
if (mailBoxMsgAvailable == TRUE)
{
Mailbox_post(rflevel2mailbox, mailBoxMessage, BIOS_NO_WAIT);
}
Task_restore(task_key);
The mailbox is working fine for multiple times, but after awhile the software is not coming back from the the last Mailbox_post call.
I've tried to debug what's inside the function but I could see only assembly code so is nearly impossible to see what is going on.
I've tried to change the application code several times but the software is still hangs sometimes sooner sometimes later.
I've also tried to enable debugging feature like task load, task profiling but the code is becoming too large and it doesn't fit in 128k.
If you have any ideas what could cause this problem please let me know.
Regards,
Milorad


