Gömülü Sistemler - SFR Kayıtları

Bir Özel İşlev Kaydı (veya Özel Amaçlı Kayıt veya basitçe Özel Kayıt), bir mikroişlemcinin çeşitli işlevlerini kontrol eden veya izleyen bir mikroişlemci içindeki bir kayıttır. Özel yazmaçlar, işlemcinin bazı özel işlevlerine veya durumuna yakından bağlı olduğundan, normal talimatlarla (ekleme, taşıma, vb.) Doğrudan yazılamayabilir. Bunun yerine, bazı işlemci mimarilerindeki bazı özel yazmaçlar, onları değiştirmek için özel talimatlar gerektirir.

8051'de, kayıt A, B, DPTR ve PSW, genellikle SFR (özel işlev kayıtları) olarak adlandırılan kayıtlar grubunun bir parçasıdır. Bir SFR'ye adı veya adresi ile erişilebilir.

Aşağıdaki tablo, SFR'lerin bir listesini ve adreslerini gösterir.

Bayt Adresi Bit Adresi
FF
F0 F7 F6 F5 F4 F3 F2 F1 F0 B
E0 E7 E6 E5 E 4 E3 E2 E1 E0 ACC
D0 D7 D6 D5 D4 D3 D2 - D0 PSW
B8 - - - M.Ö BB BA B9 B8 IP
B0 B7 B6 B5 B4 B3 B2 B1 B0 P3
A2 AF - - AC AB AA A9 A8 IE
A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
99 Bit adreslenebilir değil SBUF
98 9F 9E 9D 9C 9B 9A 99 98 SCON
90 97 96 95 94 93 92 91 90 P1
8G Bit adreslenebilir değil TH1
8C Bit adreslenebilir değil TH0
8B Bit adreslenebilir değil TL1
8A Bit adreslenebilir değil 0 TL
89 Bit adreslenebilir değil TMOD
88 8F 8E 8G 8C 8B 8A 89 88 TCON
87 Bit adreslenebilir değil PCON
83 Bit adreslenebilir değil DPH
82 Bit adreslenebilir değil DPL
81 Bit adreslenebilir değil SP
80 87 87 85 84 83 82 81 80 P0

SFR adresleriyle ilgili aşağıdaki iki noktayı düşünün.

  • Özel bir fonksiyon kaydının 80H ila FFH arasında bir adresi olabilir. 00 ila 7FH arasındaki adresler 8051 içindeki RAM belleğinin adresleri olduğundan, bu adresler 80H'nin üzerindedir.

  • 80'den FF'ye kadar olan tüm adres alanı SFR tarafından kullanılmaz. Kullanılmayan yerler, 80H ila FFH, ayrılmıştır ve 8051 programcısı tarafından kullanılmamalıdır.

CY PSW.7 Taşıma Bayrağı
AC PSW.6 Yardımcı Taşıma Bayrağı
F0 PSW.5 Genel amaçlı kullanıcı için 0 işaretleyin.
RS1 PSW.4 Banka seçici bit 1'i kaydedin
RS0 PSW.3 Banka seçici bit 0'ı kaydedin
OV PSW.2 Taşma İşareti
- PSW.1 Kullanıcı tanımlı BAYRAK
P PSW.0 Parite BAYRAĞI. Akümülatördeki 1 bitin çift / tek sayısını belirtmek için komut döngüsü sırasında donanım tarafından ayarlanır / temizlenir.

Aşağıdaki örnekte, SFR kayıtlarının adları adresleriyle değiştirilmiştir.

CY AC F0 RS1 RS0 OV - P

RS0 ve RS1 bitlerini kullanarak karşılık gelen Register Bank bitini seçebiliriz.

RS1 RS2 Kayıt Bankası Adres
0 0 0 00H-07H
0 1 1 08H-0FH
1 0 2 10H-17H
1 1 3 18H-1FH

Program Durum Sözcüğü (PSW), CPU'nun mevcut durumunu yansıtan durum bitleri içerir. 8051 varyantları, bu durum bilgisiyle birlikte PSW adlı özel bir fonksiyon kaydı sağlar. 8251, PSW1 adı verilen ikinci bir özel fonksiyon kaydında bulunan iki ek durum bayrağı, Z ve N sağlar.