打印

新手请教关于UC/OS邮箱的问题(恳请大家帮忙)

[复制链接]
1989|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chen1018|  楼主 | 2007-7-6 12:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好,本人由于工作需要刚开始学UC/OS,C语言的基础都不是很扎实。今天碰到一个邮箱的问题。望大家帮忙解决。为什么当第一个任务运行完后不能够把邮箱消息传到第2个任务当中去呢,本人刚开始学,任务又比较急,所以大家别见笑。多多指导一下,尤其在如何学习的方面。谢谢了。程序如下:
void main (void) 
{
    OSInit();    
    InitTimer2();
    OSTaskCreate(tongxin, (void *)0, &tongxin_Stk[0],6);     
    OSStart();
}
void tongxin(void *lcnpdata) reentrant
{
 int h;
 uchar *msg;
 uchar xdata trdata[10]={'M','C','S','-','5','1',0x0d,0x0a,0x00};
 uchar k;
 uint j;
 int t=0;
 lcnpdata=lcnpdata;
 TMOD=0x21                     
 TL1=0xff;TH1=0xff;      
 S0CON=0xd8;PCON=0x80;               
 TR1=1;//EA=1;ES0=1;
 TI=1;
 printf("display is ok");
 KeySem=OSMboxCreate(0);
 OSTaskCreate(second, (void *)0, &second_Stk[0],7);
 if (KeySem==NULL) 
   {
    printf("create is fail");
   }
   else
   {
    printf("create is succeed");
    OSTaskChangePrio(0,3);
   }
 for(h=0;h<=3;h++)
  {
   k=0;
   while(trdata[k]!=0x00)
       {
        S0BUF=trdata[k];
         while(TI==0);
         TI=0;
         k++;
         for(j=0;j<1450;j++); 
       }
   }  
 OSMboxPost(KeySem,msg);
}
void second(void *lcnpdata)   reentrant
{
 UCHAR *lcnerr;
 uchar xdata tdata[10]={'g','o','o','d','5','1',0x0d,0x0a,0x00};
 uchar k;
 int j;
 void  *msg;
 lcnpdata=lcnpdata;
   TMOD=0x21;                                                             TL1=0xff;TH1=0xff;                  
 S0CON=0xd8;PCON=0x80;               
  TR1=1;
 while(1)
 { 
  msg=OSMboxPend(KeySem,100,&lcnerr);
k=0;                                                                    while(tdata[k]!=0x00)
      {
       S0BUF=tdata[k];
       while(TI==0);
       TI=0;
        k++;
        for(j=0;j<1450;j++); 
      }
  }
}    

相关帖子

沙发
chen1018|  楼主 | 2007-7-6 12:46 | 只看该作者

修改一下

OSTaskChangePrio(0,3);
这句话是多余的 不要 

使用特权

评论回复
板凳
chen1018|  楼主 | 2007-7-6 21:54 | 只看该作者

求求高手帮忙啊

使用特权

评论回复
地板
sodwell| | 2007-7-6 23:34 | 只看该作者

re

你2个任务的堆栈大小为0?是往上的,还是往下的?创建油箱直接在建立任务之前就创建 不用在任务里面建 你在仔细看看  

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

14

帖子

0

粉丝