找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3893|回復: 2
打印 上一主題 下一主題
收起左側

如果單片機程序中沒有while(1)

[復制鏈接]
跳轉到指定樓層
樓主
ID:262 發(fā)表于 2014-6-18 00:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如果程序中沒有死循環(huán),而是一個開路。那么單片機順序執(zhí)行完所有語句后,應該執(zhí)行什么?
我們沒有給單片機指示做什么,這里容易會出錯。KEIL C51編輯器遇到這種情況時,會自動從主函數開始處執(zhí)行。
示例代碼如下,在keil中生成hex文件,實驗結果是LED燈在不同的閃爍,表明KEIL編輯器不斷重復的從main函數開頭處執(zhí)行程序。

#include
void delay(void)
{
int i,j;
   for(i=0;i<250;i++)
   for(j=0;j<100;j++);
}
void main()
{
P0=0Xaa;
delay();
P0=55;
delay();
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:9542 發(fā)表于 2014-6-18 11:53 | 只看該作者
main 有返回類型值,那就不可估計了,正常main函數返回為空所以會重新執(zhí)行,所以正常單片機要有個循環(huán)為結束方式。
回復

使用道具 舉報

板凳
ID:63641 發(fā)表于 2014-7-5 20:38 | 只看該作者
謝謝分享
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

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