找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4763|回復(fù): 17
收起左側(cè)

怎樣使while(1){ }里的程序分開進行

  [復(fù)制鏈接]
ID:219079 發(fā)表于 2017-7-22 21:28 | 顯示全部樓層 |閱讀模式
怎樣使while(1){ }里的程序分開進行??急需??
回復(fù)

使用道具 舉報

ID:123289 發(fā)表于 2017-7-23 00:02 | 顯示全部樓層
誰與誰分開呢?
回復(fù)

使用道具 舉報

ID:34643 發(fā)表于 2017-7-23 06:33 | 顯示全部樓層
具體說說你想要做的任務(wù)。
回復(fù)

使用道具 舉報

ID:213173 發(fā)表于 2017-7-23 07:11 | 顯示全部樓層
while(1){ }通常只能放在main()函數(shù)里,其{ }里的程序是按順序運行的,在執(zhí)行完最后一條語句再返回執(zhí)行第一條語句,無限循環(huán)。如果執(zhí)行中被中斷程序打斷,完成中斷任務(wù)后再回到被打斷處繼續(xù)執(zhí)行。你想把while(1){ }里的程序分開同步執(zhí)行是辦不到的。只能是在高級應(yīng)用中多任務(wù)分時運行,從效果上看是多任務(wù)同時運行。
回復(fù)

使用道具 舉報

ID:219079 發(fā)表于 2017-7-23 08:53 | 顯示全部樓層
yzwzfyz 發(fā)表于 2017-7-23 00:02
誰與誰分開呢?

比如說,while(1)里面有幾個調(diào)用函數(shù),怎樣用標(biāo)識符讓它們分步進行
回復(fù)

使用道具 舉報

ID:164602 發(fā)表于 2017-7-23 08:55 | 顯示全部樓層
當(dāng)然是條件“分開”啰。
例如:用按鍵。我的小車有很多功能:自由花式跑、超聲波避障、尋跡、紅外避障等等,但每次只能展示一項功能吧,所以,就用按鍵了,按這個鍵,執(zhí)行這項功能......
回復(fù)

使用道具 舉報

ID:221117 發(fā)表于 2017-7-23 09:51 | 顯示全部樓層
在主程序中使用switch case
回復(fù)

使用道具 舉報

ID:221725 發(fā)表于 2017-7-23 10:38 | 顯示全部樓層
題目表達不清楚。
回復(fù)

使用道具 舉報

ID:221736 發(fā)表于 2017-7-23 11:11 | 顯示全部樓層
條件語句分開吧
回復(fù)

使用道具 舉報

ID:221744 發(fā)表于 2017-7-23 11:53 | 顯示全部樓層
麻煩請您多讀幾遍問題
回復(fù)

使用道具 舉報

ID:221771 發(fā)表于 2017-7-23 15:29 | 顯示全部樓層
把程序發(fā)出來幫你看看
回復(fù)

使用道具 舉報

ID:219079 發(fā)表于 2017-7-23 16:33 | 顯示全部樓層
void main()
{          
        Init_T0();
        init_12864();        
        writestring(2,0,"金屬:");
        flag=1;
        writestring(0,0,"全程計時:");
        while(1)
        {       
                if(biaozhi1==1)
                xunji();
                if(biaozhi2==1)
                {
                bizhang();
                if(biaozhi3==1)
                xunguang();
                xianshi(0,6,shijian/15000);
                if(shijian==90)
                {
                        ting();
                }
                 
                if(biaozhi1==1)
                {
                if((z==0)&&(y==0))
                {
                if(flag==1)
                {
                if(jinshu==0)
                {
                        num++;
                        delayms(50);
                        DENG=0X00;
                        delayms(50);
                        beep=0;
                        delayms(50);
                         xianshi(2,6,num);
                 }
                 else
                 {
                        DENG=0xff;
                         beep=1;
                 }
                 }}
                 
                if(biaozhi1==1)
                {
                if(zuo==0||you==0)
                {
                if(jinshu==0)
                {
       
                        ting();
                        delayms(50);
                        DENG=0X00;
                        delayms(50);
                        beep=0;
                        delayms(50);
                }
                else
                {
                        IN1=1;IN2=0;IN3=0;IN4=1;
                        DENG=0Xff;
                        beep=1;                 
                }
                }
              }
}
}}}
回復(fù)

使用道具 舉報

ID:221806 發(fā)表于 2017-7-23 17:17 | 顯示全部樓層
間隔進行
回復(fù)

使用道具 舉報

ID:221804 發(fā)表于 2017-7-23 17:51 | 顯示全部樓層
里面套用switch函數(shù)
回復(fù)

使用道具 舉報

ID:219079 發(fā)表于 2017-7-23 19:57 | 顯示全部樓層
間隔進行?switch怎么用?
回復(fù)

使用道具 舉報

ID:220919 發(fā)表于 2017-7-24 17:23 | 顯示全部樓層
用switch來分開;
如果是想那一段時間來執(zhí)行一個子函數(shù),當(dāng)時間到了,不管函數(shù)執(zhí)沒執(zhí)行玩,都執(zhí)行下一個的話,就要要用操作系統(tǒng)
回復(fù)

使用道具 舉報

ID:190832 發(fā)表于 2017-7-24 17:46 | 顯示全部樓層
if-elses,witch,goto
回復(fù)

使用道具 舉報

ID:219079 發(fā)表于 2017-7-24 20:23 | 顯示全部樓層
不想用時間
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表