Các thanh ghi khác Các thanh ghi khác → → lưu trữ dữ liệu của các port xuất/nhập, trạng thái làm việc của các khối trong chip trong suốt quá trình hoạt ñộng của hệ thống... Port nối tiếp
Trang 1BÀI GIẢNG LÝ THUYẾT
VI XỬ LÝ
TP HỒ CHÍ MINH THÁNG 09
THÁNG 09 2009 2009
VI XỬ LÝ
Giáo Giáo viên: PHẠM QUANG TRÍ viên: PHẠM QUANG TRÍ
Trang 2CHƯƠNG 2
PHẦN CỨNG
VI ðIỀU KHIỂN 8051
Trang 3Bộ nhớ chương trình (ROM) bên trong: Bộ nhớ chương trình (ROM) bên trong: 4 KB 4 KB
Bộ nhớ dữ liệu (RAM) bên trong: 128 byte
Bộ nhớ chương trình (ROM) bên ngoài: Bộ nhớ chương trình (ROM) bên ngoài: 64 KB 64 KB (tối ña) (tối ña)
Bộ nhớ dữ liệu (RAM) bên ngoài: 64 KB 64 KB (tối ña) (tối ña)
4 port xuất nhập (I/O Port) 8 bit.
2 bộ ñịnh thời (Timer) 16 bit.
Mạch giao tiếp nối tiếp (Serial Port).
Mạch xử lý ngắt (Interrupt).
Bộ xử lý bit (thao tác trên các bit riêng lẻ).
210 vị trí nhớ ñược ñịnh ñịa chỉ, mỗi vị trí 1 bit.
Thực hiện phép nhân/chia trong 4 µs.
Trang 10ðơn vị xử lý trung tâm
ðơn vị xử lý trung tâm → → tính toán và ñiều khiển quá trình hoạt ñộng của toàn hệ thống
Trang 11Mạch dao ñộng
Mạch dao ñộng → → tạo tín hiệu xung clock cung cấp cho các khối trong chip hoạt ñộng
Trang 12Bộ nhớ dữ liệu trong chip
Bộ nhớ dữ liệu trong chip → → lưu trữ các dữ liệu
Trang 13Bộ nhớ chương trình trong chip
Bộ nhớ chương trình trong chip → → lưu
trữ chương trình hoạt ñộng của chip
Trang 14Các port xuất/nhập
Các port xuất/nhập → → ñiều khiển việc
xuất nhập dữ liệu dưới dạng song song
(8 bit) giữa trong và ngoài chip
Trang 15ðiều khiển bus
ðiều khiển bus → → ñiều khiển hoạt ñộng của hệ thống bus và việc di chuyển
thông tin trên hệ thống bus
Trang 16Các thanh ghi khác
Các thanh ghi khác → → lưu trữ dữ liệu của các port xuất/nhập, trạng thái làm việc của các khối trong chip trong suốt quá trình hoạt ñộng của hệ thống.
Trang 17Bộ ñịnh thời
Bộ ñịnh thời → → dùng ñể ñịnh thời gian hoặc ñếm sự
kiện (ñếm xung) thông qua các chân T0, T1
Trang 18Port nối tiếp
Port nối tiếp → → ñiều khiển việc xuất nhập dữ liệu dưới dạng nối tiếp giữa trong và ngoài chip thông
qua các chân TxD, RxD
Trang 19ðiều khiển ngắt
ðiều khiển ngắt → → nhận tín hiệu ngắt từ bên ngoài (INT0
(INT0\\, INT1 , INT1\\), bộ ñịnh thời và cổng nối tiếp, lần ), bộ ñịnh thời và cổng nối tiếp, lần
lượt ñưa các tín hiệu ngắt này ñến CPU ñể xử lý
Trang 20Hệ thống bus
Hệ thống bus → → liên kết các
khối trong chip lại với nhau
Trang 22Vcc = +5V Vcc = +5V ± ± 10%
GND = 0V
Trang 23mạch dao ñộng tạo xung clock bên ngoài, cung cấp tín hiệu xung clock cho chip hoạt ñộng.
XTAL1 XTAL1 → → ngõ vào mạch tạo xung clock trong chip.
XTAL2 XTAL2 → → ngõ ra mạch tạo xung
XTAL2 XTAL2 → → ngõ ra mạch tạo xung clock trong chip.
Trang 24mạch dao ñộng tạo xung clock bên ngoài, cung cấp tín hiệu xung clock cho chip hoạt ñộng.
XTAL1 XTAL1 → → ngõ vào mạch tạo xung clock trong chip.
XTAL2 XTAL2 → → ngõ ra mạch tạo xung
XTAL2 XTAL2 → → ngõ ra mạch tạo xung clock trong chip.
Trang 25RST = 1 RST = 1 →→ Chip 8051 ñược thiết lặp lại trạng thái ban ñầu
Trang 26RST = 1 RST = 1 →→ Chip 8051 ñược thiết lặp lại trạng thái ban ñầu
Trang 27RST = 1 RST = 1 →→ Chip 8051 ñược thiết lặp lại trạng thái ban ñầu
Trang 28RST = 1 RST = 1 →→ Chip 8051 ñược thiết lặp lại trạng thái ban ñầu
Machine set T
TRESET (us): Thời gian reset tối thiểu
TMACHNIE (us): Chu kỳ máy
ffOSC (MHz): Tần số thạch anh
Trang 30nối với chân OE\\ của ROM ngoài ñể cho phép của ROM ngoài ñể cho phép
CPU ñọc mã lệnh từ ROM ngoài
Trang 31thực hiện việc giải ña hợp cho bus ñịa chỉ byte thấp và bus dữ liệu ña hợp (AD0
(AD0 – – AD7) AD7).
Tín hiệu xuất, tích cực mức cao.
Trang 32Port xuất dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 33Port xuất dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 34Port xuất dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 35Port xuất dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 36Port nhập dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 37Port nhập dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 38Port nhập dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 39Port nhập dữ liệu
Hình ảnh chỉ mang tính chất minh họa
Trang 40Có 2 chức năng:
Trang 42Khi Port 0 là port xuất nhập dữ liệu thì phải sử
dụng các ñiện trở kéo lên bên ngoài
Trang 44Có 2 chức năng:
Trang 47Có 2 chức năng:
Trang 49Các tín hiệu ñiều khiển Các tín hiệu ñiều khiển →→ có sử dụng
bộ nhớ ngoài hoặc các chức năng ñặc biệt
Bit Tên ðịa chỉ Chức năng Bit Tên ðịa chỉ Chức năng P3.0 RxD B0H Thu dữ liệu của port nối tiếp P3.1 TxD B1H Phát dữ liệu của port nối tiếp P3.2 INT0\ B2H Ngõ vào ngắt ngoài 0.
P3.3 INT1\ B3H Ngõ vào ngắt ngoài 1.
P3.4 T0 B4H Ngõ vào của bộ ñịnh thời/ñếm 0 P3.5 T1 B5H Ngõ vào của bộ ñịnh thời/ñếm 1 P3.6 WR\ B6H ðiều khiển ghi vào RAM ngoài P3.7 RD\ B7H ðiều khiển ñọc từ RAM ngoài.
Trang 50các
các chân chân port port ñược ñược cấu cấu hình hình là là port port xuất
xuất dữ dữ liệu liệu
Muốn Muốn các các chân chân port port ñược ñược cấu cấu hình hình là
là port port nhập nhập dữ dữ liệu liệu thì thì cần cần phải phải lập lập trình
trình lại lại,, bằng bằng cách cách ghi ghi mức mức logic logic cao cao ñến
ñến tất tất cả cả các các bit bit của của port port trước trước khi khi ñến
ñến tất tất cả cả các các bit bit của của port port trước trước khi khi bắt
bắt ñầu ñầu nhập nhập dữ dữ liệu liệu từ từ port port
Các Các chân chân trong trong cùng cùng một một port port không
không nhất nhất thiết thiết phải phải có có cùng cùng kiểu kiểu cấu
cấu hình hình là là xuất xuất hay hay nhập nhập dữ dữ liệu liệu
Trang 55ADD,…
Dữ liệu nhận ñược sau khi thực hiện quá trình ñọc là dữ liệu hiện tại ở các chân port.
Trang 58Bộ nhớ chương trình (ROM).
4KB ðịa chỉ truy xuất: 000H ðịa chỉ truy xuất: 000H FFFH FFFH
Trang 59128 byte ðịa chỉ truy xuất: 00H ðịa chỉ truy xuất: 00H – – 7FH 7FH
Trang 60Vùng RAM dãy thanh ghi
4 dãy x 8 thanh ghiðịa chỉ truy xuất: 00H ðịa chỉ truy xuất: 00H –– 1FH1FH
Truy xuất dữ liệu kiểu:
Trang 61Vùng RAM dãy thanh ghi
4 dãy x 8 thanh ghiðịa chỉ truy xuất: 00H ðịa chỉ truy xuất: 00H –– 1FH1FH
Có thể thay ñổi dãy tích cực bằng cách thay ñổi Có thể thay ñổi dãy tích cực bằng cách thay ñổi
các bit chọn dãy thanh ghi RS1 và RS0 trong thanh
ghi PSW
Trang 62Vùng RAM ñịnh ñịa chỉ bit
16 x 8 bitðịa chỉ truy xuất: 20H ðịa chỉ truy xuất: 20H –– 2FH2FH
Truy xuất dữ liệu kiểu:
29 H
2A H
2B H
2C H
2D H
2E H 2F H
Trang 63Vùng RAM ñịnh ñịa chỉ bit
16 x 8 bitðịa chỉ truy xuất: 20H ðịa chỉ truy xuất: 20H –– 2FH2FH
Truy xuất dữ liệu kiểu:
29 H
2A H
2B H
2C H
2D H
2E H 2F H
Trang 64Vùng RAM ñịnh ñịa chỉ bit
16 x 8 bitðịa chỉ truy xuất: 20H ðịa chỉ truy xuất: 20H –– 2FH2FH
Cho phép thay ñổi giá của từng bit dữ liệu riêng lẻ Cho phép thay ñổi giá của từng bit dữ liệu riêng lẻ
mà không ảnh hưởng ñến các bit khác trong cả byte
Trang 65Vùng RAM ña chức năng
80 byteðịa chỉ truy xuất: 30H ðịa chỉ truy xuất: 30H –– 7FH7FH
Truy xuất dữ liệu kiểu:
Trang 6621 thanh ghi ðịa chỉ truy xuất: 80H ðịa chỉ truy xuất: 80H – – FFH FFH
Thanh ghi A
Thanh ghi B
Thanh ghi từ trạng thái chương trình
(PSW)
Thanh ghi con trỏ ngăn xếp (SP)
Thanh ghi con trỏ dữ liệu (DPH, DPL)
Thanh ghi port (P0, P1, P2, P3)
Thanh ghi port nối tiếp (SBUF, SCON)
Thanh ghi ñịnh thời (TMOD, TCON, TH0,
TL0, TH1, TL1)
Thanh ghi ngắt (IE, IP)
Thanh ghi ñiều khiển nguồn (PCON)
Trang 67của chipchip MCSMCS 5151
Trang 68SửSử dụngdụng kiểukiểu giángián tiếptiếp::
Cho (R0) = 90H
90H 11 00 00 11 00 11 00 11 P1
Trang 69CôngCông dụngdụng:: chocho biếtbiết trạngtrạng tháithái làmlàm việcviệc củacủa CPUCPU (ALU)(ALU)
CYCY (Carry(Carry Flag)Flag):: cờcờ nhớnhớ
ACAC (Auxiliary(Auxiliary Carry)Carry):: cờcờ nhớnhớ phụphụ
FF00 (Flag(Flag 00)):: cờcờ zerozero
CY
AC F0
RS1 RS0
OV X P
FF00 (Flag(Flag 00)):: cờcờ zerozero
RSRS00,, RSRS11 (Register(Register Select)Select):: bitbit chọnchọn dãydãy thanhthanh ghighi
OVOV (Overflow)(Overflow):: cờcờ tràntràn
PP (Parity)(Parity):: cờcờ kiểmkiểm tratra chẳn/lẻchẳn/lẻ
Trang 71Chọn dãydãy thanhthanh ghighi tíchtích cựccực làlà DãyDãy 33 thìthì thựcthực hiệnhiện lệnhlệnh
SETB RS1 ;RS1 = 1SETB RS0 ;RS0 = 1
RS1 RS0
OV X P
CY
AC F0
RS1 RS0
OV X P
Trang 73CờCờ CYCY (Carry(Carry Flag)Flag):: cờcờ nhớnhớ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 77
•• CY = 0: CY = 0: nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.
•• CY = 1: CY = 1: nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.
VíVí dd::
TrườngTrường hợphợp ““77AHAH ++ 2828HH””::
Trang 74CờCờ CYCY (Carry(Carry Flag)Flag):: cờcờ nhớnhớ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 77
•• CY = 0: CY = 0: nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.
•• CY = 1: CY = 1: nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.
VíVí dd::
TrườngTrường hợphợp ““99AHAH 55DHDH””::
Trang 75CờCờ CYCY (Carry(Carry Flag)Flag):: cờcờ nhớnhớ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 77
•• CY = 0: CY = 0: nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.
•• CY = 1: CY = 1: nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.
VíVí dd::
TrườngTrường hợphợp ““9595HH ++ 8686HH””::
Trang 76CờCờ CYCY (Carry(Carry Flag)Flag):: cờcờ nhớnhớ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 77
•• CY = 0: CY = 0: nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.nếu không có nhớ từ bit 7 hoặc không có mượn cho bit 7.
•• CY = 1: CY = 1: nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.nếu có nhớ từ bit 7 hoặc có mượn cho bit 7.
VíVí dd::
TrườngTrường hợphợp ““0000HH AA66HH””::
Trang 77CờCờ ACAC (Auxiliary(Auxiliary Carry)Carry):: cờcờ nhớnhớ phụphụ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 33
•• AC = 0: AC = 0: nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.
•• AC = 1: AC = 1: nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.
VíVí dd::
TrườngTrường hợphợp ““9292HH ++ 2828HH””::
Trang 78CờCờ ACAC (Auxiliary(Auxiliary Carry)Carry):: cờcờ nhớnhớ phụphụ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 33
•• AC = 0: AC = 0: nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.
•• AC = 1: AC = 1: nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.
VíVí dd::
TrườngTrường hợphợp ““44AHAH EE33HH””::
Trang 79CờCờ ACAC (Auxiliary(Auxiliary Carry)Carry):: cờcờ nhớnhớ phụphụ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 33
•• AC = 0: AC = 0: nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.
•• AC = 1: AC = 1: nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.
VíVí dd::
TrườngTrường hợphợp ““77AHAH ++ 5959HH””::
Trang 80CờCờ ACAC (Auxiliary(Auxiliary Carry)Carry):: cờcờ nhớnhớ phụphụ →→ báobáo cócó nhớ/mượnnhớ/mượn tạitại bitbit 33
•• AC = 0: AC = 0: nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.nếu không có nhớ từ bit 3 hoặc không có mượn cho bit 3.
•• AC = 1: AC = 1: nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.nếu có nhớ từ bit 3 hoặc có mượn cho bit 3.
VíVí dd::
TrườngTrường hợphợp ““9797HH 55DHDH””::
Trang 81hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
•• Nói Nói cách cách khác khác là là:: ðối ðối với với phép thì OV OV = = 1 1 nếu nếu có có nhớ nhớ từ từ bit bit 7 7 nhưng
nhưng không không có có nhớ nhớ từ từ bit bit 6 6 hoặc hoặc nếu nếu có có nhớ nhớ từ từ bit bit 6 6 nhưng nhưng không không có có nhưng
nhưng không không có có nhớ nhớ từ từ bit bit 6 6 hoặc hoặc nếu nếu có có nhớ nhớ từ từ bit bit 6 6 nhưng nhưng không không có có nhớ
nhớ từ từ bit bit 7 7 ðối ðối với với phép phép tr tr thì thì OV OV = = 1 1 nếu nếu có có mượn mượn cho cho bit bit 7 7 nhưng nhưng không
không có có mượn mượn cho cho bit bit 6 6 hoặc hoặc nếu nếu có có mượn mượn bit bit 6 6 nhưng nhưng không không có có mượn
mượn bit bit 7 7
Trang 82hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““BB33HH ++ 2525HH””::
TrườngTrường hợphợp ““BB33HH ++ 2525HH””::
Trang 83hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““BBHBBH ++ CC99HH””::
TrườngTrường hợphợp ““BBHBBH ++ CC99HH””::
Trang 84hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““BBHBBH 9696HH””::
TrườngTrường hợphợp ““BBHBBH 9696HH””::
Trang 85hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““44BHBH FF33HH””::
TrườngTrường hợphợp ““44BHBH FF33HH””::
Trang 86hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““5353HH ++ 4545HH””::
TrườngTrường hợphợp ““5353HH ++ 4545HH””::
Trang 87hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““8282HH ++ BAHBAH””::
TrườngTrường hợphợp ““8282HH ++ BAHBAH””::
Trang 88hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““99AHAH 33EHEH””::
TrườngTrường hợphợp ““99AHAH 33EHEH””::
Trang 89hay khôngkhông
•• OVOV == 00:: nếunếu 128128 ≤≤ kết kết quả quả ≤ ≤ + +127 127
•• OVOV == 11:: nếunếu kếtkết quảquả << 128128 hoặchoặc kếtkết quảquả >> ++127127
VíVí dd::
TrườngTrường hợphợp ““6666HH DAHDAH””::
TrườngTrường hợphợp ““6666HH DAHDAH””::
Trang 90•• PP == 00:: nếunếu sốsố chữchữ sốsố 11 trongtrong thanhthanh ghighi AA làlà sốsố chẵnchẵn
•• PP == 11:: nếunếu sốsố chữchữ sốsố 11 trongtrong thanhthanh ghighi AA làlà sốsố lẻlẻ
VíVí dd::
TrườngTrường hợphợp ““(A)=(A)=4545HH””::
TrườngTrường hợphợp ““(A)=(A)=4545HH””::
Trang 91•• PP == 00:: nếunếu sốsố chữchữ sốsố 11 trongtrong thanhthanh ghighi AA làlà sốsố chẵnchẵn
•• PP == 11:: nếunếu sốsố chữchữ sốsố 11 trongtrong thanhthanh ghighi AA làlà sốsố lẻlẻ
VíVí dd::
TrườngTrường hợphợp ““(A)=E(A)=E77HH””::
TrườngTrường hợphợp ““(A)=E(A)=E77HH””::
Trang 92•• PP == 00:: nếunếu sốsố chữchữ sốsố 11 trongtrong thanhthanh ghighi AA làlà sốsố chẵnchẵn
•• PP == 11:: nếunếu sốsố chữchữ sốsố 11 trongtrong thanhthanh ghighi AA làlà sốsố lẻlẻ
VíVí dd::
TrườngTrường hợphợp ““(A)=(A)=0000HH””::
TrườngTrường hợphợp ““(A)=(A)=0000HH””::
Trang 93xếp ñược ñược giữ giữ trong trong RAM RAM nội nội
ðể ðể sử sử dụng dụng ngăn ngăn xếp xếp thì thì ta ta phải phải nạp nạp giá giá trị trị cho cho thanh thanh ghi
Trang 96Không gian bộ nhớ chương trình lên ñến Không gian bộ nhớ chương trình lên ñến 64 KB 64 KB
Không gian bộ nhớ dữ liệu lên ñến Không gian bộ nhớ dữ liệu lên ñến 64 KB 64 KB
Khi sử dụng bộ nhớ ngoài:
Port 0 Port 0 → → bus ñịa chỉ byte thấp và bus dữ liệu ña hợp (AD0
(AD0 AD7) AD7).
Port 2 Port 2 → → bus ñịa chỉ byte cao (A8 bus ñịa chỉ byte cao (A8 A15) A15).
Port 3 Port 3 → → các tín hiệu ñiều khiển (WR các tín hiệu ñiều khiển (WR\\, RD , RD\\) ).