#include
sbit P1_0 = P1^0; // 定義P1管腳0
void main()// 主程序 C語言所必需要有的
{
P1_0 = 0; // 點亮P1第0管腳連接的LED
}
===============以下非程序代碼===================
上面的程序,首先引用reg52.h,這里有對操作單片機相關數(shù)據(jù)的封裝,方便用戶使用
接著,用P1_0這個sbit類型的變量,引用P1口的第1個引腳(P1^0)
接著,主程序開始
將P1口的第1個引腳置為低電平(亮)
結(jié)束程序
在reg52.h上右鍵菜單(Keil中)open document
sfr 是用于定義特殊寄存器(Special Function Register)的關鍵字,是單片計算機中的一組特殊的臨時存儲區(qū)域,用于動態(tài)存放計算機運行過程的一些狀態(tài)信息、并依此做相應的控制。51系列單片機中,通常每個寄存器也就一個字節(jié),這個字節(jié)是P1(通用寄存器1)P1有8個位,但0x91~0x97與P1毫無關系,同理其他3個寄存器P0, P2, P3也是這個道理。MCS-51單片機就設有18個專用寄存器,P0-P3端口,定時/計數(shù)器T0、T1,TMOD、TCON、PCON、SCON 、PSW、IE、A、B、IP等等。SFR越多,編和控制功能越強、越靈活,但需要硬資源,所以系統(tǒng)設計時會根據(jù)需要來確定。
sbit(Set Bit)與sfr用法類似,只是sbit是位操作,用于將某個sfr中具體位賦值給一個變量,這樣后面程序就可用通過該變量為該位清0或置1。
要點:
1.sfr和sbit的含意,特殊功能寄存器的含意
2.如何用位控制引腳