欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4231|回復: 9
收起左側

單片機 重復執行代碼

[復制鏈接]
ID:187947 發表于 2020-10-5 08:57 | 顯示全部樓層 |閱讀模式


寫了一個很簡單   步進馬達的測試程序,單片機執行的時候  馬達一直在轉


可程序里 沒有 死循環,只有一個 8拍   ,執行完了 照理應該不轉了


  什么原因造成步進馬達一直轉  


代碼如下

#include <reg51.h>

void delay(int i)

{
        int j;
         int i;
        for(;i>0;i--)

            for(j=50;j>0;j--)

                      ;
}

int main()
{                                   

    int step[]={0x01,0x05,0x04,0x06,0x02,0x0a,0x08,0x09};         

    int i;

    for(i=7;i>=0;i--){

                        P2=step[ i ]   ;
                        delay(10)   ;

                                    }                           

   return 0;         
}



回復

使用道具 舉報

ID:147710 發表于 2020-10-5 13:12 | 顯示全部樓層
如圖修改:
51hei截圖-9201968.jpg


回復

使用道具 舉報

ID:342954 發表于 2020-10-5 14:35 | 顯示全部樓層
把return 0  不要改成FOR();;
回復

使用道具 舉報

ID:342954 發表于 2020-10-5 14:37 | 顯示全部樓層
把return 0 不要,改成for(;;){}
回復

使用道具 舉報

ID:743654 發表于 2020-10-5 16:22 | 顯示全部樓層
程序末尾寫個while(1);不然程序會回到主程序重復執行。
回復

使用道具 舉報

ID:453974 發表于 2020-10-7 08:20 | 顯示全部樓層
把return 0換成while(1);
回復

使用道具 舉報

ID:187947 發表于 2020-10-7 16:41 | 顯示全部樓層

謝謝    找了一本c    51 的書    main 確實要加 while(1)
回復

使用道具 舉報

ID:187947 發表于 2020-10-7 16:42 | 顯示全部樓層
cheney03 發表于 2020-10-5 16:22
程序末尾寫個while(1);不然程序會回到主程序重復執行。

的確如此   
回復

使用道具 舉報

ID:187947 發表于 2020-10-7 16:50 | 顯示全部樓層
統一回復  :  
查了資料   單片機  main 函數 結尾 一般做法都要加死循環  

哎 要是一開始找本c 51的書看看 問題就早發現了        
回復

使用道具 舉報

ID:808634 發表于 2020-10-8 19:10 | 顯示全部樓層
死循環的話
for(unsigned char d;;d++)
{
     放你要死循環的程序
}
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表