Tải bản đầy đủ (.pdf) (5 trang)

đồ án thiết kế chế tạo và điều khiển tay máy, chương 7 pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (204.73 KB, 5 trang )

Thiết kế, chế tạo và điều khiển tay máy Trang 51

7
VI XỬ LÝ
AT89C2051
7.1 GIỚI THIỆU VỀ AT89C2051
AT89C2051 là chip thuộc họ vi xử lý MCS-51 do hãng Atmel sản xuất.
Chip AT89C2051 có các đặc tính kỹ thuật sau:
o 2k flash ROM, 128 byte RAM.
o 15 đường xuất nhập.
o 1 port nối tiếp và hai bộ đònh thời 16 bit.
o 6 nguồn tạo ngắt.
o Một bộ so áp (Voltage Comparator).
Ngoài ra so với chip AT89C51 (loại chip thường dùng phổ biến hiện nay)
thì chip AT89C2051 có kích thước nhỏ gọn hơn (chỉ có 20 chân), dòng tải ở các
chân xuất nhập cao (20mA). Còn về tập lệnh thì nó hoàn toàn giống AT89C51,
do vậy cách viết chương trình ta có thể tham khảo ở chip AT89C51 [Sách họ vi
điều khiển 8051 của Tống Văn On và Hoàng Đức Hải].
AT89C2051 còn được thiết kế có thể hoạt động ngay cả khi tần số xuống
tới zero và nó còn cung cấp cho hai chế độ chọn mode tiết kiệm năng lượng
bằng phần mềm. Ở chế độ nghỉ (IDLE), thì CPU sẽ ngưng hoạt động trong khi
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng

Thiết kế, chế tạo và điều khiển tay máy Trang 52

cho phép RAM, bộ đònh thời, cổng nối tiếp, ngắt tiếp tục hoạt động. Còn ở chế
độ nguồn giảm (Power Down) thì nội dung của RAM được lưu, còn bộ giao động
thì “đóng băng” cho đến khi có một tín hiệu (mức cao trong 2 chu kỳ máy) ở
chân Reset.
7.2 MÔ TẢ CÁC CHÂN CỦA AT89C2051


Hình 7.1 Cấu hình chân ra của chip AT89C2051
o Chân VCC
Chân cung cấp điện.
o GND
Chân nối mass.
o Port 1
Là port xuất nhập 8-bit hai chiều. P1.2-P1.7 thì có điện trở pull up ở bên
trong, còn P1.0 và P1.1 đòi hỏi phải có điện trở pull up khi được sử dụng làm
ngõ xuất tín hiệu. Còn khi dùng làm ngõ nhập thì chúng lần lượt trở thành các
ngõ vào đảo và không đảo của bộ so áp. Port 1 còn được dùng để đưa mã lập
trình cho chip cũng như đọc nội dung của chip.
o Port 3
Là port xuất nhập 7-bit hai chiều đã có sẵn điện trở pull up ở bên trong. P3.6
là ngõ ra của bộ so áp, nhưng không thể sử dụng như một chân xuất nhập
bình thường mà phải thông qua phần mềm. Port 3 ngoài được dùng như các
chân chức năng (nối tiếp, ngắt) còn được dùng để đưa các tín hiệu điều khiển
để lập trình cho chip.
o RST
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng

Thiết kế, chế tạo và điều khiển tay máy Trang 53

Ngõ vào reset. AT89C2051 sẽ bò reset khi chân này được đưa lên mức cao
trong hai chu kỳ máy.
o XTAL1
Ngõ vào đến mạch khuếch đại đảo của mạch dao động và ngõ vào đến mạch
tạo xung clock bên trong chip.
o XTAL2
Ngõ ra từ mạch khuếch đại đảo của mạch dao động.
7.3 SƠ ĐỒ VÀ NGUYÊN LÝ NẠP CHƯƠNG TRÌNH CHO AT89C2051

Trong luận văn này để thuận tiện cho việc lập trình cho AT89C2051, chúng
ta cần làm một mạch nạp cho AT89C2051 bằng cổng song song thông qua 8255
và chương trình nạp được viết bằng Visual Basic. So với cách lập trình thông
thường bằng cổng nối tiếp thì cách lập trình này nhanh hơn nhiều.
7.3.1 Sơ đồ mạch nạp cho AT89C2051
BASE1
A0
/WR
/RD
/RD
U2
AT89C2051
1
5
4
12
13
14
15
16
17
18
19
2
3
6
7
8
9
11

RST/VPP
XTAL1
XTAL2
P1.0/AIN0
P1.1/AIN1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P3.0/RXD
P3.1/TXD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.7
A1
VB1
SUB-D 25
13
25
12
24
11
23
10
22
9

