UCOS Problem

I could use some help. It appears to me mailboxes are not doing what they should.

char Send_Status_Message[20]; …

printf("Send_Status_Message: %u
", Send_Status_Message[0]);
printf("Send_Status_Message: %u
", Send_Status_Message[1]);

printf("Send_Status_Message: %u
", Send_Status_Message[19]);

OSMboxPost(SEND_STATUS_MAILBOX,(void *)&Send_Status_Message);

the printf’s show that I have the expected values the array before it is sent to another task.

Immediately in the called task I do another series of printf’s to see if the values came through alright…not so

void *msg;
char *message;

msg = OSMboxPend(SEND_STATUS_MAILBOX, 0 , &err);

// convert void* returned from mailbox to a char pointer
message = (char *)msg;

printf(" *(message+ 0): %u
“, *(message+0));
printf(” *(message+ 1): %u
“, *(message+1));

printf(” *(message+ 19): %u
", *(message+19));

the first round of printf’s yields…

Send_Status_Message: 2
Send_Status_Message: 100
Send_Status_Message: 13
Send_Status_Message: 172
Send_Status_Message: 140
Send_Status_Message: 42
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0
Send_Status_Message: 0

to which I get…
*(message+ 0): 128
*(message+ 1): 66
*(message+ 2): 250
*(message+ 3): 234
*(message+ 4): 239
*(message+ 5): 9
*(message+ 6): 0
*(message+ 7): 2
*(message+ 8): 0
*(message+ 9): 247
*(message+ 10): 209
*(message+ 11): 0
*(message+ 12): 7
*(message+ 13): 9
*(message+ 14): 0
*(message+ 15): 98
*(message+ 16): 182
*(message+ 17): 13
*(message+ 18): 0
*(message+ 19): 12

Any help would be appreciated. I have other tasks using the same interface to this called task and they behave as expected(with almost Identical code).

Steve

Well I fixed the problem, although it should not be a problem. By changing the variable I was sending in the mailbox to static.