Giáo trình mô đun Vi điều khiển 1 - Nghề: Công nghệ kĩ thuật điều khiển và tự động hóa

- 1 -  
CỤC HẢNG HẢI VIỆT NAM  
TRƯỜNG CAO ĐẲNG HÀNG HẢI I  
GIÁO TRÌNH  
MÔ ĐUN:VI ĐIỀU KHIỂN 1  
NGHỀ:CÔNG NGHỆ KT ĐIỀU KHIỂN VÀ TỰ  
ĐỘNG HÓA  
TRÌNH ĐỘ CAO ĐẲNG  
Ban hành kèm theo Quyết định số: /QĐ-TCDN ngày .....tháng..... năm...  
của..........  
Hải Phòng, tháng 2 năm 2018  
- 2 -  
TUYÊN BỐ BẢN QUYỀN  
Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể  
được phép dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và  
tham khảo.  
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh  
doanh thiếu lành mạnh sẽ bị nghiêm cấm.  
- 3 -  
LỜI GIỚI THIỆU  
Giáo trình Mô đun Vi điều khiển 1 là một trong những giáo trình mô  
đun đào tạo chuyên ngành được biên soạn theo nội dung chương trình khung  
được Bộ Lao động - Thương binh và Xã hội và Tổng cục Dạy nghề ban hành  
dành cho hệ Cao đẳng nghề Công nghệ kỹ thuật điều khiển và tự động hóa.  
Nội dung biên soạn ngắn gọn, dễ hiểu, tích hợp kiến thức và kỹ năng  
chặt chẽ với nhau, logíc.  
Nội dung giáo trình được biên soạn với dung lượng thời gian đào tạo 60  
giờ gồm có:  
Bài 1: Giới thiệu bộ vi xử lý tổng quát.  
Bài 2: Cấu trúc họ vi điều khiển 8051.  
Bài 3: Tập lệnh 8051.  
Bài 4: Các hoạt động của bộ định thời.  
Bài 5: Hoạt động của cổng nối tiếp.  
Bài 6: Hoạt động ngắt.  
Bài 7: Phần mềm hợp ngữ.  
Mặc dù đã cố gắng tổ chức biên soạn để đáp ứng được mục tiêu đào  
tạo nhưng không tránh được những khiếm khuyết. Rất mong nhận được đóng  
góp ý kiến của các thầy, cô giáo, bạn đọc để người biên soạn sẽ hiệu chỉnh  
hoàn thiện hơn. Các ý kiến đóng góp xin gửi về Trường Cao đẳng Hàng hải I  
số 498 Đà Nẵng, Hải An, Hải Phòng  
Hải Phòng, ngày tháng năm 2018  
Tham gia biên soạn  
1. Nguyễn Thị Ngọc Hà : Chủ biên  
2. Đặng Thị Thu Huyền  
3. Hà Thị Hồng Thúy  
- 4 -  
MỤC LỤC  
TT  
1
Nội dung  
Trang  
3
Lời giới thiệu  
Mục lục  
2
4
3
Danh mục bảng, biểu, hình ảnh  
Nội dung  
5
4
8
9
Bài 1: Giới thiệu bộ vi xử lý tổng quát.  
Bài 2: Cấu trúc họ vi điều khiển 8051.  
Bài 3: Tập lệnh 8051.  
17  
31  
50  
68  
80  
99  
116  
Bài 4: Các hoạt động của bộ định thời.  
Bài 5: Hoạt động của cổng nối tiếp.  
Bài 6: Hoạt động ngắt.  
Bài 7: Phần mềm hợp ngữ  
5
Tài liệu tham khảo  
- 5 -  
Danh mục bảng biểu  
TT  
Tên hình vẽ  
Trang  
11  
Bảng 1.1: Địa chỉ của một số hãng sản xuất các thành viên vi  
điều khiển  
Bảng 2.1. Các thông số của các họ VĐK thuộc hãng Intel  
(MSC 51)  
1
2
3
20  
20  
Bảng 2.2. Các thông số của các họ VĐK thuộc hãng Atmel  
Bảng 2.3. Sơ đồ chân chức năng của  
Port 3 và Port 1  
4
5
23  
33  
Bảng 3.1 Bảng giá trị của  
Led đặt tại địa chỉ 100h  
Bảng 3.2: Các ký hiệu sử dụng mô tả lệnh  
Bảng 4.1. Timer TMOD  
6
39  
53  
7
Bảng 4.2. Thanh ghi chọn chế độ định thời  
8
54  
Bảng 4.3. Các chế độ định thời  
9
54  
Bảng 4.4. Thanh ghi điều khiển định thời TCON  
Bảng 4.5. chọn chế độ trong Timer 2.  
Bảng 4.6. Nội dung thanh ghi T2CON  
Bảng 4.7 Nội dung thanh ghi T2MOD  
10  
11  
12  
13  
14  
15  
16  
17  
55  
62  
62  
63  
Bảng 5.1. Nội dung thanh ghi BDRCON  
72  
Bảng 5.2. Các bit trong thanh ghi điều khiển truyền dữ liệu.  
74  
Bảng 7.1.Trong hợp ngữ ASM51 có các kiểu toán hạng  
103  
108  
Bảng 7.2. Các toán tử  
Danh mục hình vẽ  
TT  
Tên hình vẽ  
Hình 1.1 Cấu trúc bên trong của vi điều khiển.  
Hình 1.2 Giao tiếp bộ nhớ  
Trang  
1
13  
2
3
4
14  
17  
21  
Hình 2.1 Sơ đồ khối vi điều khiển 8051.  
Hình 2.2 Sơ đồ chân của AT89C51  
Hình 2.3 Sơ đồ kết nối các chân xuất nhập với thiết bị ngoại  
vi  
5
6
22  
24  
Hình 2.4 Ghép nối vi điều khiển 8951 với IC chốt, mạch  
- 6 -  
Reset, tụ thạch anh.  
7
Hình 2.5 Mạch Reset  
25  
26  
26  
27  
8
Hình 2.6 Mạch dao động  
9
Hình 2.7 Lấy tín hiệu dao động bên ngoài  
Hình 2.8 Vào ra với thiết bị ngoại vi  
10  
11  
12  
13  
29  
29  
30  
Hình 2.9 Cho led sáng khi Vi điều khiển xuất ở mức 1  
Hình 2.10 Mạch dùng Trở kéo lên  
Hình 2.11 Mạch dùng cổng đệm  
Hình 3.1 Định địa chỉ bằng thanh ghi  
14  
34  
15  
16  
17  
18  
19  
20  
34  
35  
36  
37  
37  
51  
Hình 3.2 Định địa chỉ trực tiếp  
Hình 3.3 Định địa chỉ gián tiếp  
Hình 3.4 Định địa chỉ tương đối  
Hình 3.5 Định địa chỉ tuyệt đối  
Hình 3.6 Định địa chỉ dài  
Hình 4.1 Hoạt động của Timer 3 bit  
21  
58  
Hình 4.2 Ngắt ngoài  
22 Hình 4.3 Chế độ giữ Timer 2  
23 Hình 4.4 Chế độ tự động lặp lại  
24 Hình 4.5 Chế độ tạo xung clock  
64  
65  
66  
69  
25  
Hình 5.1 Ghép nối RS232 với 8051  
26  
70  
75  
Hình 5.2 Sơ đồ của khối truyền dữ liệu nối tiếp  
Hình 5.3  
27  
28  
29  
30  
Giản đồ thời gian.  
Hình 5.4  
76  
76  
77  
Biểu đồ thời gian truyền dữ liệu mod 0  
Hình 5.5 Một ứng dụng kiểu 0 để tăng thêm ngõ ra bằng  
thanh ghi dịch.  
Hình 5.6 Cung cấp xung cho truyền dữ liệu nối tiếp.  
Hình 5.7 Cờ báo phát xong dữ liệu TI.  
31  
32  
78  
81  
Hình 6.1 Vi điều khiển thực hiện chương trình chính trong 2  
trường hợp không và có ngắt.  
- 7 -  
33  
82  
86  
Hình 6.2 Vi điều khiển 89C52 có 6 nguồn ngắt.  
34  
35  
Hình 6.3 Cấu trúc ngắt của vi điều khiển.  
Hình 6.4 Các tín hiệu điều khiển ngắt  
87  
36 Hình 6.5 Thời gian tối thiểu của ngắt theo mức thấp  
37  
98  
101  
Hình 7.1 Biên dịch một chương trình nguồn  
- 8 -  
GIÁO TRÌNH MÔ ĐUN  
Tên mô đun: Vi điều khiển 1  
Mã mô đun: MĐ 22  
Thời gian của mô đun: 60 giờ. (Lý thuyết: 16 tiết; Thực hành: 40 tiết; Kiểm  
tra: 4 tiết).  
Vị trí, ý nghĩa và vai trò của mô đun:  
- Vị trí của mô đun: Mô đun được bố trí dạy sau khi học xong môn  
học mô đun, môn học kỹ thuật cơ sở  
- Tính chất của mô đun: Là mô đun chuyên môn nghề.  
- ꢀ nghꢁa và vai trò của mô đun: mô đun giúp người học có kiến  
thức về điều khiển hệ thống và thiết bị bằng Vi điều khiển. Là mô đun  
chuyên ngành giúp người học điều khiển hệ thống vi điều khiển thông qua  
các Vi xử lý.  
Mục tiêu của mô đun:  
- Về kiến thức:  
Trình bày được cấu trúc, ứng dụng cả vi điều khiển trong công nghiệp.  
Kiểm tra và viết được các chương trình điều khiển.  
- Về kỹ năng:  
Xác định được các nguyên nhân gây ra hư hỏng xảy ra trong thực  
tế.  
- Về năng lực tự chủ:  
Rèn luyện cho học sinh thái độ nghiêm túc, cẩn thận, chính xác trong  
học tập và thực hiện công việc  
Nội dung của mô đun:  
- 9 -  
BÀI 1: GIỚI THIỆU BỘ VI XỬ LÝ TỔNG QUÁT  
MĐ 6510305.22.01  
Giới thiệu:  
Vi điều khiển được ứng dụng rất rộng rãi hiện nay. Đa số các lꢁnh vực  
đều có thể ứng dụng vi điều khiển. Và đối với nền cơ khí tự động hoá bây giờ  
thì có lẽ nó đã gắn liền với vi xử lý. Vi điều khiển là một câu trúc siêu nhỏ,  
gồm các linh kiện điện tử có kích thước micro hoặc nano kết hợp với nhau, và  
được nối với các thiết bị bên ngoài qua các chân vi điều khiển. Vì vậy hiểu rõ  
cấu trúc của nó, ta sẽ hiểu được mình đang làm việc với cái gì? Và nó hoạt  
động như thế nào?  
Mục tiêu:  
- Trình bày được cấu trúc chung của vi điều khiển.  
- Phát biểu được các ứng dụng của vi điều khiển và hướng phát  
triển của vi điều khiển.  
- Sử dụng vi điều khiển đúng với chức năng của nó.  
Nội dung chính:  
1. Lịch sử phát triển của các hệ vi xử lý .  
- Năm 1976 Intel giới thiệu bộ vi điều khiển (microcontroller) 8748,  
một chip tương tự như các bộ vi xử lý và là chip đầu tiên trong họ MCS-48.  
Độ phức tạp, kích thước và khả năng của Vi điều khiển tăng thêm một bậc  
quan trọng vào năm 1980 khi intel tung ra chip 8051, bộ Vi điều khiển đầu  
tiên của họ MCS-51 và là chuẩn công nghệ cho nhiều họ Vi điều khiển được  
sản xuất sau này. Chip 8051 chứa trên 60000 transistor bao gồm 4K byte  
ROM, 128 byte RAM, 32 đường xuất nhập, 1 port nối tiếp và 2 bộ định thời  
16 bit. Sau đó rất nhiều họ Vi điều khiển của nhiều nhà chế tạo khác nhau lần  
lượt được đưa ra thị trường với tính năng được cải tiến ngày càng mạnh.  
- Hiện nay có rất nhiều họ Vi điều khiển trên thị trường với nhiều ứng  
dụng khác nhau, trong đó họ Vi điều khiển họ MCS-51 được sử dụng rất rộng  
rãi trên thế giới và ở Việt Nam.  
- Vào năm 1980 Intel công bố chíp 8051(80C51), bộ vi điều khiển đầu  
tiên của họ vi điều khiển MCS-51. Nó bao gồm 4KB ROM, 128 byte RAM,  
32 đường xuất nhập, 1 port nối tiếp và 2 bộ định thời 16 bit. Tiếp theo sau đó  
là sự ra đời của chip 8052, 8053, 8055 với nhiều tính năng được cải tiến.  
- 10 -  
- Hiện nay Intel không còn cung cấp các loại Vi điều khiển họ MCS-51  
nữa, thay vào đó các nhà sản xuất khác như Atmel, Philips/signetics, AMD,  
Siemens, Matra&Dallas, Semiconductors được cấp phép làm nhà cung cấp  
thứ hai cho các chip của họ MSC-51. Chip Vi điều khiển được sử dụng rộng  
rãi trên thế giới cũng như ở Việt Nam hiện nay là Vi điều khiển của hãng  
Atmel với nhiều chủng loại vi điều khiển khác nhau.  
Dung lượng RAM  
Dung lượng ROM  
Chế độ nạp  
89C51  
89C52  
89C53  
89C55  
128 byte  
128 byte  
128 byte  
128 byte  
4 Kbyte  
8 Kbyte  
12 Kbyte  
20 Kbyte  
song song  
song song  
song song  
song song  
- Sau khoảng thời gian cải tiến và phát triển, hãng Atmel tung ra thị  
trường dòng Vi điều khiển mang số hiệu 89Sxx với nhiều cải tiến và đặc biệt  
là có thêm khả năng nạp chương trình theo chế độ nối tiếp rất đơn giản và tiện  
lợi cho người sử dụng.  
Dung lượng RAM  
Dung lượng ROM  
Chế độ nạp  
89S51  
89S52  
89S53  
89S55  
128 byte  
128 byte  
128 byte  
128 byte  
4 Kbyte  
8 Kbyte  
12 Kbyte  
20 Kbyte  
nối tiếp  
nối tiếp  
nối tiếp  
nối tiếp  
- Tất cả các Vi điều khiển trên đều có đặc tính cơ bản giống nhau về  
phần mềm (các tập lệnh lập trình như nhau), còn phần cứng được bổ sung với  
chip có mã số ở hai số cuối cao hơn, các Vi điều khiển sau này có nhiều tính  
năng vượt trội hơn Vi điều khiển thế hệ trước. Các Vi điều khiển 89Cxx như  
trong bảng 1 có cấu tạo ROM và RAM như 98Sxx trong bảng 2, tuy nhiên  
98Sxx được bổ sung một số tính năng và có thêm chế độ nạp nối tiếp.  
- 8051 là bộ vi điều khiển 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 thành các dữ liệu 8 bit để xử lý.  
- 8051 đã trở nên phổ biến sau khi Intel cho phép các nhà sản xuất khác  
(Siemens, Atmel, Philips, AMD, Matra, Dallas, Semiconductor …) sản xuất và  
bán bất kỳ dạng biến thể nào của 8051 mà họ muốn với điều kiện họ phải để  
- 11 -  
mã chương trình tương thích với 8051. Từ đó dẫn đến sự ra đời của nhiều  
phiên bản của 8051 với các tốc độ và dung lượng ROM trên chip khác nhau.  
- Tuy nhiên, điều quan trọng là mặc dù có nhiều biến thể của 8051,  
cũng như khác nhau về tốc độ, dung lượng ROM 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 là nếu chương trình được  
viết cho một phiên bản 8051 nào đó thì cũng sẽ chạy được với mọi phiên bản  
khác không phụ thuộc vào hãng sản xuất.  
- Các loại vi điều khiển khác: vi điều khiển AVR, vi điều khiển PIC, vi  
điều khiển MCUs của Philips,...Ngoài ra, các loại vi điều khiển chuyên dụng  
của các hãng sản xuất khác: các loại vi điều khiển này được sử dụng chuyên  
dụng theo chức năng cần điều khiển.  
Bảng 1.1: Địa chỉ của một số hãng sản xuất các thành viên vi điều khiển  
Hãng  
Địa chỉ Website  
Intel  
Antel  
Philips/Signetis  
Siemens  
Dallas Semiconductor  
2. Vi điều khiển  
2.1. Cấu tạo vi điều khiển  
- Vi điều khiển là một máy tính được tích hợp trên một chíp, nó thường  
được sử dụng để điều khiển các thiết bị điện tử. Vi điều khiển thực chất gồm  
một vi xử lý có hiệu suất đủ cao và giá thành thấp (so với các vi xử lý đa năng  
dùng trong máy tính) kết hợp với các thiết bị ngoại vi như các bộ nhớ, các mô  
đun vào/ra, các mô đun biến đổi từ số sang tương tự và từ tương tự sang số,  
mô đun điều chế độ rộng xung (PWM)...  
- Vi điều khiển thường được dùng để xây dựng hệ thống nhúng. Nó  
xuất hiện nhiều trong các dụng cụ điện tử, thiết bị điện, máy giặt, lò vi sóng,  
điện thoại, dây truyền tự động...  
- Hầu hết các loại vi điều khiển hiện nay có cấu trúc Harvard là loại cấu  
trúc mà bộ nhớ chương trình và bộ nhớ dữ liệu được phân biệt riêng.  
- Cấu trúc của một vi điều khiển gồm CPU, bộ nhớ chương trình (thường  
là bộ nhớ ROM hoặc bộ nhớ Flash), bộ nhớ dữ liệu (RAM), các bộ định thời,  
các cổng vào/ra để giao tiếp với các thiết bị bên ngoài, tất cả các khối này  
được tích hợp trên một vi mạch.  
Các loại vi điều khiển trên thị trường hiện nay:  
- VDK MCS-51: 8031, 8032, 8051, 8052,...  
- 12 -  
- VDK ATMEL: 89Cxx, AT89Cxx51...  
- VDK AVR AT90Sxxxx  
- VDK PIC 16C5x, 17C43...  
2.2 Nguyên lý hoạt động của vi điều khiển  
Mặc dù đã có rất nhiều họ vi điều khiển được phát triển cũng như nhiều  
chương trình điều khiển tạo ra cho chúng, nhưng tất cả chúng vẫn có một số  
điểm chung cơ bản. Do đó nếu ta hiểu cặn kẽ một họ thì việc tìm hiểu  
thêm một họ vi điều khiển mới là hoàn toàn đơn giản. Một kịch bản chung  
cho hoạt động của một vi điều khiển như sau:  
- Khi không có nguồn điện cung cấp, vi điều khiển chỉ là một con  
chip có chương trình nạp sẵn vào trong đó và không có hoạt động gì xảy ra.  
- Khi có nguồn điện, mọi hoạt động bắt đầu được xảy ra với tốc độ  
cao. Đơn vị điều khiển logic có nhiệm vụ điều khiển tất cả mọi hoạt động. Nó  
khóa tất cả các mạch khác, trừ mạch giao động thạch anh. Sau vài mili giây  
đầu tiên tất cả đã sẵn sàng hoạt động.  
- Điện áp nguồn nuôi đạt đến giá trị tối đa của nó và tần số giao  
động trở nên ổn định. Các bit của các thanh ghi SFR cho biết trạng thái của  
tất cả các mạch trong vi điều khiển. Toàn bộ vi điều khiển hoạt động theo chu  
kỳ của chuỗi xung chính.  
- Thanh ghi bộ đếm chương trình (Program Counter) được xóa về 0.  
Câu lệnh từ địa chỉ này được gửi tới bộ giải mã lệnh sau đó được thực thi ngay  
lập tức.  
- Giá trị trong thanh ghi PC được tăng lên 1 và toàn bộ quá trình  
được lặp lại vài … triệu lần trong một giây.  
Các kiểu cấu trúc bộ nhớ (Hình 1.1)  
- 13 -  
Hình 1.1. Cấu trúc bên trong của vi điều khiển.  
- Memory (bộ nhớ): là ROM/RAM lưu trữ chương trình hay các kết  
quả trung gian.  
Read Only Memory (ROM): Read Only Memory (ROM) là một  
loại bộ nhớ được sử dụng để lưu vꢁnh viễn các chương trình được thực thi.  
Kích cỡ của chương trình có thể được viết phụ thuộc vào kích cỡ của bộ nhớ  
này. ROM có thể được tích hợp trong vi điều khiển hay thêm vào như là một  
chip gắn bên ngoài, tùy thuộc vào loại vi điều khiển. Cả hai tùy chọn có một  
số nhược điểm. Nếu ROM được thêm vào như là một chip bên ngoài, các vi  
điều khiển là rẻ hơn và các chương trình có thể tồn tại lâu hơn đáng kể. Đồng  
thời, làm giảm số lượng các chân vào/ra để vi điều khiển sử dụng với mục  
- 14 -  
đích khác. ROM nội thường là nhỏ hơn và đắt tiền hơn, nhưng có thêm lá  
ghim sẵn để kết nối với môi trường ngoại vi. Kích thước của dãy ROM từ  
512B đến 64KB.  
Random Access Memory (RAM): Random Access Memory (RAM)  
là một loại bộ nhớ sử dụng cho các dữ liệu lưu trữ tạm thời và kết quả trung  
gian được tạo ra và được sử dụng trong quá trình hoạt động của bộ vi điều  
khiển. Nội dung của bộ nhớ này bị xóa một khi nguồn cung cấp bị tắt.  
- Electrically Erasable Programmable ROM (EEPROM) (hình 1.2)  
EEPROM là một kiểu đặc biệt của bộ nhớ chỉ có ở một số loại vi điều khiển.  
Nội dung của nó có thể được thay đổi trong quá trình thực hiện chương trình  
(tương tự như RAM), nhưng vẫn còn lưu giữ vꢁnh viễn, ngay cả sau  
khi mất điện (tương tự như ROM). Nó thường được dùng để lưu trữ các  
giá trị được tạo ra và được sử dụng trong quá trình hoạt động (như các giá trị  
hiệu chuẩn, mã, các giá trị để đếm, v.v..), mà cần phải được lưu sau khi  
nguồn cung cấp ngắt. Một bất lợi của bộ nhớ này là quá trình ghi vào  
tương đối chậm.  
Hình 1.2. Giao tiếp bộ nhớ  
- Bộ đếm chương trình (PC:Program Counter): Bộ đếm chương trình  
chứa địa chỉ chỉ đến ô nhớ chứa câu lệnh tiếp theo sẽ được kích hoạt.  
hức năng  
Sau mỗi khi thực hiện lệnh, giá trị của bộ đếm được tăng lên 1. C  
của  
CPU là tiến hành các thao tác tính toán xử lý, đưa ra các tín hiệu địa  
chỉ, dữ liệu và điều khiển nhằm thực hiện một nhiệm vụ nào đó do người lập  
trình đưa ra thông qua các lệnh (Instructions).  
hức năng  
- CPU-Central Processing Unit(Đơn vị xử lý trung tâm): C  
của  
CPU là tiến hành các thao tác tính toán xử lý, đưa ra các tín hiệu địa  
chỉ, dữ liệu và điều khiển nhằm thực hiện một nhiệm vụ nào đó do người lập  
trình đưa ra thông qua các lệnh (Instructions).  
- 15 -  
Bộ giải mã lệnh có nhiệm vụ nhận dạng câu lệnh và điều khiển các  
mạch khác theo lệnh đã giải mã. Việc giải mã được thực hiện nhờ có tập lệnh  
“instruction set”. Mỗi họ vi điều khiển thường có các tập lệnh khác nhau.  
Thanh ghi tích lũy (Accumulator) là một thanh ghi SFR liên  
quan mật thiết với hoạt động của ALU. Nó lưu trữ tất cả các dữ liệu cho quá  
trình tính toán và lưu giá trị kết quả để chuẩn bị cho các tính toán tiếp theo.  
Một trong các thanh ghi SFR khác được gọi là thanh ghi trạng thái  
(Status Register) cho biết trạng thái của các giá trị lưu trong thanh ghi tích  
lũy.  
Arithmetical Logical Unit (ALU): Thực thi tất cả các thao tác tính  
toán số học và logic.  
- Các thanh ghi chức năng đặc biệt (SFR): Thanh ghi chức năng đặc  
biệt (Special Function Registers) là một phần của bộ nhớ RAM. Mục đích  
của chúng được định trước bởi nhà sản xuất và không thể thay đổi được. Các  
bit của chúng được liên kết vật lý tới các mạch trong vi điều khiển như bộ  
chuyển đổi A/D, modul truyền thông nối tiếp,… Mỗi sự thay đổi trạng thái  
của các bit sẽ tác động tới hoạt động của vi điều khiển hoặc các vi mạch.  
- Các cổng vào/ra (I/O Ports): Để vi điều khiển có thể hoạt động hữu  
ích, nó cần có sự kết nối với các thiết bị ngoại vi. Mỗi vi điều khiển sẽ có  
một hoặc một số thanh ghi (được gọi là cổng) được kết nối với các chân của  
vi điều khiển. Chúng có thể thay đổi chức năng, chiều vào/ra theo yêu cầu  
của người dùng.  
Address bus(  
địa chỉ): Là các đường tín hiệu song song 1 chiều  
-
Bus  
nối từ  
CPU đến bộ nhớ, CPU gửi giá trị địa chỉ của ô nhớ cần truy nhập  
(đọc/ghi) trên các đường tín hiệu này. Độ rộng của bus địa chỉ là n (là số các  
đường tín hiệu, với n có thể là 8, 18, 20, 24, 32 hay 64), khi đó số ô nhớ mà  
n
CPU có thể địa chỉ hố được sẽ là 2 .  
- Data bus(Bus dữ liệu): Là các đường tín hiệu song song 2 chiều,  
nhiều thiết bị khác nhau có thể được nối với bus dữ liệu, nhưng tại một thời  
điểm chỉ có 1 thiết bị duy nhất có thể được phép đưa dữ liệu lên bus. Độ  
rộng Bus dữ liệu là m(với m có thể là 4, 8, 16, 32 hay 64), khi đó số bit mà  
môi một chu kỳ đọc/ghi có thể truyền trên trên bus là m bits.  
- Control bus(Bus điều khiển): CPU gửi tín hiệu thông qua bus này để  
điều khiển mọi hoạt động của hệ thống. Các tín hiệu điều khiển thường là:  
đọc/ ghi bộ nhớ, đọc/ ghi cổng vào/ra,…  
3. Lĩnh vực và ứng dụng.  
3.1. Sản phẩm dân dụng.  
Nhà thông minh: Cửa tự động, khóa số, tự động điều tiết ánh sáng  
- 16 -  
thông minh (bật/tắt đèn theo thời gian, theo cường độ ánh sáng,...), điều  
khiển các thiết bị từ xa (qua điều khiển, qua tiếng vỗ tay,...),  
điều tiết hơi  
ẩm, điều tiết nhiệt độ, điều tiết không khí, gió. Hệ thống vệ sinh thông minh.  
Các máy móc dân dụng: Máy điều tiết độ ẩm cho vườn cây,buồng  
ấp trứng gà/vịt.Đồng hồ số, đồng hồ số có điều khiển theo thời gian.  
Các sản phẩm giải trí: Máy nghe nhạc, m áy chơi game, Đầu thu kỹ  
thuật số, đầu thu set-top-box,...  
3.2. Trong các thiết bị y tế.  
Máy móc thiết bị hỗ trợ: máy đo nhịp tim, máy đo đường huyết,  
máy đo huyết áp, điện tim đồ, điện não đồ,…  
Máy cắt/mài kính.  
Máy chụp chiếu (city, X-quang,...)  
3.3. Các sản phẩm công nghiệp.  
Điều khiển động cơ  
Đo lường (đo điện áp, đo dòng điện, áp suất, nhiệt độ,...)  
Cân băng tải, cân toa xe, cân ô tô,...  
Điều khiển các dây truyền sản xuất công nghiệp  
Làm bộ điều khiển trung tâm cho Robot  
Câu hỏi:  
Câu 1: Nêu cấu trúc của Vi điều khiển họ 8051?  
Câu 2: Chức năng của thanh ghi ALU?  
Câu 3: Nêu 1 số lꢁnh vực ứng dụng của Vi điều khiển.  
Yêu cầu về đánh giá kết quả học tập:  
Đánh giá về kiến thức: Tự luận  
- 17 -  
BÀI 2: CẤU TRÚC CỦA HỌ VI ĐIỀU KHIỂN 8051  
MĐ 6510305.22.02  
Giới thiệu:  
Vi điều khiển tuy được xây dựng với phần cứng dành cho người sử  
dụng đơn giản hơn, nhưng thay vào lợi điểm này là khả năng xử lý bị giới  
hạn. Vì Vi điều khiển có giá thành rẻ hơn nhiều so với vi xử lý, việc sử dụng  
đơn giản nên nó được ứng dụng rộng rãi vào nhiều ứng dụng có chức năng  
đơn giản, không đòi hỏi tính toán phức tạp. Do đó, để nắm được hoạt động  
của các hệ thống dùng vi điều khiển ta phải tìm hiểu cấu trúc của họ vi điều  
khiển 8051.  
Mục tiêu:  
- Mô tả được cấu trúc họ vi điều khiển chuẩn công nghiệp.  
- Thực hiện truy xuất bộ nhớ dữ liệu, bộ nhớ chương trình đúng qui  
trình kỹ thuật.  
- Thực hiện đúng kỹ thuật phương pháp mở rộng bộ nhớ ngoài.  
- Trình bày được nguyên lý hoạt động của mạch reset.  
Nội dung chính:  
1. Tổng quan  
Hình 2.1. Sơ đồ khối vi điều khiển 8051.  
- 18 -  
Thuật ngữ “8051” được dùng để chỉ rộng rãi các chip của họ MSC-51.Vi  
mạch tổng quát của họ MSC-51 là chip 8051,linh kiện đầu tiên của họ này  
được hãng Intel đưa ra thị trường. MCS-51 bao gồm nhiều phiên bản khác  
nhau, mỗi phiên bản sau tăng thêm một số thanh ghi điều khiển hoạt động  
của MCS-51. Hiện hay nhiều nhà sản xuất IC như Seimens, Advance Micro  
Devices ( AMD ), Fujitsu, Philips, Atmel … được cấp phép làm nhà cung cấp  
thứ hai cho các chip của họ MSC-51. Ở Việt Nam các chip và các biến thể họ  
MSC-51 của hãng Atmel và Philips được sử dụng rộng rãi như : AT89C2051,  
AT89C4051, AT89C51, AT8C52, AT89S52, AT89S8252, AT89S8253,  
P89C51RDxx, P89V51RDxx  
…
Vi điều khiển 8051có 40 chân, mỗi chân có một kí hiệu tên và có các đặc  
trưng như sau :  
-
-
-
-
4KB ROM, 128 byte RAM.  
4 port xuất nhập (I/O port) 8 bit.  
ạch giao tiếp nối tiếp.  
2 bộ định thời 16 bit, m  
Không gian nhớ chương trình ngoài 64K, không gian nhớ dữ liệu  
ngoài 64K.  
- Bộ xử lý bit  
210 vị trí nhớ được định địa chỉ, mỗi vị trí 1 bit nhân/chia  
trong 4µs.  
Tuy nhiên, tuỳ thuộc vào từng họ VĐK của từng hãng sản xuất khác  
nhau mà tính năng cũng như phạm vi ứng dụng của mỗi bộ VĐK là khác  
nhau, và chúng được thể hiện trong các bảng thống kê sau ( bảng 2.1, 2.2):  
ROM  
RAM  
Tốc độ  
Các  
Timer/  
Nguồn  
Họ VĐK  
UART  
(bytes)  
(bytes)  
(MHz)  
chân I/O Counter  
ngắt  
8051  
8031AH  
8051AH  
8051AHP  
8751H  
ROMLESS  
4K ROM  
128  
128  
128  
128  
128  
12  
12  
12  
12  
12  
32  
32  
32  
32  
32  
2
2
2
2
2
1
1
1
1
1
5
5
5
5
5
4K ROM  
4K EPROM  
4K EPROM  
8751BH  
8052  
ROMLESS  
8K ROM  
256  
256  
256  
12  
12  
12  
32  
32  
32  
32  
3
3
1
1
1
6
6
6
8032AH  
8052AH  
8752BH  
80C51  
8K EPROM  
3
- 19 -  
ROMLESS  
4K ROM  
4K ROM  
128  
128  
128  
12,16  
12,16  
12,16  
32  
32  
32  
2
2
2
1
1
1
5
5
5
80C31BH  
80C51BH  
80C31BH  
P
4K EPROM  
128  
12,16,20,2  
4
32  
2
1
5
87C51  
8xC52/54/58  
ROMLESS  
12,16,20,2  
256  
256  
256  
256  
256  
32  
32  
32  
32  
32  
3
3
3
3
3
1
1
1
1
1
6
6
6
6
6
80C32  
80C52  
87C52  
80C54  
87C54  
4
8K ROM  
12,16,20,2  
4
8K EPROM  
16K ROM  
16K EPROM  
12,16,20,2  
4
12,16,20,2  
4
12,16,20,2  
4
ROM  
RAM  
Tốc độ  
Các  
Timer/  
Nguồn  
ngắt  
Họ VĐK  
UART  
(bytes)  
(bytes)  
(MHz)  
chân I/O Counter  
32K ROM  
12,16,20,2  
256  
256  
32  
32  
3
3
1
1
6
6
80C58  
87C58  
4
12,16,20,2  
4
32K EPROM  
8xL52/54/58  
12,16,20  
12,16,20  
80L52  
87L52  
80L54  
87L54  
8K ROM  
8K OTP  
ROM  
256  
256  
32  
32  
3
3
1
1
6
6
12,16,20  
12,16,20  
16K ROM  
16K OTP  
ROM  
256  
256  
32  
32  
3
3
1
1
6
6
- 20 -  
12,16,20  
12,16,20  
80L58  
87L58  
…
32K ROM  
32K OTP  
ROM  
256  
256  
32  
32  
3
3
1
1
6
6
Bảng 2.1. Các thông số của các họ VĐK thuộc hãng Intel (MSC 51)  
Bộ nhớ chương Bộ nhớ dữ liệu  
Timer  
16 bit  
Công  
Họ VĐK  
trình (Bytes)  
(Bytes)  
nghệ  
AT89C1051  
1K Flash  
64 RAM  
1
CMOS  
AT89C2051  
AT89C51  
AT89C52  
AT89C55  
AT89S8252  
2K Flash  
4K Flash  
8K Flash  
20K Flash  
8K Flash  
128 RAM  
128 RAM  
256 RAM  
256 RAM  
2
2
3
3
CMOS  
CMOS  
CMOS  
CMOS  
CMOS  
256 RAM + 2K 3  
EEPROM  
AT89S53  
12K Flash  
256 RAM  
3
CMOS  
Bảng 2.2. Các thông số của các họ VĐK thuộc hãng Atmel  
2. Sơ đồ chân vi điều khiển 8051:  
Mặc dù các thành viên của họ MSC-51 có nhiều kiểu đóng vỏ khác nhau,  
chẳng hạn như: hai hàng chân DIP (Dual in-Line Pakage), dạng vỏ dẹp vuông  
và dạng chíp không có chân đỡ LLC (Leadless Chip Carrier). Họ MSC-51 có  
40 chân thực hiện các chức năng khác nhau như: vào ra (I/O), đọc, ghi, địa  
chỉ, dữ liệu và ngắt. Tuy nhiên, trong khuôn khổ chương trình chỉ khảo sát Vi  
điều khiển 40 chân dạng DIP ( hình 2.2).  
Tải về để xem bản đầy đủ
pdf 116 trang yennguyen 23920 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình mô đun Vi điều khiển 1 - Nghề: Công nghệ kĩ thuật điều khiển và tự động hóa", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_mo_dun_vi_dieu_khien_1_nghe_cong_nghe_ki_thuat_di.pdf