1、單片機的特殊功能寄存器。
2、KEIL軟件的sfr變量聲明的用法。
sfr P0=0x80;
解釋:
1、特殊功能寄存器中,0x80存儲的是P0口的狀態。
2、這個語句將P0定義為壹個變量,其內容為特殊功能寄存器的0x80寄存器。
3、P0可以更改名字例如:sfr PORT0=0x80;這樣在程序中使用的時候,PORT0的數據就是單片機P0口的數據。
其詳情請參考《Keil Software – Cx51 編譯器用戶手冊》的“特殊功能寄存器(SFR)”章節。
下面做簡單介紹,若要文檔請郵箱聯系。
1、8051 系列微處理器提供壹個特別的存儲區作為特殊功能寄存器 SFR。 用在程序
中的 SFR 可控制計時器 、計數器、 串口、 並口 和外圍設備。 SFR 的地址從 0x80 到
0xFF, 可以以位、 字節 和字訪問。
2、sfr
SFR和別的C變量壹樣聲明。 唯壹的不同點是數據類型是sfr而不是char或int。
例如:
sfr P0 = 0x80; /* port-0,address 80h */
sfr P1 = 0x90; /* port-1,address 90h */
sfr P2 = 0xA0; /* port-2,address 0A0h */
sfr P3 = 0xB0; /* port-3,address 0B0h */
P0、 P1 、P2 和 P3 是聲明的 SFR 名。 sfr 變量的名稱和別的 C 變量壹樣定義
在 sfr聲明中可用任何符號名。
在等號 = 後指定的地址必須是壹個常數值, 不允許帶操作數的表達
式。 傳統的 8051 系列支持 SFR 地址從 0x80 到 0xFF。 PHILIPS 80C51MX 提供
壹個附加擴展的 SFR 空間 地址範圍是 0x180 到 0x1FF。