特殊功能寄存器

80C51單片機中的寄存器

特殊功能寄存器是80C51單片機中各功能部件對應的寄存器,用於存放相應功能部件的控制命令,狀態或數據。

基本概述


它是80C51單片機中最具有特色的部分,現在幾乎所有80C51系列功能的增加和擴展都是通過增加特殊功能寄存器來達到目的的。英文縮寫為SFR,是Special Function Register(特殊功能寄存器)的縮寫。

列表對比


對於80C51系列中的80C51,共定義了21個特殊功能寄存器。在80C52中,除了80C51的21個特殊功能寄存器,還增加了5個,共計26個。表中帶*號僅在52子系列單片機存在。
MCS-51單片機的特殊功能寄存器
符號地址功能介紹
BF0HB寄存器
ACCE0H累加器
PSWD0H程序狀態存儲器
TH2*CDH定時器/計數器2(高8位)
TL2*CCH定時器/計數器2(低8位)
RLDH*CBH外部輸入(P1.1)計數器/自動再裝入模式時初值寄存器高八位
RLDL*CAH外部輸入(P1.1)計數器/自動再裝入模式時初值寄存器低八位
T2CON*C8HT2定時器/計數器控制寄存器
IPB8H中斷優先順序控制寄存器
P3B0HP3口鎖存器
IEA8H中斷允許控制寄存器
P2A0HP2口鎖存器
SBUF99H串列口鎖存器
SCON98H串列口控制寄存器
P190HP1口鎖存器
TH18DH定時器/計數器1(高8位)
TH08CH定時器/計數器0(高8位)
TL18BH定時器/計數器1(低8位)
TL08AH定時器/計數器0(低8位)
TMOD89HT0、T1定時器/計數器方式控制寄存器
TCON88HT0、T1定時器/計數器控制寄存器
DPH83H數據地址指針(高8位)
DPL82H數據地址指針(低8位)
SP81H堆棧指針
P080HP0口鎖存器
PCON87H電源控制寄存器

數據類型


SFR也是一種擴充數據類型,佔用一個內存單元,值域為0~255。利用它可以訪問51單片機內部的所有特殊功能寄存器。如用sfr P1 = 0x90這一句定P1為P1埠在片內的寄存器,在後面的語句中我們可以用P1 = 255(對P1埠的所有引腳置高電平)之類的語句來操作特殊功能寄存器。

地址空間


SFR的地址空間為80H~FFH,但是僅有21個(80C51子系列)或26個(80C52子系列)位元組作為特殊功能寄存器離散分佈在這128個位元組範圍內,其餘位元組無定義,用戶也不能對這些單元進行讀/寫操作。