欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
這個C語言程序為什么跳不出for循環(huán)?
[打印本頁]
作者:
陳二土
時間:
2020-6-24 18:34
標題:
這個C語言程序為什么跳不出for循環(huán)?
要求:開機后,P2.0控制的LED燈閃爍6次,閃爍間隔為500ms;閃爍結束后P4.7控制的LED燈常亮。
程序:
#include<reg52.h>
sbit LED=P2^0;
void delay(int i)
{
while(i--);
}
void main()
{
int a;
for(a=0;a<12;a++)
{
LED=~LED;
delay(50000);
}
LED=0;
}
仿真的時候一直閃爍不知道為什么....求解答
51hei圖片20200624183144.png
(49.43 KB, 下載次數(shù): 62)
下載附件
2020-6-24 18:32 上傳
作者:
wulin
時間:
2020-6-28 05:18
void main()
{
int a;
for(a=0;a<12;a++)
{
LED=~LED;
delay(50000);
}
LED=0;
while(1);
}
作者:
青桑葉
時間:
2020-6-28 08:48
main 函數(shù)一直在執(zhí)行。led燈會一直閃爍。
作者:
SKYLAR123
時間:
2020-6-28 09:25
加入while,防止程序跑飛,
作者:
ouyangshishi
時間:
2020-6-28 09:32
這段代碼中有一個最大的問題是沒有主循環(huán)體,沒有while循環(huán)體,而直接是main函數(shù),有一種可能性就是函數(shù)執(zhí)行完一次后,回到開頭,重新執(zhí)行,這就造成了一直閃爍
作者:
heu_dzh
時間:
2020-6-28 09:59
我覺得程序是沒問題的,但是可能仿真軟件哪里有問題,你可以給程序里面加一個if(a==11)break;試試
作者:
黑麥威士忌
時間:
2020-6-28 10:37
應該是沒有while(1)導致程序跑飛,建議改成這樣
void main()
{
int a;
for(a=0;a<12;a++)
{
LED=~LED;
delay(50000);
}
while(1)
{
LED=0;
}
}
作者:
wwh2382
時間:
2020-6-28 15:42
為什么不跟蹤一下呢?將斷點設在LED=0處,看程序有沒有跳出for循環(huán)
作者:
zeall1
時間:
2020-6-28 15:45
應該是沒有while(1)導致程序跑飛
作者:
不要黑
時間:
2020-6-28 16:10
#include<reg52.h>
sbit LED=P2^0;
void delay(int i)
{
while(i--);
}
void main()
{
int a;
for(a=0;a<12;a++)
{
LED=~LED;
delay(50000);
}
LED=0;
while(1)
{
}
}
加while(1),實測有效。
作者:
湖南
時間:
2020-6-28 17:01
設置斷點 調試一下代碼看看
作者:
f556
時間:
2020-6-28 17:36
程序本身沒有問題,看了說加while(1);的處理方法,是一種答案。但原則上沒有while(1),程序也是執(zhí)行到main的最后一個}結束。
作者:
ccdmcu
時間:
2020-6-29 15:48
這不明擺著嗎,跳出for循環(huán)后又進去了啊,你又沒加限制,main函數(shù)會一直循環(huán)執(zhí)行。
作者:
電子back科技
時間:
2020-6-29 16:36
要習慣性的寫個while(1)。有內容要循環(huán)的,就寫進while(1)循環(huán)里,沒有要循環(huán)的,就在最后寫個while(1).
作者:
海南釣魚王
時間:
2020-6-29 17:07
限制循環(huán)的地方,不然一直跑就一直閃
作者:
飲酒作樂
時間:
2020-6-29 17:39
程序原則上沒有問題,但是最好加上while(1),然后自己設置停止點,不要讓程序走出main 函數(shù)。如果是軟件程序走出 main 就結束了。單片機很有可能會復位或者其他的原因再次進來。
作者:
約瑟
時間:
2020-6-30 05:41
不要讓a初始化0,初始化放到for外邊,
作者:
aking991
時間:
2020-6-30 08:45
我認為是超出單片機看門狗定時器時間造成的,如果你用的是STC單片機,建議在循環(huán)體中加喂狗就不會每次超時而重啟,這樣也就看出一直跳不出來,其實它已在一定時間后就重啟了
作者:
wojiaoguogai
時間:
2020-6-30 09:39
程序結束后跑飛了,然后自動自復位
作者:
黃youhui
時間:
2020-6-30 10:10
你們51單片機度不用用while(1)卡程序的嗎
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1