TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
KHOA ĐIỆN TỬ VIỄN THÔNG
----- -----
BÁO CÁO
BÀI TẬP VXL
GV Hướng Dẫn : Thầy Phạm Ngọc Nam
Nhóm Sinh viên: Trần Văn Thông
Nguyễn Thị Thanh Thuý
Nguyễn Công Chiến
Đào Xuân Vũ
Nguyễn Vũ
Lớp : ĐT09-K47
HÀ NỘI 11/2005
Chủ đề:
Thiết kế bảng quảng cáo, hiển thị một dòng chữ chạy
Phần I:Giới Thiệu Linh Kiện Sử Dụng
I. Vi Xử Lí AT89C51
1. Các đặc điểm của hệ Vi Xử Lý 89C51 :
- Là IC có tích hợp trên đó hệ vi xử lý
- Có 40 chân.
- 4KB ROM trong , có thể ghi xoá được 1000 lần
- Dải tần số hoạt động từ 0MHz đến 24Mhz
- 128x8 bit RAM trong .
- 4 cổng vào ra 8 bit
- 2 bộ định thời 16 bit
- Có 6 nguyên nhân ngắt
- Có thể lập trình được qua cổng nối tiếp
- 210 bit được địa chỉ hoá
- Giao Tiếp nối tiếp
2. Cơ bản về cấu tạo của AT89C51:
Hình : Sơ đồ chân của 89C51
Hình2 : Sơ đồ khối của 89C51
3. Cấu Tạo Chân của AT89C51 :
• GND(chân 20)
Chân nối với 0v
• potr 0(chân 32 – chân 29)
port 0 là port xuất nhập 8 bit hai chiều. Port 0 còn được cấu hình làm bus địa
chỉ( byte thấp) và bus dữ liệu đa hợp trong khi truy xuất bộ nhớ dữ liệu ngoài
và
bộ nhớ chương trình ngoài. Port cũng nhận các byte mã trong khi lập trình cho
Flash và xuất các byte mã trong khi kiểm tra chương trình ( các điện trở kéo lên
bên ngoài được cần đến trong khi kiểm tra chương trình).
• Port 1( chân 1- 8)
port 1 là port xuất nhập 8 bit hai chiều. Port1 cũng nhận byte địa chỉ thấp trong
thời gian lập trình cho Flash.
• Port 2 ( chân 21 – 28)
Port 2 là port xuất nhập 8 bit hai chiều. Port 2 tạo ra các byte cao của bus địa
chỉ trong thời gian tìm nạp lệnh từ bộ nhớ chương trình ngoài và trong thời
gian
truy xuất bộ nhớ dữ liệu ngoài, sử dụng các địa chỉ 16 bit. Trong thời gian truy
xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 8 bit, port 2 phát các nội dung
của các thanh ghi đặc biệt, port 2 cũng nhận các bits địa chỉ cao và vài tín hiệu
điều khiển trong thời gian lập trình cho Flash và kiểm tra chương trình.
• Port 3 ( chân 10- 17)
Port 3 là port xuất nhập 8 bit hai chiều, port 3 cũng còn làm các chức năng
khác của AT89C51. các chức năng này được nêu như sau:
Chân Tên Chức năng
P3.0 RxD Ngõ vào port nối tiếp
P3.1 TxD Ngõ ra port nối tiếp
P3.2 INT0 Ngõ vào ngắt ngoài 0
P3.3 INT1 Ngõ vào ngắt ngoài 1
P3.4 T0 Ngõ vào bên ngoài của bộ định thời 1
P3.5 T1 Ngõ vào bên ngoài của bộ định thời 0
P3.6 WR Điều khiển ghi bộ nhớ dữ liệu ngoài
P3.7 RD Điều khiển đọc bộ nhớ dữ liệu ngoài
Port 3 cũng nhận một vài tín hiêu điều khiển cho việc lập trình Flash và kiểm
tra
chương trình.
• RST ( chân 9)
Ngõ vào reset. Mức cao trên chân này trong hai chu kỳ máy trong khi bộ dao động
đang hoạt động sẽ reset AT89C51
.
• ALE/PROG( chân 30)
ALE là một xung ngõ ra để chốt byte thấp của địa chỉ trong khi xuất bộ nhớ ngoài.
Chân này cũng làm ngõ vào chân lập trình (PROG) trong thời gian lạp trình cho
Flash.
Khi hoạt động bình thường xung ngõ ra luôn có tần số không đổi là 1/6 tần số của
mạch dao động, có thể được dùng cho các mục đích định thời bên ngoài.
Khi cần, hoạt động chân ALE có thể được vô hiệu hoá bằng cách set bit 0 của
thanh ghi chức năng đặc biệt có địa chỉ 8Eh. Khi bit này được set, ALE chỉ tích
cực trong thời gian thực hiện lệnh MOVX hoặc MOVC. Ngược lại chân này sẽ
được kéo lên cao. Việc set bit không cho phép hoạt động chôt byte thấp của địa chỉ
sẽ không có tác dụng nếu bộ vi điều khiển đang ở chế độ thực thi chương trình
ngoài.
• PSEN(chân 29)
PSEN (program Store Enable) là xung điều khiển truy xuất chương trình ngoài. Khi
AT89C51 đang thực thi chương trình từ bộ nhớ chương trình ngoài, PSEN được
kích
hoạt hai lần mỗi chu kỳ máy, nhưng hai hoạt động PSEN sẽ bị bỏ qua mỗi khi truy
cập bộ nhớ dữ liệu ngoài.
• EA vpp(chân 31)
Là chân cho phép truy xuất bộ nhớ chương trình ngoài ( địa chỉ từ 0000h tới ffffh)
EA = 0 cho phép truy xuát bộ nhớ chương trình ngoài, ngược lại EA = 1 sẽ thực thi
chương trình bên trong chip
Tuy nhiên, lưu ý rằng nếu bít khoá 1 được lập trình EA được chốt bên trong khi reset
• XTAL1& XTAL2
Là hai ngõ vào ra của hai bộ khuyếch đại đảo của mạch dao động, được cấu hình để
dùng như một bộ tạo dao động trên chip
3. Tổ chức bộ nhớ của 89C51:
7F
RAM ĐA DỤNG
30
2F 7F 7E 7D 7C 7B 7A 79 78
2E 77 76 75 74 73 72 71 70
2D 6F 6E 6D 6C 6B 6A 69 68
2C 67 66 65 64 63 62 61 60
2B 5F 5E 5D 5C 5B 5A 59 58
2A 57 56 55 54 53 52 51 50
29 4F 4E 4D 4C 4B 4A 49 48
28 47 46 45 44 43 42 41 40
27 3F 3E 3D 3C 3B 3A 39 38
26 37 36 35 34 33 32 31 30
25 2F 2E 2D 2C 2B 2A 29 28
24 27 26 25 24 23 22 21 20
23 1F 1E 1D 1C 1B 1A 19 18
22 17 16 15 14 13 12 11 10
21 0F 0E 0D 0C 0B 0A 09 08
20 07 06 05 04 03 02 01 00
1F
BANK 3
18
17
BANK 2
10
0F
BANK 1
08
07
Bank thanh ghi 0 ( mặc định cho R0-R7)
00
CẤU TRÚC RAM NỘI
F0 F7 F6 F5 F4 F3 F2 F1 F0
E0 E7 E6 E5 E4 E3 E2 E1 E0
D0 D7 D6 6D 6C 6B 6A 69 68
B8 - - - BC BB B
A
B9 B8
B0 B7 B6 B5 B4 B3 B2 B1 B0
A8 AF AE A
D
A
C
A
B
A
A
A9 A8
A0 A7 A6 A5 A4 A3 A2 A1 A0
99 Không có địa chỉ hóa từng bit
98 9F 9E 9D 9C 9B 9A 99 98
90 97 96 95 94 93 92 91 90
8D Không được địa chỉ hóa từng bit
8C Không được địa chỉ hóa từng bit
8B Không được địa chỉ hóa từng bit
8A Không được địa chỉ hóa từng bit
89 Không được địa chỉ hóa từng bit
88 8F 8
E
8D 8C 8B 8A 89 88
87 Không được địa chỉ hóa từng bit
83 Không được địa chỉ hóa từng bit
82 Không được địa chỉ hóa từng bit
81 Không được địa chỉ hóa từng bit
80 87 86 8
5
84 83 82 81 80
THANH GHI CHỨC NĂNG ĐẶC BIỆT