中文代码内核文件---初始化

//版权声明:
//  本代码为开源代码,作者拥有代码版权,但你可以在任何非商业用途程序中引用,但请标注出处,你
// 也可以对代码进行更改。作者对代码中所包括的错误以及所造成的一切后果将不负任何责任。如果你发
// 现代码中有任何问题或错误,请与我联系。
//  联系方法:QQ 2367051920,Email:nvwa-xt@qq.com
//                                                     -----作者:朱晓辉 2013年11月11日
//==========================================
//---------------初始化----------
//==========================================
//函名    :       初始化变量
//传入参数:       无
//返回值  :       无
//==========================================
无返回值  系统变量_初始化(无参数)
{
  整数8  i , j ;
//------初始化变量,

   系统管理块.运行号=0;                //运行号码;
   系统管理块.新运行号=0;              //新运行号;
   系统管理块.时间片=0;             //时间片
   系统管理块.中断嵌套=0;            //中断嵌套;
   系统管理块.调度锁=0;            //调度锁
   系统管理块.系统运行标志=系统停止 ;  //系统运行标志;
   系统管理块.系统状态=停止模式;
//------初始化运行队列,
 循环(i=0;i<任务总数;i++)            
    {
      运行表[i]=0;
      优先_运行表[i]=0;
     }
//------初始化任务栈区,
   循环(i=0 ; i < 任务总数; i++ )      
    {
     循环(j=0 ; j < 任务栈_长度; j++ )
       { 
         任务栈[i][j] = 0;          
        }
     }
}
//==========================================
//函名    :       初始化任务控制块 
//传入参数:       无
//返回值  :       无
//==========================================
无返回值  系统任务块_初始化( 整数8  任务号 )
{

#如果  任务调度_形式 == 0
     系统任务块[任务号].任务栈顶=任务栈[任务号];     //任务栈顶 取得栈区的首地址  ;
     系统任务块[任务号].任务栈顶 += 10;           // 任务栈顶 取得栈顶的地址;
#如果结束
#如果  任务调度_形式 == 1
     系统任务块[任务号].任务栈顶 += 11;         //
#如果结束

    系统任务块[任务号].任务状态=运行;              //状态寄存器;
    系统任务块[任务号].任务挂起前状态=0;              //状态储存器;
    系统任务块[任务号].任务延时=0;                   //延时器;


    系统任务块[任务号].任务类型 = 普通任务;
}
//==========================================
//函名    :       建立系统任务
//传入参数:       无
//返回值  :       无
//==========================================
无返回值    系统任务_建立(无参数)
{
//第一步:
//   任务函数的入口地址存入任务栈区中;

   任务栈[0][1] = (整数16)任务_0 ;      // 任务 0 的入口地址压入任务栈区中;
   任务栈[0][2] = (整数16)任务_0 >> 8;
//-----------------------------------------------------------------------------------------------
   任务栈[1][1] = (整数16)任务_1 ;      // 任务 1 的入口地址压入任务栈区中;
   任务栈[1][2] = (整数16)任务_1 >> 8;
//第二步 :
//   任务控制块初始化;
     系统任务块_初始化(0);
     系统任务块_初始化(1);
//第三步:
//   启动任务就绪登记 ; 
     运行表[0] = 1 ;      
}
//==========================================
//函名    :       系统总初始化
//传入参数:       无
//返回值  :       无
//==========================================
无返回值   系统总初始化(无参数)
{
//--系统变量初始化
   系统变量_初始化();
//--创建任务
   系统任务_建立();
}
//==========================================
//函名    :       系统空闲任务
//传入参数:       无
//返回值  :       无
//==========================================
无返回值  任务_0()
{
  当(1)
  {
  
  }
}

//=======================================
//--------结束---------
//=======================================

转载于:https://my.oschina.net/896822132/blog/175418

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值