Transcript

Họ#vi#điều#khiển#8051

GV:#Trương#Công#Dung#Nghi

Giới#thiệu#chung• 8051#là#họ#vi#điều#khiển#đầu#tiên#của#họ#vi#điều#khiển#MCS51#

được#Intel#sản#xuất#vào#năm#1980.

• Các#thành#phần#cơ#bản#của#8051:

‣ 4KB#ROM

‣ 128#byte#RAM

‣ 4#port#xuất#nhâp#(I/O#port)#8dbit

‣ 2#bộ#định#thời#16dbit#(timers/counters)

‣ 1#mạch#giao#tiếp#nối#tiếp#(serial#interface)

‣ Không#gian#nhớ#chương#trình#ngoài#64KB(code/program#memory)#(chỉ#đọc)

‣ Không#gian#nhớ#dữ#liệu#ngoài#64KB#(datamemory)#(có#thể#đọc#và#ghi)

2

GV:#Trương#Công#Dung#Nghi

Sơ#đồ#khối#của#8051

3

CPU

Interrupt Control

OSC Bus Control

4k ROM

Timer 1 Timer 2

Serial

128 bytes RAM

4 I/O Ports

TXD RXD

External Interrupts

P0 P2 P1 P3 Addr/Data

GV:#Trương#Công#Dung#Nghi

So#sánh#các#họ#MCSd51

4

ROM RAM Định#thì

803x không#có#ROM8031 128#bytes 2

803x không#có#ROM8032 256#bytes 3

805x mask#ROM8051 128#bytes 2

805x mask#ROM8052 256#bytes 3

87xx EPROM#8751 128#bytes 2

87xx EPROM#8752 256#bytes 3

89xx Flash#EEPROM8951 128#bytes 2

89xx Flash#EEPROM8952 256#bytes 3

• AT#=#ATMEL#(nhà#sản#xuất)#(ví#dụ#:#AT89C51,#AT89LV51)

• C#=#sản#xuất#theo#công#nghệ#CMOS

• LV#=#Low#Power#(công#suất#thấp)

GV:#Trương#Công#Dung#Nghi

So#sánh#các#họ#MCSd51

• WD#:#Watch#Dog#Timer

• AC#:#Analog#Comparator

• ISP#:#In#System#Programable5

GV:#Trương#Công#Dung#Nghi

Sơ#đồ#khối#8051

6

GV:#Trương#Công#Dung#Nghi

Sơ#đồ#chân#của#8051

7

1 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) (8751) (8951)

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Port#0#(chân#32d39)#:#có#2#công#dụng

‣ Thiết#kế#thông#thường#:#dùng#như#cổng#xuất/nhập#(I/O).

‣ Thiết#kế#với#bộ#nhớ#mở#rộng#:#được#dồn#kênh#giữa#bus#địa#chỉ#và#bus#dữ#liệu.

• Port#1#(chân#1d8)#:#Cổng#dành#riêng#cho#xuất/nhập#(I/O)#→#dùng#cho#giao#tiếp#với#các#thiết#bị#ngoài.

• Port#2#(chân#21d28)#:#có#2#công#dụng

‣ Thiết#kế#thông#thường#:#dùng#như#cổng#xuất/nhập#(I/O).

‣ Thiết#kế#với#bộ#nhớ#mở#rộng#:#byte#cao#của#bus#địa#chỉ.

• Port#3#(chân#10d17)#:#có#2#công#dụng

‣ Cổng#xuất/nhập.

‣ Nếu#không#hoạt#động#xuất#nhập,#các#chân#của#port#3#ó#nhiều#chức#năng#riêng#tùy#thuộc#vào#đặc#trưng#cụ#thể#của#8051.

8

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Chức#năng#của#các#chân#P3#:

9

Các chức năng chuyển đổi ở Port 3

11

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Chân#cho#phép#bộ#nhớ#chương#trình#PSEN#(chân#29):

‣ Là#tín#hiệu#cho#phép#bộ#nhớ#chương#trình#⇒#cho#phép#truy#xuất#bộ#nhớ#chương#trình#ngoài.

‣ Thường#được#nối#với#chân#cho#phép#xuất#OE#(output#enable)#của#ROM#để#cho#phép#đọc#các#byte#lệnh.

‣ Trong#thời#gian#tìmdnạp#lệnh,#PSEN#ở#logic#0.#Mã#của#chương#trình#được#đọc#từ#EPROM,#qua#bus#dữ#liệu#và#được#chốt#vào#thanh#ghi#lệnh#IR#của#8051#để#được#giải#mã.

‣ Khi#thực#thi#chương#trình#ở#ROM#nội,#PSEN#được#duy#trì#ở#mức#không#tích#cực#(logic#1).

10

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Chân#cho#phép#bộ#nhớ#chương#trình#PSEN#(chân#29):

11

ĐH Bách Khoa Tp.HCM Lê Chí Thông

sites.google.com/site/chithong 4

• Port 3: dual purpose

7Ref. I. Scott Mackenzie Lê Chí Thông

• /PSEN (Program Store Enable)

o Connects to /OE (Output Enable) of EPROM to permit reading of program bytes

8Ref. I. Scott Mackenzie Lê Chí Thông

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Chân#cho#phép#chốt#địa#chỉ#ALE#(chân#30):

‣ dùng#để#phân#kênh#bus#dữ#liệu#và#bus#địa#chỉ#trong#trường#hợp#port#0#được#dồn#kênh#làm#bus#địa#chỉ/dữ#liệu.

12

ĐH Bách Khoa Tp.HCM Lê Chí Thông

sites.google.com/site/chithong 5

• ALE (Address Latch Enable)

o Use to demultiplex the address and data bus

9Ref. I. Scott Mackenzie Lê Chí Thông

• /EA (External Access) It is tied to +5V or ground.

o /EA = +5V: executes programs from internal ROM

o /EA = 0V: executes programs from external ROM

10Ref. I. Scott Mackenzie Lê Chí Thông

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Chân#truy#xuất#ngoài#EA#(External#Access)#(chân#31):

‣ /EA#nối#với#+5V:#8051#thực#thi#chương#trình#trong#ROM#nội.

‣ /EA#nối#với#0V:#chương#trình#thực#thi#chứa#ở#bộ#nhớ#ngoài.

13

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Chân#RST#(reset)#(chân#9):

‣ Là#ngõ#vào#xóa#chính#của#8051#dùng#để#thiết#lập#lại#trạng#thái#ban#đầu#cho#hệ#thống.

‣ Ngõ#vào#được#treo#ở#mức#logic#1#tối#thiểu#2#chu#kỳ#máy,#hệ#thống#được#khởi#động#lại.

14

ĐH Bách Khoa Tp.HCM Lê Chí Thông

sites.google.com/site/chithong 6

• RST (Reset):

11Ref. I. Scott Mackenzie Lê Chí Thông

• XTAL1 , XTAL2: On-chip oscillator inputs

12Ref. I. Scott Mackenzie Lê Chí Thông

GV:#Trương#Công#Dung#Nghi

Ý#nghĩa#các#chân#8051• Các#chân#XTAL1,#XTAL2#(chân#18#và#19):

‣ Được#ghép#với#thạch#anh#bên#ngoài#để#tạo#nên#mạch#dao#động#cho#chip#8051.

15

C2

30pF

C1

30pF

XTAL2

XTAL1

GND

NC

EXTERNAL OSCILLATOR SIGNAL

XTAL2

XTAL1

GND


Top Related