|
发表于 2014-11-28 20:47:04
|
显示全部楼层
奇怪呢 刚才试了下 就出错了
typedef struct
{
uint8_t type; //
uint8_t param;
}CMD_t;
CMD_t Cmd1,*pCmd1=&Cmd1;
void Task1(void *pdata)
{
while(1)
{
printf("\r\n task1");
pCmd1->param++;
pCmd1->type++;
OSMboxPost(Mbox_Cmd, (void *)(pCmd1));
OSTimeDlyHMSM(0,0,0,20);
}
}
void Task2(void *pdata)
{
while(1)
{
printf("\r\n task2");
pCmd1=(CMD_t *)OSMboxPend(Mbox_Cmd, 1, &err);
printf("\r\n pCmd1->type = %x",pCmd1->type);
printf("\r\n pCmd1->param = %x",pCmd1->param);
OSTimeDlyHMSM(0,0,0,20);
}
}
运行结果过:
task1
task1
task2
pCmd1->type = 1
pCmd1->param = 1
task1
task2
pCmd1->type = 2
pCmd1->param = 2
task1
task2
pCmd1->type = 3
pCmd1->param = 3
task1
task2
pCmd1->type = 4
pCmd1->param = 4
task1
task2
pCmd1->type = 58
pCmd1->param = 37
task1 然后就卡死了。 |
|