break就是用來(lái)跳出循環(huán)的,去掉這句就好了,while后面括號(hào)里的是循環(huán)條件,你寫(xiě)1的話就是死循環(huán),除非用break跳出來(lái)。另外你的else語(yǔ)句寫(xiě)錯(cuò)了,else后面沒(méi)括號(hào),直接寫(xiě)不符合if和else if條件的時(shí)候執(zhí)行的語(yǔ)句
成都創(chuàng)新互聯(lián)主營(yíng)岳陽(yáng)樓網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都App定制開(kāi)發(fā),岳陽(yáng)樓h5微信小程序開(kāi)發(fā)搭建,岳陽(yáng)樓網(wǎng)站營(yíng)銷(xiāo)推廣歡迎岳陽(yáng)樓等地區(qū)企業(yè)咨詢(xún)
1、首先要寫(xiě)入單片機(jī)的頭函數(shù),定義單片機(jī)P1口的8個(gè)管腳,讓他們分別代表流水燈的8個(gè)led。
2、寫(xiě)一個(gè)大約一小時(shí)的延時(shí)函數(shù),為了清楚的看到流水燈的、效果。
3、下面是流水燈的主函數(shù),流水燈一個(gè)點(diǎn)亮后一個(gè)熄滅反復(fù)循環(huán)點(diǎn)亮熄滅。
4、這樣流水燈就可以反復(fù)循環(huán)了。把程序下到仿真軟件或者是開(kāi)發(fā)板,進(jìn)行仿真即可完成。
這樣的程序是不循環(huán)的 但編譯后就是一個(gè)while循環(huán)了 和單片機(jī)沒(méi)關(guān)的,不相信的話你可以把你這個(gè)程序用匯編翻譯了后就不會(huì)循環(huán)了但會(huì)出現(xiàn)亂碼。程序一定要有循環(huán)不然就跑飛了??梢赃@樣
#includereg52.h
sbit p1_1=P1^4; //P1^4連接一個(gè)發(fā)光二極管
int i;
void main()
{
p1_1=0; //發(fā)光二極管點(diǎn)亮
i=50000; //延時(shí)
while(i--);
p1_1=1; //發(fā)光二極管熄滅
i=50000; //延時(shí)
while(i--);
while(1);//無(wú)限循環(huán)
}
加上一個(gè)死循環(huán),就停住了:
main()
{
unsigned char i;
while(1)
{
for(i=0;i8;i++)
{
P1=table[i];
delay();
}
while(1);//--停在這里
}
}