21
8
20
7
19
6
18
5
17
4
16
3
15
2
14
1
A0
/WR
U1
8255
34
33
32
31
30
29
28
27
4
3

2
1
40
39
38
37
18
19
20
21
22
23
24
25
14
15
16
17
13
12
11
10
5
36
9
8
35
6
D0
D1

D2
D3
D4
D5
D6
D7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7

RD
WR
A0
A1
RESET
CS
BASE2
VPP
A1

D3
D6
D4
D5
D4
D0
D2
D7
D2
D0
D7
D3
D1
D6
D1
D5
Hình 7.2 Sơ đồ nguyên lý mạch nạp AT89C2051 bằng cổng song song
GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng

Thiết kế, chế tạo và điều khiển tay máy Trang 54


0
R7
1k
Q1
2N1069
0
10uF
0
100uF
R6
1k
VPP
0
10uF
0
R8
1k
2
1
3
VOUT
ADJ
VIN
Q2
Q2N2906A
0
LM7805
1
2

3
IN OUT
GND
BASE2
R1
1k
V1
15V
0
R5
10k
BASE1
5V
0

Hình 7.3 Sơ đồ nguyên lý mạch nguồn cho mạch nạp
7.3.2 Nguyên lý nạp chương trình cho AT89C2051
Để nạp chương trình cho chip, trước hết ta cần phải xóa nội dung của nó
(để toàn bộ nội dung của nó là FFh). Bên trong chip có một biến đếm đòa chỉ của
PEROM, biến này được reset về 00h khi có tín hiệu reset ở chân RST và tăng
lên một khi có một xung dương được kích ở chân XTAL1.
Để lập trình cho chip AT89C2051 ta làm theo các bước sau:
1. Cấp nguồn cho chân VCC và GND, cho chân RST và chân XTAL1 xuống
mức thấp.
2. Cho chân RST và chân P3.2 lên mức cao.
3. Cung cấp các chân chọn mode lên các chân P3.3, P3.4, P3.5, P3.7 theo
bảng 7.1.
4. Đưa dữ liệu lập trình ra Port1 của chip.
5. Cho chân RST lên mức áp lập trình là 12V.
6. Cấp một xung lên chân P3.2, lúc này quá trình đưa mã lập trình vào chíp

được bắt đầu, thời gian này mất khoảng 1.2 ms. Ở đây ta chờ khoảng 1.25
ms cho an toàn (không dùng chế độ đọc lại để kiểm tra mà ta sẽ kiểm tra
sau khi lập trình).
7. Cấp xung lên chân XTAL1 để tăng đòa chi lên vò trí kế tiếp, tiếp tục đưa
dữ liệu lập trình mới ra port1.
8. Lặp lại bước 6 cho tới khi biến đếm đòa chi PEROM đến 2K hoặc đến hết
chương trình cần nạp.
9. Cho chân XTAL1 và chân RST xuống mức thấp.
10. Ta cho đọc lại toàn bộ nội dung chip và so sánh với dữ liệu cần nạp và
đưa ra thông báo cho người sử dụng biết kết quả.

GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng

Thiết kế, chế tạo và điều khiển tay máy Trang 55


Bảng 7.1 Bảng các mode lập trình
Chế độ RST/VPP P3.2/nPROG P3.3 P3.4 P3.5 P3.7
Ghi mã 12V L H H H
Đọc mã H H L L H H
Bit-1 12V H H H H Ghi
khóa
Bit-2 12V H H L L
Xóa chip 12V H L L L
Đọc byte dấu
hiệu
H H L L L L
• Chú ý:
- Lệnh xóa chip yêu cầu độ rộng xung nPROG là 10ms.
- Chân P3.1 được kéo xuống thấp khi dữ liệu được nạp vào chip để chỉ

ra rằng CPU đang bận. Ta có thể đọc chân này thay cho việc chờ
1.25ms.
- Ở chế độ đọc nội dung của chip, thì dữ liệu nội dung của chip được
đọc ở port1.
7.4 KẾT LUẬN
Chương này chúng ta đã tìm hiểu về chip vi xử lý AT89C2051, là loại chip
khá thông dụng, có kích thước nhỏ, thuận tiện cho việc dùng trong các ứng dụng
mà không đòi hỏi phải dùng nhiều chân (như giải mã, phát hồng ngoại, giải mã
bàn phím, …). Một trong những ứng dụng dùng AT89C2051 để điều khiển là giải
mã hiển thò LCD sẽ được trình bày trong chương tiếp theo đây.

GVHD: TS. NGUYỄN VĂN GIÁP SVTH: Nguyễn Nhật Tân-Nguyễn Lê Tùng

×