標(biāo)題: 詳細注釋:控制單片機IO口的高低電平:點亮P2口的一個LED燈方法1 [打印本頁]

作者: 越快樂越墮落    時間: 2022-4-3 10:36
標(biāo)題: 詳細注釋:控制單片機IO口的高低電平:點亮P2口的一個LED燈方法1
下面是我根據(jù)程序做的注釋,如有錯誤之處請指正!
單片機源程序如下(每一行都有詳細的注釋):


/*-----------------------------------------------

  控制IO口的高低電平:點亮P2口的一個LED燈方法1

------------------------------------------------*/
#include<reg52.h> //包含頭文件,一般情況不需要改動,
                  //頭文件包含特殊功能寄存器的定義

sbit LED=P2^0;    //sbit意思是特殊功能位聲明,即聲明某一個特殊功能寄存器中的某一位。
                  //本句含義是用sbit關(guān)鍵字定義LED到P2.0端口,即將單片機的P2口的最低位定義為LED。
                  //此處的P要大寫,因為編譯器并不認(rèn)識p2,而它只認(rèn)識P2,因為我們在單片機頭文件中的定義是"sfr P2=0xA0;"。
                  //LED是自己任意定義且容易記憶的符號
/*------------------------------------------------
                    主函數(shù)
------------------------------------------------*/
void main (void)  //void意為空,main為主函數(shù),一個程序里有且僅有一個main主函數(shù),它是整個程序開始執(zhí)行的入口。
                  //本句意思是無返回值的函數(shù),括號里的void可以不寫。
{                 //main()后面的兩個花括號是C語言中函數(shù)寫法的基本要求之一,
                  //即在每一個函數(shù)中,所有的代碼都寫在這個函數(shù)的兩個花括號里面,每條語句結(jié)束后都要加上分號,語句和語句之間可以用空格或回車隔開。
                  //此方法使用bit位對單個端口賦值

LED=1;            //將P2.0口賦值 1,對外輸出高電平,用分號和下一句隔開。此句可刪除,程序照常執(zhí)行
LED=0;            //將P2.0口賦值 0,對外輸出低電平,用分號和下一句隔開

while (1)         //主循環(huán)。while語句的作用是讓程序停止在某處,或延時。此句可刪除,程序照常執(zhí)行
                  //括號里面的1為表達式,表達式可以為一個常數(shù),一個運算或一個帶返回值的函數(shù)。
                  //此句后沒有跟分號,所以會默認(rèn)后面第一個分號前的語句為它的內(nèi)部語句。
  {               //此句可刪除,程序照常執(zhí)行
                  //主循環(huán)中添加其他需要一直工作的程序
  }               //此句可刪除,程序照常執(zhí)行
}     


作者: zhxiufan    時間: 2022-4-3 18:19
額,這個是不是有些詳細過頭了。
作者: 越快樂越墮落    時間: 2022-4-7 14:14
zhxiufan 發(fā)表于 2022-4-3 18:19
額,這個是不是有些詳細過頭了。

那必須的啊,不然小白看到有的壓根沒有注釋,或者只有寥寥幾字還不是要百度要問,還不如一眼就看明白,跟復(fù)習(xí)一樣。不需要的話可以自行刪除,只保留自己覺得需要的。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1