Hệ thống nhúng - Thanh ghi SFR

Thanh ghi Chức năng Đặc biệt (hoặc Thanh ghi Mục đích Đặc biệt, hoặc đơn giản là Thanh ghi Đặc biệt) là một thanh ghi bên trong một bộ vi xử lý để điều khiển hoặc giám sát các chức năng khác nhau của một bộ vi xử lý. Vì các thanh ghi đặc biệt được gắn chặt với một số chức năng hoặc trạng thái đặc biệt của bộ xử lý, chúng có thể không được ghi trực tiếp bằng các lệnh thông thường (như thêm, di chuyển, v.v.). Thay vào đó, một số thanh ghi đặc biệt trong một số kiến ​​trúc bộ xử lý yêu cầu các hướng dẫn đặc biệt để sửa đổi chúng.

Trong 8051, thanh ghi A, B, DPTR và PSW là một phần của nhóm thanh ghi thường được gọi là SFR (thanh ghi chức năng đặc biệt). SFR có thể được truy cập theo tên hoặc địa chỉ của nó.

Bảng sau đây hiển thị danh sách các SFR và địa chỉ của chúng.

Địa chỉ Byte Địa chỉ bit
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 - - - BC BB ba B9 B8 IP
B0 B7 B6 B5 B 4 B3 B2 B1 B0 P3
A2 AF - - AC AB AA A9 A8 I E
A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
99 Không thể địa chỉ bit SBUF
98 9F 9E 9D 9C 9B 9A 99 98 SCON
90 97 96 95 94 93 92 91 90 P1
8D Không thể địa chỉ bit TH1
8C Không thể địa chỉ bit TH0
8B Không thể địa chỉ bit TL1
8A Không thể địa chỉ bit TL0
89 Không thể địa chỉ bit TMOD
88 8F 8E 8D 8C 8B 8A 89 88 TCON
87 Không thể địa chỉ bit PCON
83 Không thể địa chỉ bit DPH
82 Không thể địa chỉ bit DPL
81 Không thể địa chỉ bit SP
80 87 87 85 84 83 82 81 80 P0

Hãy xem xét hai điểm sau đây về địa chỉ SFR.

  • Một thanh ghi chức năng đặc biệt có thể có địa chỉ từ 80H đến FFH. Các địa chỉ này trên 80H, vì các địa chỉ từ 00 đến 7FH là địa chỉ của bộ nhớ RAM bên trong 8051.

  • Không phải tất cả không gian địa chỉ từ 80 đến FF đều được SFR sử dụng. Các vị trí không sử dụng, 80H đến FFH, được dành riêng và không được sử dụng bởi lập trình viên 8051.

C Y PSW.7 Mang cờ
AC PSW.6 Cờ mang phụ trợ
F0 PSW.5 Cờ 0 có sẵn cho người dùng cho mục đích chung.
RS1 PSW.4 Đăng ký bộ chọn ngân hàng bit 1
RS0 PSW.3 Đăng ký bộ chọn ngân hàng bit 0
OV PSW.2 Cờ tràn
- PSW.1 CỜ người dùng định nghĩa
P PSW.0 CỜ Chẵn lẻ. Đặt / xóa bởi phần cứng trong chu kỳ lệnh để chỉ ra số chẵn / lẻ của 1 bit trong bộ tích lũy.

Trong ví dụ sau, tên của thanh ghi SFR được thay thế bằng địa chỉ của chúng.

C Y AC F0 RS1 RS0 OV - P

Chúng ta có thể chọn bit Ngân hàng thanh ghi tương ứng bằng cách sử dụng bit RS0 và RS1.

RS1 RS2 Đăng ký ngân hàng Địa chỉ
0 0 0 00H-07H
0 1 1 08H-0FH
1 0 2 10 giờ-17 giờ
1 1 3 18H-1FH

Chương trình Trạng thái Word (PSW) chứa các bit trạng thái để phản ánh trạng thái hiện tại của CPU. Các biến thể của 8051 cung cấp một thanh ghi chức năng đặc biệt, PSW, với thông tin trạng thái này. 8251 cung cấp hai cờ trạng thái bổ sung, Z và N, có sẵn trong một thanh ghi chức năng đặc biệt thứ hai được gọi là PSW1.