Sơ đồ khối và chân 3.. Các thanh ghi chức năng đặc biệt 5.. Dao động và hoạt động reset 6.. Các mode định địa chỉ 8.. Lập trình Timer/Counter 11.. Lập trình ngắt 13.. Lập trình hợp ngữ..
Trang 1NỘI DUNG
1 Giới thiệu
2 Sơ đồ khối và chân
3 Tổ chức bộ nhớ
4 Các thanh ghi chức năng đặc biệt
5 Dao động và hoạt động reset
6 Tập lệnh
7 Các mode định địa chỉ
8 Lập trình IO
9 Tạo trễ
10 Lập trình Timer/Counter
11 Giao tiếp nối tiếp
12 Lập trình ngắt
13 Lập trình hợp ngữ
Trang 22 Sơ đồ khối và các chân
Block Diagram and Pins
Trang 3Sơ đồ khối
CPU
On-chip RAM
On-chip ROM for program code
4 I/O Ports
Timer 0
Serial Port OSC
Interrupt
Control
External interrupts
Timer 1
Timer/Counter
Bus Control
TxD RxD
P0 P1 P2 P3
Address/Data
Counter Inputs
Trang 4Đặc điểm 8051 8052 8031
ROM (không gian chương trình) 4K 8K 0K RAM (bytes) 128 256 128
Timers 2 3 2
I/O chân 32 32 32
Serial port 1 1 1
Interrupt sources 6 8 6
So sánh các thành viên họ 8051
Trang 61 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST (RXD)P3.0
(TXD)P3.1
(T0)P3.4
(T1)P3.5
XTAL2
XTAL1
GND
(INT0)P3.2
(INT1)P3.3
(RD)P3.7
(WR)P3.6
Vcc P0.0(AD0) P0.1(AD1) P0.2(AD2) P0.3(AD3) P0.4(AD4) P0.5(AD5) P0.6(AD6) P0.7(AD7) EA/VPP ALE/PROG PSEN
P2.7(A15) P2.6(A14) P2.5(A13) P2.4(A12) P2.3(A11) P2.2(A10) P2.1(A9) P2.0(A8)
8051 (8031)
Sơ đồ chân 8051
Trang 7Các chân 8051 (phần 1)
Vcc (chân 40):
9Cung cấp nguồn cho chip
9+5V
GND (chân 20): đất
XTAL1 & XTAL2 (chân 19, 18)
92 chân cung cấp xung clock ngoài
9Cách 1: dao động dùng thạch anh#
9Cách 2: dao động từ nguồn xung clock TTL bên ngoài#
9Quan hệ giữa chu kỳ máy và XTAL#
Trang 8Các chân 8051 (phần 2)
RST (chân 9): reset
9input & kích hoạt mức cao
9Để đảm bảo hoạt động reset xảy ra, xung kích khởi phải kéo dài ít nhất là 2 chu kỳ máy
9Giá trị các thanh ghi chịu tác động bởi hoạt động reset,
xem bảng
9Mạch reset có chống rung
Trang 9Các chân 8051 (phần 3)
¾ /EA (chân 31): External Access
9Không có ROM nội trên 8031 & 8032
9/EA nối mass chỉ định rằng code lưu trên bộ nhớ ngoài
9/PSEN & ALE dùng cho ROM ngoài
9Với 8051, /EA nối Vcc
9“/”: chỉ định tác động mức thấp
¾ /PSEN (chân 29): Program Store Enable
9Output, cho phép truy xuất bộ nhớ chương trình ngoài
9Nối tới chân /OE của ROM/EPROM
9Khi thực thi chương trình ở ROM nội, /PSEN được giữ ở
Trang 10Các chân 8051 (phần 4)
¾ ALE (pin 30):Address Latch Enable
¾Là chân output cho phép chốt địa chỉ để giải đa hợp (de-multiplexing) bus dữ liệu và bus địa chỉ
¾ALE xuất tín hiệu để chốt địa chỉ (byte thấp địa chỉ 16-bit) vào 1 thanh ghi ngoài trong suốt nửa đầu của chu kỳ bộ nhớ (memory cycle) Trong nửa chu kỳ bộ nhớ còn lại, P0 sẽ
xuất/nhập dữ liệu
¾ALE có f=1/6fclock
¾Có 1 ngoại lệ: trong thời gian thực thi lệnh MOVX, một xung ALE bị bỏ qua
¾ Cổng I/O: P0, P1, P2, & P3 Mỗi cổng: 8 chân
Trang 11Các cổng I/O
¾ 4 cổng I/O
Port 0 (chân 32-39):P0(P0.0~P0.7)
Port 1 (chân 1-8) :P1(P1.0~P1.7)
Port 2 (chân 21-28):P2(P2.0~P2.7)
Port 3 (chân 10-17):P3(P3.0~P3.7)
Mỗi cổng có 8 chân
Mỗi cổng có thể được dùng như input hay output