- 在建立工程的时候,启动任务StartTask() 启动了任务MyTask(),也建立了消息队列,然后发送消息队列,发送完自己删除了自己,在接收方一直能接受到数据???为何???
因为我们的消息队列未清空,消息队列里面一直有数据呢,当然在执行MyTask 的任务的时候, MyTask 里面有这句等待消息队列的语句ss=OSQPend(Str_Q,0,&err); //请求消息队列,如果在任务MyTask 里面我们清除消息队列嫩?啊是不是就没有数据接收了???果不其然,,,清空后 啥也收不到。。。
StartTask()启动任务程序:
s100="the value of ostime is from 100 to 500 now!!";
//PC_DispChar(0x80, 0, ShowTable[1], 0);
OSQPostFront(Str_Q,s100); //发送
mytask的程序:
OSQFlush(Str_Q); //清空消息队列 下面纠结接收不到了 哈哈
ss=OSQPend(Str_Q,0,&err); //请求消息队列 请求也没有鸟用 ,啥也没有
PC_DispStr(3,++y,ss,DISP_FGND_RED+DISP_BGND_LIGHT_GRAY); //easy arm 软件值接收一次数据
结果:用ZLG 的EASY ARM 显示 ,啥也不显示。
时间: 2024-10-06 21:10:34