C51HEX文件的生成和單片機(jī)最小系統(tǒng)
#include AT89X51.h> //預(yù)處理命令
void main(void) //主函數(shù)名
{
//這是第一種注釋方式
unsigned int a; //定義變量 a 為 int 類型
/* 這是第二種注釋方式
*/
do{ //do while 組成循環(huán)
for (a=0; a50000; a++); //這是一個(gè)循環(huán) P1_0 = 0; //設(shè) P1.0 口為低電平,點(diǎn)亮 LED for (a=0; a50000; a++); //這是一個(gè)循環(huán) P1_0 = 1; //設(shè) P1.0 口為高電平,熄滅 LED
}
while(1);
}
圖 2-4 AT89c51 最小化系統(tǒng)
這里先講講 KEIL C 編譯器所支持的注釋語句。一種是以“//”符號(hào)開始的語句,符號(hào)之后 的語句都被視為注釋,直到有回車換行。另一種是在“/*”和“*/”符號(hào)之內(nèi)的為注釋。注 釋不會(huì)被 C 編譯器所編譯。一個(gè) C 應(yīng)用程序中應(yīng)有一個(gè) main 主函數(shù),main 函數(shù)能調(diào)用別
的功能函數(shù),但其它功能函數(shù)不允許調(diào)用 main 函數(shù)。不論 main 函數(shù)放在程序中的那個(gè)位置, 總是先被執(zhí)行。用上面學(xué)到的知識(shí)編譯寫好的 OneLED 程序,并把它燒到剛做好的最小化系 統(tǒng)中。上電,剛開始時(shí) LED 是不亮的(因?yàn)樯想姀?fù)位后所有的 IO 口都置 1 引腳為高電平), 然后延時(shí)一段時(shí)間(for (a=0; a50000; a++)這句在運(yùn)行),LED 亮,再延時(shí),LED 熄滅, 然后交替亮、滅。第一個(gè)真正的小實(shí)驗(yàn)就做完,如果沒有這樣的效果那么您就要認(rèn)真檢查一下電路或編譯燒寫的步驟了。
評(píng)論