Vào năm 1981, hãng Intel giới thiệu một sốbộvi điều khiển được gọi là
8051. Bộvi điều khiển này có 128 byte RAM,4K byte ROM, hai bộ định
thời, một cổng nối tiếp và 4 cổng 8 bit. Tất cả đều được tích hợp trên một
chíp. Lúc bấy giờ, bộvi điều khiển nhưvậy được coi là một “hệthống trên
chíp”. 8051 là một bộxửlý 8 bit, tức là CPU chỉcó thểlàm việc với 8 bit
dữliệu. Dữliệu lớn hơn 8 bit được chia ra thành các dữliệu 8 bit đểxửlý.
8051 có tất cả4 cổng I/O mỗi cổng rộng 8 bit, có thểcó một ROM trên
chíp cực đại là 64 K byte. Tuy nhiên, lúc đó các nhà sản xuất đã cho xuất
xưởng chỉvới 4K byte ROM trên chíp. 8051 đã trởnên phổbiến sau khi
Intel cho phép các nhà sản xuất khác sản xuất và bán bất kỳdạng biến thể
nào của 8051 mà họthích với điều kiện họphải đểmã chương trình tương
thích với 8051. Từ đó dẫn đến sựra đời nhiều phiên bản của 8051 với các
tốc độkhác nhau. Tuy nhiên, điều quan trọng là mặc dù có nhiều biến thể
của 8051, nhưkhác nhau vềtốc độvà dung lượng nhớROM trên chíp,
nhưng tất cảcác lệnh đều tương thích với 8051 ban đầu. Điều này có nghĩa
Tổng quan Vi điều khiển họ8051 Đồán tốt
nghiệp
Hoàng Quang Lý -2-là nếu ta viết chương trình của mình cho một phiên bản nào đó thì nó cũng
sẽchạy với mọi phiên bản bất kỳkhác mà không phân biệt nó từhãng sản
xuất nào.
88 trang |
Chia sẻ: oanhnt | Lượt xem: 1383 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đề tài Thiết kế hệ thống quảng cáo, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -1-
Đề tài thiết kế Hệ Thống Quảng Cáo.
CHƯƠNG I
TỔNG QUAN VỀ HỌ VI XỬ LÝ 8051
I. NHỮNG ĐẶC ĐIỂM CƠ BẢN HỌ VI XỬ LÝ 8051
1.Tóm tắt về lịch sử của 8051.
Vào năm 1981, hãng Intel giới thiệu một số bộ vi điều khiển được gọi là
8051. Bộ vi điều khiển này có 128 byte RAM, 4K byte ROM, hai bộ định
thời, một cổng nối tiếp và 4 cổng 8 bit. Tất cả đều được tích hợp trên một
chíp. Lúc bấy giờ, bộ vi điều khiển như vậy được coi là một “hệ thống trên
chíp”. 8051 là một bộ xử lý 8 bit, tức là CPU chỉ có thể làm việc với 8 bit
dữ liệu. Dữ liệu lớn hơn 8 bit được chia ra thành các dữ liệu 8 bit để xử lý.
8051 có tất cả 4 cổng I/O mỗi cổng rộng 8 bit, có thể có một ROM trên
chíp cực đại là 64 K byte. Tuy nhiên, lúc đó các nhà sản xuất đã cho xuất
xưởng chỉ với 4K byte ROM trên chíp. 8051 đã trở nên phổ biến sau khi
Intel cho phép các nhà sản xuất khác sản xuất và bán bất kỳ dạng biến thể
nào của 8051 mà họ thích với điều kiện họ phải để mã chương trình tương
thích với 8051. Từ đó dẫn đến sự ra đời nhiều phiên bản của 8051 với các
tốc độ khác nhau. Tuy nhiên, điều quan trọng là mặc dù có nhiều biến thể
của 8051, như khác nhau về tốc độ và dung lượng nhớ ROM trên chíp,
nhưng tất cả các lệnh đều tương thích với 8051 ban đầu. Điều này có nghĩa
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -2-
là nếu ta viết chương trình của mình cho một phiên bản nào đó thì nó cũng
sẽ chạy với mọi phiên bản bất kỳ khác mà không phân biệt nó từ hãng sản
xuất nào.
2. Bộ ví điều khiển 8051
Bộ vi điều khiển 8051 là thành viên đầu tiên của họ 8051. Hãng Intel
ký hiệu nó như là MCS51
Bảng 1.1. Các đặc tính của 8051 đầu tiên
3. Sơ đồ khối chung của họ vi điều khiển 8051
Interrupt control : Điều khiển ngắt.
Other registers : Các thanh ghi khác.
128 Byte RAM : RAM 128 Byte.
Timer 2, 1 , 0 : Bộ định thời 2 , 1 , 0
CPU : Đơn vị điều khiển trung tâm.
Oscillator : Mạch dao động.
Bus control: Điều khiển Bus
Đặc tính Số lượng
ROM trên chíp 4K byte
RAM 128 byte
Bộ định thời 2
Các chân vào - ra 32
Cổng nối tiếp 1
Nguồn ngắt 6
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -3-
I/O ports: Các ports vào/ ra
Serial port: port nối tiếp
Address/data : địa chỉ/ dữ liệu
Hình 1.1. Bố trí bên trong của sơ đồ khối 8051
II. THÀNH VIÊN HỌ VI XỬ LÝ 8051
1. Bộ vi điều khiển 8052:
Interrupt
Control
Timer 2 ( 8032,8052)
Timer 1
Timer 0
Serial port
INT 1
INT 0
CPU
Oscillator Bus control
EA
RST
ALE
PSEN
I/O Port SERIALPORT
RXDTXD
P 0 P 1 P 2 P 3
Address/Data
Other
registers
128 Byte
RAM
128 Byte
RAM
(8032/8052)
ROM
0K - 8031/8032
4K - 8051
8K - 8052
Timer 0
Timer 1
Timer 2
(8032/8052)
T 0
T 1
T 2
T 2 EX
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -4-
Bộ vi điều khiển 8052 là một thành viên khác của họ 8051, 8052 có
tất cả các đặc tính chuẩn của 8051 ngoài ra nó có thêm 128 byte RAM và
một bộ định thời nữa. Hay nói cách khác là 8052 có 256 byte RAM 3 bộ
định thời và có 8K byte ROM trên chíp thay vì 4K byte như 8051.
Đặc tính 8051 8052 8031
ROM trên chíp 4K byte 8K byte
RAM 128 byte 256 byte 128 byte
Bộ định thời 2 3 2
Chân vào - ra 32 32 32
Cổng nối tiếp 1 1 1
Nguồn ngắt 6 8 6
Bảng 1.2. So sánh các đặc tính của các thành viên họ 8051.
Như nhìn thấy từ bảng 1.2 thì 8051 là tập con của 8052, do vậy tất cả
mọi chương trình viết cho 8051 đều chạy trên 8052 nhưng điều ngược lại là
không đúng.
2. Bộ vi điều khiển 8031:
Một thành viên khác nữa của 8051 là chíp 8031. Chíp này thường
được coi như là 8051 không có ROM trên chíp vì nó có OK byte ROM trên
chíp. Để sử dụng chíp này ta phải bổ xung ROM ngoài cho nó. ROM ngoài
phải chứa chương trình mà 8031 sẽ nạp và thực hiện. So với 8051 mà
chương trình được chứa trong ROM trên chíp bị giới hạn bởi 4K byte, còn
ROM ngoài chứa chương trinh được gắn vào 8031 thì có thể lớn đến 64K
byte. Khi bổ xung cổng, như vậy chỉ còn lại 2 cổng để thao tác. Để giải
quyết vấn đề này ta có thể bổ xung cổng vào - ra cho 8031. Phối phép 8031
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -5-
với bộ nhớ và cổng vào - ra chẳng hạn với chíp 8255. Ngoài ra còn có các
phiên bản khác nhau về tốc độ của 8031 từ các hãng sản xuất khác nhau.
3. Các bộ vi điều khiển 8051 từ các hãng khác nhau.
Mặc dù 8051 là thành viên phổi biến nhất của họ 8051 nhưng chúng
ta sẽ thấy nó trong kho linh kiện. Đó là do 8051 có dưới nhiều dạng kiểu
bộ nhớ khác nhau như UV - PROM, Flash và NV - RAM mà chúng đều có
số đăng ký linh kiện khác nhau. Phiên bản UV-PROM của 8051 là 8751
Phiên bản Flash ROM được bán bởi nhiều hãng khác nhau chẳng hạn của
Atmel corp với tên gọi là AT89C51 còn phiên bản NV-RAM của 8051 do
Dalas Semi Conductor cung cấp thì được gọi là DS5000. Ngoài ra còn có
phiên bản OTP (khả trình một lần) của 8051 được sản xuất bởi rất nhiều
hãng.
3.1. Bộ vi điều khiển 8751
Chíp 8751 chỉ có 4K byte bộ nhớ UV-EPROM trên chíp. Để sử dụng
chíp này để phát triển yêu cầu truy cập đến một bộ đốt PROM cũng như bộ
xoá UV- EPROM để xoá nội dung của bộ nhớ UV-EPROM bên trong 8751
trước khi ta có thể lập trình lại nó. Do một thực tế là ROM trên chíp đối với
8751 là UV-EPROM nên cần phải mất 20 phút để xoá 8751 trước khi nó có
thể được lập trình trở lại. Điều này đã dẫn đến nhiều nhà sản xuất giới thiệu
các phiên bản FLASH ROM và UV-RAM của 8051. Ngoài ra còn có nhiều
phiên bản với các tốc độ khác nhau của 8751 từ nhiều hãng khác nhau.
3.2. Bộ vi điều khiển AT8951 từ Atmel Corporation.
Chíp 8051 phổ biến này có ROM trên chíp ở dạng bộ nhớ Flash.
Điều này là lý tưởng đối với những phát triển nhanh vì bộ nhớ Flash có thể
được xoá trong vài giây trong tương quan so với 20 phút hoặc hơn mà 8751
yêu cầu. Vì lý do này mà AT89C51 để phát triển một hệ thống dựa trên bộ
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -6-
vi điều khiển yêu cầu một bộ đốt ROM mà có hỗ trợ bộ nhớ Flash. Tuy
nhiên lại không yêu cầu bộ xoá ROM. Lưu ý rằng trong bộ nhớ Flash ta
phải xoá toàn bộ nội dung của ROM nhằm để lập trình lại cho nó. Việc xoá
bộ nhớ Flash được thực hiện bởi chính bộ đốt PROM và đây chính là lý do
tại sao lại không cần đến bộ xoá. Để loại trừ nhu cầu đối với một bộ đốt
PROM hãng Atmel đang nghiên cứu một phiên bản của AT 89C51 có thể
được lập trình qua cổng truyền thông COM của máy tính IBM PC .
Số linh kiện ROM RAM Chân I/O Timer Ngắt Vcc Đóng vỏ
AT89C51 4K 128 32 2 6 5V 40
AT89LV51 4K 128 32 2 6 3V 40
AT89C1051 1K 64 15 1 3 3V 20
AT89C2051 2K 128 15 2 6 3V 20
AT89C52 8K 256 32 3 8 5V 40
AT89LV52 8K 128 32 3 8 3V 40
Bảng 1.3: Các phiên bản của 8051 từ Atmel (Flash ROM).
Chữ C trong ký hiệu AT89C51 là CMOS.
Cũng có những phiên bản đóng vỏ và tốc độ khác nhau của những
sản phẩm trên đây xem bảng 1.4. Ví dụ để ý rằng chữ “C” đứng trước số 51
trong AT 89C51 -12PC là ký hiệu cho CMOS “12” ký hiệu cho 12 MHZ và
“P” là kiểu đóng vỏ DIP và chữ “C” cuối cùng là ký hiệu cho thương mại
(ngược với chữ “M” là quân sự ). Thông thường AT89C51 - 12PC rất lý
tưởng cho các dự án của học sinh, sinh viên.
Mã linh kiện Tốc độ Số chân Đóng vỏ Mục đích
AT89C51-12PC 42MHZ 40 DTP Thương mại
Bảng 1.4: Các phiên bản 8051 với tốc độ khác nhau của Atmel
3.3. Bộ vi điều khiển DS5000 từ hãng Dallas Semiconductor.
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -7-
Một phiên bản phổ biến khác nữa của 8051 là DS5000 của hãng
Dallas Semiconductor. Bộ nhớ ROM trên chíp của DS5000 ở dưới dạng
NV-RAM. Khả năng đọc/ ghi của nó cho phép chương trình được nạp vào
ROM trên chíp trong khi nó vẫn ở trong hệ thống (không cần phải lấy ra).
Điều này còn có thể được thực hiện thông qua cổng nối tiếp của máy tính
IBM PC. Việc nạp chương trình trong hệ thống (in-system) của DS5000
thông qua cổng nối tiếp của PC làm cho nó trở thành một hệ thống phát
triển tại chỗ lý tưởng. Một ưu việt của NV-RAM là khả năng thay đổi nội
dung của ROM theo từng byte tại một thời điểm. Điều này tương phản với
bộ nhớ Flash và EPROM mà bộ nhớ của chúng phải được xoá sạch trước
khi lập trình lại cho chúng.
Mã linh kiện ROM RAM Chân I/O Timer Ngắt Vcc Đóng vỏ
DS5000-8
DS5000-32
DS5000T-8
DS5000T-8
8K
32K
8K
32K
128
128
128
128
32
32
32
32
2
2
2
2
6
6
6
6
5V
5V
5V
5V
40
40
40
40
Bảng 1.5: Các phiên bản 8051 từ hãng Dallas Semiconductor.
Chữ “T” đứng sau 5000 là có đồng hồ thời gian thực.
Lưu ý rằng đồng hồ thời gian thực RTC là khác với bộ định thời
Timer. RTC tạo và giữ thời gian l phút giờ, ngày, tháng - năm kể cả khi tắt
nguồn.
Còn có nhiều phiên bản DS5000 với những tốc độ và kiểu đóng gói
khác nhau. Ví dụ DS5000-8-8 có 8K NV-RAM và tốc độ 8MHZ. Thông
thường DS5000-8-12 hoặc DS5000T-8-12 là lý tưởng đối với các dự án
của sinh viên.
Mã linh kiện NV- RAM Tốc độ
DS5000-8-8 8K 8MHz
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -8-
DS5000-8-12
DS5000-32-8
DS5000T-32-12
DS5000-32-12
DS5000-8-12
8K
32K
32K
32K
8K
12MHz
8MHz
8MHz (with RTC)
12MHz
12MHz (with RTC)
Bảng 1.6: Một số thành viên của họ 8051
3.4. Phiên bản OTP của 8051.
Các phiên bản OTP của 8051 là các chíp 8051 có thể lập trình được
một lần và được cung cấp từ nhiều hãng sản xuất khác nhau. Các phiên bản
Flash và NV-RAM thường được dùng để phát triển sản phẩm mẫu. Khi một
sản phẩm được thiết kế và được hoàn thiện tuyệt đối thì phiên bản OTP
của 8051 được dùng để sản hàng loạt vì giá thành một đơn vị sản phẩm sẽ
rẻ hơn.
3.5. Họ 8051 từ Hãng Philips
Một nhà sản xuất chính của họ 8051 khác nữa là Philips Corporation.
Thật vậy, hãng này có một dải lựa chọn rộng lớn cho các bộ vi điều khiển
họ 8051. Nhiều sản phẩm của hãng đã có kèm theo các đặc tính như các bộ
chuyển đổi ADC, DAC, cổng I/0 mở rộng và cả các phiên bản OTP và
Flash.
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -9-
CHƯƠNG II
GIỚI THIỆU VI ĐIỀU KHIỂN AT89C51
1. Sơ Đồ Khối Của Vi Điều Khiển AT89C51
P1.0 - P1.7
PORT 1
LATCH
ALU
PORT 1 DRIVE
P0.0 - P0.7
PORT 0 DRIVE
RAM ADD
REGISTER
ALE/PROG
RST
EA/Vpp
PSEN
INTRUCTION
REGISTER
OSC
TIMING
AND
CONTROL
PSW
B
REGISTER
TMP2
ACC
RAM
GND
Vcc
P3.0 - P3.7
PORT 2
LATCH
PORT 0
LATCH
INTERRUPT SERIAL PORT
AND TIMER BLOCKS
PORT 3
LATCH
PORT 3 DRIVE
TMP1
STACK
POINTER
FLASH
DPTR
PROGRAM
COUNTER
PC
INCREMENTER
BUFFER
PROGRAM
ADDRESS
REGISTER
P2.0 - P2.7
PORT 0 DRIVE
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -10-
Hình 2.1: Sơ Đồ Khối Của Vi Điều Khiển AT89C51
2. Đặc Tính Của AT89C51
Chíp AT89C51 chứa trên 60000 Transistor bao gồm 4Kbyte ROM,
128Byte RAM, 32 đường xuất nhập, 1 Port nối tiếp và 2 bộ định thời 16
bit. Một số lượng mạch đáng chú ý trong IC đơn. Các thành viên mới được
thêm vào cho họ MCS-51 và các biến thể này gần như có gấp đôi các đặc
trưng này. Tập đoàn Seimens, nguồn sản xuất thứ hai các bộ vi điều khiển
thuộc họ MCS-50 cung cấp Chíp SAB80515, một cải tiến của 8051 chứa
trong một vỏ 68 chân, có 6 Port xuất nhập 8-bit, 13 nguồn tạo ra ngắt và
một bộ biến đổi A/D 8-bit với 8 kênh ngõ vào. Họ 8051 là một trong những
bộ vi điều khiển 8-bit mạnh và linh hoạt nhất, đã trở thành bộ vi điều khiển
hàng đầu trong những năm gần đây.
- Cụ thể vi điều khiển AT89C51 là 1 IC có tích hợp trên đó hệ vi xử lí.
- IC AT98C51 có 40 chân.
- 4KB ROM trong và có thể ghi xoá được 1000 lần.
- Dải tần số hoạt động từ 0MHz → 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.
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -11-
3. Sơ đồ chân và chức năng các chân của Chíp AT89C51
Hình 2.2: Sơ đồ chân và chức năng các chân của Chíp AT89C51
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 21
22
23
24
27
26
25
28
29
34
30
31
33
32
35
36
37
38
40
39
P 1.0
P 1.1
P 1.2
P 1.3
P 1.4
P 1.5
P 1.6
P 1.7
RST
P 3.0
P 3.1
P 3.2
P 3.3
P 3.4
P 3.5
P 3.6
P 3.7
XTAL 2
XTAL 1
Vss
Vcc
P 0.0
P 0.1
P 0.2
P 0.3
P 0.4
P 0.5
P 0.6
P 0.7
EA
ALE
PSEN
P 2.7
P 2.6
P 2.5
P 2.4
P 2.3
P 2.2
P 2.1
P 2.0
RXD
TXD
LNT 0
LNT 1
T 0
T 1
WR
RD
INTEL
89C51
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -12-
- PORT 0 : Nằm trên các chân từ 32 đến 39 có 2 công dụng. Trong
các thiết kế có tối thiểu thành phần thì Port 0 được sử dụng làm nhiệm vụ
xuất/nhập. Trong các thiết kế lớn hơn có bộ nhớ ngoài, Port 0 trở thành Bus
địa chỉ và Bus dữ liệu đa hợp..
- PORT 1 : Nằm trên các chân 1 đến 8, chỉ có một cộng dụng là để
gao tiếp với thiết bị ngoài khi có yêu cầu.
- PORT 2 : Nằm trên các chân 21 đến 28 có 2 công dụng hoặc làm
nhiệm vụ xuất/nhập hoặc là Byte địa chỉ cao của BUS địa chỉ 16 bit cho
các thiết kế có nhiều hơn 256Byte bộ nhớ dữ liệu ngoài.
- PORT 3 : Nằm trên các chân 10 đến 17 có 2 công dụng. một là
chức năng xuất/nhập bình thường còn khi không hoạt động xuất nhập các
chân của PORT 3 có nhiều chức năng riêng . Cụ thể các chức năng của các
chân ở PORT 3 như sau :
Bit Tên Địa chỉ Bit Chức năng
P 3.0 RxD B0H Nhận dữ liệu của Port nối tiếp
P 3.1 TxD B1H Phát dữ liệu của Port nối tiếp.
P3.2 INT 0 B2H Ngõ vào ngắt ngoài 0
P 3.3 INT 1 B3H Ngõ vào ngắt ngoài 1
P 3.4 T 0 B4H Ngõ vào của bộ định thời/đếm 0.
P 3.5 T 1 B5H Ngõ vào của bộ định thời/đếm 1
P 3.6 WR B6H Điều khiển ghi bộ nhớ dữ liệu ngoài.
P 3.7 RD B7H Điều khiển đọc bộ nhớ dữ liệu ngoài.
Bảng 2.1: Các chức năng của PORT 3
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -13-
- Chân cho phép bộ nhớ chương trình PSEN
8051 Cung cấp cho ta 4 tín hiệu điều khiển BUS. Tín hiệu cho phép
bộ nhớ chương trình PSEN (Program Store Enable) là tín hiệu xuất trên
chân 29. Đây là tín hiệu điều khiển cho phép ta truy xuất bộ nhớ chương
trình ngoài. Chân này thường được nối với chân cho phép xuất OE ( Output
Enable) của EPROM hoặc ROM để cho phép đọc các Byte lệnh.
Tín hiệu PSEN ở mức Logic 0 trong suất thời gian tìm nạp lệnh, các
mã nhị phân của chương trình hay mã thao tác (Opcode) được đọc từ
EPROM qua BUS dữ liệu và được chốt vào thanh ghi IR của 8051 để được
giải mã.
Khi thực thi một chương trình chứa ở ROM nội PSEN được duy trì
ở mức Logic tích cực 1.
- Chân cho phép chốt địa chỉ ALE.
Chân này nằm trên chân 30 của 8051 là chân xuất tín hiệu cho phép
chốt địa chỉ ALE (Address Latch Enable) để giải đa hợp. Bus dữ liệu và
Bus địa chỉ. Khi Port 0 được sử dụng làm Bus địa chỉ/dữ liệu đa hợp chân
ALE xuất tín hiệu để chôt địa chỉ ( Byte thấp của địa chỉ 16bit) vào một
thanh ghi ngoài trong suốt 1/2 đầu chu kỳ bộ nhớ. Sau khi điều này đã được
thực hiện các chân của Port 0 sẽ xuất nhập dữ liệu hợp lệ trong suốt 1/2 thứ
2 của chu kỳ bộ nhớ.
Tín hiệu ALE có tần số bằng 1/6 tần số của mạch dao động bên trong
vi điều khiển và có thể được dùng làm xung Clock cho phần còn lại của hệ
thống. Nếu mạch dao động có tần số 12MHz, tín hiệu ALE có tần số
2MHz. Ngoại lệ duy nhất là trong thời gian thực thi lệnh MOVX, một xung
ALE sẽ bị bỏ qua. Chân ALE còn được dùng để nhận xung ngõ vào lập
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -14-
trình cho EPROM trên CHIP đối với các phiên bản của 8051 có EPROM
này.
- Chân truy xuất ngoài EA.
Ngõ vào này ở chân 31 có thể được nối với nguồn +5V (Logic 1)
hoặc GND (Logic 0). Nếu chân này nối lên 5V , 8051/8052 thực thi
chương trình trong ROM nội( chương trình nhỏ hơn 4K/8K). Nếu chân này
nối với GND( và chân PSEN cũng ở mức Logic 0), chương trình cần thực
thi chứa ở bộ nhớ ngoài. Đối với 8031/8032 chân EA phải ở mức Logic 0
vì chúng không có bộ nhớ chương trình trên CHIP. Nếu chân EA ở mức
Logic 0 đối với 8051/8052, ROM nội bên trong CHIP được vô hiệu hoá và
chương trình cần thực thi chứa ở EPROM bên ngoài.
Các phiên bản EPROM của 8051 còn sử dụng chân EA làm chân
nhận điện áp cấp nguồn 21VPP cho việc lập trình EPROM nội ( Nạp
EPROM).
- Chân RESET ( RST).
Ngõ vào RST ở chân 9 là ngõ vào xoá chính (Master reset) của 8051
dùng để thiết lập lại trạng thái ban đầu cho hệ thống hay còn gọi tắt là
Reset hệ thống. Khi ngõ vào này được treo ở mức Logic 1 tối thiểu hai chu
kỳ máy , các thanh ghi bên trong của 8051 được nạp các giá trị thích hợp
cho việc khởi động lại hệ thống.
- Các chân thạch anh XTAL 1 và XTAL 2.
Nằm trên chân 18 và 19 của CHIP, 2 chân này được dùng để nối với
thạch anh ngoài nhằm tái tạo dao động và xác định tần số làm việc cho
mạch dao động ở bên trong CHIP. Kết hợp với thạch anh có thêm 2 tụ gốm
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -15-
để ổn định tần số dao động. Tần số danh định của thạch anh là 12MHz cho
hầu hết các CHIP của họ MCS - 51.
Hình 2.3: Mạch dao động Thạch Anh XTAL 1 và XTAL 2
Hoặc ta cũng có thể dùng một nguồn xung CLOCK TTL để tạo dao
động cho 8051 như mạch sau :
Hình 2.4: Mạch dao động
4. Cấu trúc của PORT In/Out.
Oscillator
18 19
X1
12MHz C2
30pF
C1
30pF
IC 1
8051
IC 1
8051
19
18
TTL
Oscillator
74LS04
Oscillator
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -16-
- Sơ đồ cấu trúc bên trong của chân PORT xuất/nhập như sau :
Hình 2.5: Cấu trúc của PORT In/Out
Việc ghi đến 1 chân của Port sẽ nạp dư liệu vào bộ chốt của Port,
ngõ ra Q của bộ chốt điều khiển một Transistor trường và Transistor này
nối với chân của Port. Khả năng phân chia đầu ra (Fan - out) của các Port
1, 2 và 3 là 4 tải vi mạch TTL loại Schottky công suất thấp (LS) còn của
Port 0 là 8 tải loại LS.
Lưu ý là điện trở kéo lên (Pull Up) không có ở Port 0 ( trừ khi port này làm
nhiệm vụ của Port địa chỉ dữ liệu đa hợp) Do vậy phải nối thêm một điện
trở kéo lên bên ngoài cho Port 0.
Giá trị điện trở này phụ thuộc vào đặc tính ngõ vào của thành phần ghép
nối với chân của Port.
Ở đây ta thấy có 2 khả năng " Đọc bộ chốt" và "Đọc chân port". Các lệnh
yêu cầu thao tác đọc - sửa - ghi, đọc bộ chốt để tránh nhầm mức điện áp do
sự hiểu nhầm điện áp do sự kiện dòng tải tăng. Các lệnh nhập một Bit của
Port, đọc chân port. Trong trường hợp này bộ chốt của port phải chứa 1 nếu
không FET sẽ được kích bão hoà và điều này kéo ngõ ra xuống mức thấp.
Việc Reset hệ thống sẽ set tất cả các bộ chốt port. Do vậy các chân port có
thể được dùng làm các ngõ nhập mà không cần phải SET các bộ chốt port
một cách tường minh. Tuy nhiên nếu một bộ chốt port bị xoá (như CLR
VDD
QD
Write
to Latch
Read
latch
Read
pin
Interrnal
Pull-up
Port
Latch
Porrt
pin
8051 Internal bus
Tổng quan Vi điều khiển họ 8051 Đồ án tốt
nghiệp
Hoàng Quang Lý -17-
P1.5). Chân Port không thể làm nhiệm vụ tiếp theo là ngõ nhập trừ khi
trước tiên ta phải SET bộ chốt ( như SETB P1.5).
5. Tổ chức bộ nhớ
7F
77
6F
67
5F
56
4F
47
3F
37
2F
27
1F
17
0F
07
7E
76
6E
66
5E
56
4E
46
3E
36
2E
26
1E
16
0E
06
7D
75
6D
65
5D
55
4D
45
3D
35
2D
25
1D
15
0D
05
7C
74
6C
64
5C
54
4C
44
3C
34
2C
24
1C
14
0C
04
7B
73
6B
63
5B
53
4B
43
3B
33
2B
23
1B
13
0B
03
7A
72
6A
62
5A
52
4A
42
3A
32
2A
22
1A
12
0A
02
79
71
69
61
59
51
49
41
39
31
29
21
19
11
09
01
78
70
68
60
58
50
48
40
38
30
28
20
18
10
08
00
2F
2E
2D
2C
2B
2A
29
28
27
26
25
24
23
22
21
20
1F
18
17
10
0F
08
07
00
BANK 3
BANK 2
BANK 1
Defauk register
Bank for R0 - R7
30
7F
Vïng RAM ®a dông
(General Purpose RAM)
RAM
(CÊu tróc RAM néi)
87 86 85 84 83 82 81 80
Not