<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 程序的多任務(wù)和資源復用舉例

程序的多任務(wù)和資源復用舉例

作者: 時(shí)間:2012-07-04 來(lái)源:網(wǎng)絡(luò ) 收藏


/*---------------------------------------------------------------------------*/
/*任務(wù)一*/
/**********************************************
一個(gè)部分輸出1HZ的方波,2S后停止。
**********************************************/
void Task1_MainLoop()
{
  switch(mTask1Id){
   case 0:  if(fKey1){
           fKey1=0;          /*接收該鍵值*/
           mTask1_1HzReg=500/2;    /*1hz時(shí)間寄存器,500ms,以2MS為單位*/
           mTask1_2SReg=2000/2;    /*2S時(shí)間寄存器,500ms,以2MS為單位*/
           oTask1=0;
           mTask1Id=1;
        }
        break;
   case 1:  if(fSYS_2ms){
          mTask1_1HzReg--;
          if(mTask1_1HzReg==0){
            oTask1=~oTask1;
            mTask1_1HzReg=500/2;   /*1hz時(shí)間寄存器,500ms,以2MS為單位*/
          }

          mTask1_2SReg--;
          if(mTask1_2SReg==0){
            oTask1=1;        /*2S時(shí)間到*/
            mTask1Id=0;
          }
        }
        break;
  }
}


/*---------------------------------------------------------------------------*/
/*任務(wù)二*/
/**********************************************
一個(gè)一直輸出1.2hz的方波,直到按鍵再次按
**********************************************/
void Task2_MainLoop()
{
  switch(mTask2Id){
   case 0:  if(fKey2){
           fKey2=0;          /*接收該鍵值*/
           mTask2_1p2HzReg=416/2;   /*1hz時(shí)間寄存器,832/2ms,以2MS為單位*/
           oTask2=0;
           mTask2Id=1;
        }
        break;
   case 1:  if(fKey2){
         fKey2=0;
         oTask2=1;
         mTask2Id=0;
        }
        else {
          if(fSYS_2ms){
            mTask2_1p2HzReg--;
            if(mTask2_1p2HzReg==0){
              oTask2=~oTask1;
              mTask2_1p2HzReg=416/2;  /*1hz時(shí)間寄存器,832/2ms,以2MS為單位*/
            }
          }
        }
        break;
  }
}

/*---------------------------------------------------------------------------*/
/*主程序*/
void main(){
  Timer0_Init();
  EA=1;

  while(1){
    Timer0_MainLoop();
    Key_MainLoop();
    Task1_MainLoop();
    Task2_MainLoop();
  }
}


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 多任務(wù) 資源復用

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>