只需一步,快速開始
熱門: 51單片機 | 24小時必答區 | 單片機教程 | 單片機DIY制作 | STM32 | Cortex M3 | 模數電子 | 電子DIY制作 | 音響/功放 | 拆機樂園 | Arduino | 嵌入式OS | 程序設計
#include<reg52.h> sbit d1=P1^4; sbit d2=P0^7; void main() { while(1); { d1=0; d2=0; } } 這個程序可以編譯通過為啥燒寫到板上不亮啊 while循環語句用錯了么 幫我分析一下吧 while(1)是死循環不,從哪開始循環,到哪結束啊 我把while去掉就亮了
使用道具 舉報
while(1); 后面的分號應該去掉,
while 語句的意思很不難理解,在英語中它的意思是“當…的時候…”,在這里我們可 以理解為“當條件為真的時候就執行后面的語句”,它的語法如下:
while (條件表達式) 語句;
while(1) 條件表達式是1 所以這個循環會永遠執行,但是循環體在哪里呢?簡單的說就是while(1) 括號后面的第一條語句,或者是while(1) 后面的{}語句塊的的內容,當你在while(1) 后面跟一個;分號,那么循環體就是這個分號,也就是這條空語句會一直不停的執行,所以程序就無法往下面繼續了,燈也不會亮.我建議你去看看這課 :c51循環語句http://www.zg4o1577.cn/mcuteach/136.html
本版積分規則 發表回復 回帖后跳轉到最后一頁
手機版|小黑屋|51黑電子論壇 | 管理員QQ:125739409;技術交流QQ群281945664
Powered by 單片機教程網