Giáo trình Mô đun Vi điều khiển - Nghề Điện công nghiệp

- 1 -  
- 2 -  
BỘ LAO ĐỘNG THƯƠNG BINH VÀ XÃ HỘI  
TỔNG CỤC DẠY NGHỀ  
GIÁO TRÌNH  
Mô đun: VI ĐIỀU KHIỂN  
NGHỀ: ĐIỆN TỬ CÔNG NGHIỆP  
TRÌNH ĐỘ : CAO ĐẲNG  
Ban hành kèm theo Quyết định số:120/QĐ-TCDN ngày 25 tháng 02 năm  
2013 của Tổng cục trưởng Tổng cục Dạy nghề  
Năm 2013  
- 3 -  
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.  
- 4 -  
LỜI GIỚI THIỆU  
Để thực hiện biên soạn giáo trình đào tạo nghề Điện tử công nghiệp ở  
trình độ CĐN và TCN, giáo trình Mô đun Vi điều khiển 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ề và Trung Cấp Nghề Điện tử  
công nghiệp.  
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.  
Khi biên soạn, nhóm biên soạn đã cố gắng cập nhật những kiến thức  
mới có liên quan đến nội dung chương trình đào tạo và phù hợp với mục tiêu  
đào tạo, nội dung lý thuyết và thực hành được biên soạn gắn với nhu cầu thực  
tế trong sản xuất đồng thời có tính thực tiễn cao. Nội dung giáo trình được  
biên soạn với dung lượng thời gian đào tạo 150 giờ gồm có:  
Bài MĐ25-01: Sơ lược về lịch sử và hướng phát triển của vi điều khiển.  
Bài MĐ25-02: Cấu trúc họ vi điều khiển 8051.  
Bài MĐ25-03: Tập lệnh 8051.  
Bài MĐ25-04: Bộ định thời.  
Bài MĐ25-05: Cổng nối tiếp.  
Bài MĐ25-06: Ngắt.  
Bài MĐ25-07: Phần mềm hợp ngữ.  
Trong quá trình sử dụng giáo trình, tuỳ theo yêu cầu cũng như khoa học  
và công nghệ phát triển có thể điều chỉnh thời gian và bổ sung những kiên  
thức mới cho phù hợp. Trong giáo trình, chúng tôi có đề ra nội dung thực tập  
của từng bài để người học cũng cố và áp dụng kiến thức phù hợp với kỹ năng.  
Tuy nhiên, tùy theo điều kiện cơ sở vật chất và trang thiết bị, các  
trường có thề sử dụng cho phù hợp. 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 để nhóm  
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 nghề Lilama 2, Long Thành Đồng Nai  
Đồng Nai, ngày 10 tháng 06 năm 2013  
Tham gia biên soạn  
1. Chủ biên :TS. Lê Văn Hiền  
2. Kỹ sư Lê Văn Hùng  
3. Kỹ sư Nguyễn Văn Tuấn  
 
- 5 -  
MỤC LỤC  
TRANG  
- 6 -  
- 7 -  
- 8 -  
TÀI LIỆU THAM KHẢO……………………………………….... ...-240-  
- 9 -  
MÔ ĐUN VI ĐIỀU KHIỂN  
Mã mô đun: MĐ 25  
Vị trí, tính chất, ý 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: Kỹ thuật xung số điện tử cơ bản, điện tử nâng cao, điện tử  
công suất, và học trước môn vi mạch số lập trình..  
- Tính chất của mô đun: Là mô đun chuyên môn nghề.  
- Ý nghĩa của mô đun: mô đun giúp ngườu học có kiến thức về điều  
khiển hệ thống va thiết bị bằng Vi đều khiển.  
- Vai trò của mô đun: Là mô đun chuyên ngành giúp người học điều  
Vi khiển hệ thống thông qua các Vi xử lý.  
Mục tiêu của mô đun:  
- Vận hành được các thiết bị và dây chuyền sản xuất dùng vi điều  
khiển.  
- Xác định được các nguyên nhân gây ra hư hỏng xảy ra trong thực  
tế.  
- Kiểm tra và viết được các chương trình điều kiển.  
❖ 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:  
- Vận hành được các thiết bị và dây chuyền sản xuất dùng vi điều  
khiển.  
- Xác định được các nguyên nhân gây ra hư hỏng xảy ra trong thực  
tế.  
❖ Về thái độ:  
- 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:  
Thời gian  
Mã bài Tên các bài trong mô đun  
Tổng  
số  
Lý  
thuyết  
Thực Kiểm  
Hành tra  
- 10 -  
Sơ lược về lịch sử và hướng  
MĐ25- phát triển của vi điều khiển  
01  
4
1
4
1
1.  
2.  
3.  
4.  
Lịch sử phát triển  
Vi điều khiển  
1
1
1
1
1
7
Lĩnh vực và ứng dụng  
Hướng phát triển  
1
10  
3
MĐ25- Cấu trúc họ vi điều khiển 8051  
02  
1
1
1
1
1
1
1
1
1
1
1.  
2.  
3.  
4.  
5.  
Tổng quan  
Sơ đồ chân  
Cấu trúc Port I/O  
Tổ chức bộ nhớ  
Các thanh ghi chức năng đặc  
biệt  
- 11 -  
1
1
6.  
7.  
8.  
9.  
Bộ nhớ ngoài  
0,5  
0,5  
3
0,5  
0,5  
Các cải tiến của 8032/8052  
Hoạt động Reset  
3
Thực hành ứng dụng  
Tập lệnh 8051  
30  
7
22  
1
MĐ25-  
03  
1
4
1
2
4
1.  
2.  
3.  
4.  
Mở đầu  
Các cách định địa chỉ  
Các nhóm lệnh  
Luyện tập  
2
5
1
1
20  
30  
20  
20  
9
MĐ25-  
Bộ định thời  
04  
1
1
1
1
1.  
2.  
Mở đầu  
Thanh ghi SFR của timer  
- 12 -  
2
2
2
2
3.  
4.  
Các chế độ làm việc  
Nguồn cung cấp xung cho  
Timer  
1
1
1
5.  
6.  
Khởi động, dừng, điều khiển  
1
2
Timer  
1
Khởi tạo và truy xuất thanh  
ghi Timer  
1
7.  
8.  
Timer 2 của 8052  
Luyện tập  
20  
30  
20  
23  
6
1
MĐ25-  
Cổng nối tiếp  
05  
1
1
2
2
1
1
1
1
1.  
2.  
3.  
4.  
Mở đầu  
Thanh ghi điều khiển  
Chế độ làm việc  
1
1
Khởi tạo và truy suất thanh  
ghi PORT nối tiếp  
- 13 -  
2
1
1
1
1
1
5.  
6.  
7.  
Truyền thông đa xử lý  
Tốc độ BAUD  
Luyện tập  
Ngắt  
20  
30  
20  
21  
8
1
MĐ25-  
06  
1
2
1
3
1
2
1
2
1.  
2.  
3.  
4.  
Mở đầu  
Tổ chức ngắt của 8051  
Xử lý ngắt  
1
Thiết kế chương trình dùng  
ngắt  
1
1
1
1
5.  
6.  
7.  
8.  
Ngắt cổng nối tiếp  
Các cổng ngắt ngoài  
Đồ thị thời gian của ngắt  
Luyện tập  
1
1
20  
20  
- 14 -  
16  
6
9
1
MĐ25-  
Phần mềm hợp ngữ  
Mở đầu  
07  
1
1
1
2
1
1
1.  
2.  
3.  
4.  
Hoạt động của ASSEMBLER  
Cấu trúc chương trình dữ liệu  
1
1
1
Tính biểu thức trong khi hợp  
dịch  
2
0,5  
1,5  
0,5  
5.  
Các điều khiển của  
ASSEMBLER  
2
2
1
0,5  
0,5  
6.  
7.  
8.  
Hoạt động liên kết  
MACRO  
1,5  
5
5
Luyện tập  
150  
45  
100  
5
Tổng cộng  
 
- 15 -  
BÀI 1  
SƠ LƯỢC VỀ LỊCH SỬ VÀ HƯỚNG PHÁT TRIỂN CỦA  
VI ĐIỀU KHIỂN  
Mã bài: MĐ25-01  
Giới thiệu:  
Trong những thập niên cuối thế kỷ XX, từ sự ra đời của công nghệ bán  
dẫn, kỹ thuật điện tử đã có sự phát triển vượt bậc. Các thiết bị điện tử sau đó  
đã được tích hợp với mật độ cao và rất cao trong các diện tích nhỏ,nhờ vậy  
các thiết bị nhỏ hơn và nhiều chức năng hơn. Các thiết bị điện tử ngày càng  
nhiều chức năng trong khi giá thành ngày càng rẻ hơn, chính vì vậy điện tử có  
mặt khắp nơi. Bước đột phát mới trong kỹ thuật điện tử là tạo ra một thiết bị  
điện tử mới là Vi điều khiển.  
Một bộ vi điều khiển (microcontroller) được xem như là “một máy tính  
trong một chip” – nó là một mạch điện tích hợp trên một chip, có thể lập trình  
được, dùng để điều khiển hoạt động của một hệ thống.  
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.  
Nội dung chính:  
1. Lịch sử xuất hiện bộ vi điều khiển 8051.  
Mục tiêu:  
- Trình bày được lịch sử hình thành và quá trình phát triển của họ vi  
điều khiển 8051.  
- Trình bày được cấu trúc chung của vi điều khiển.  
Nội dung:  
- 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  
     
- 16 -  
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.  
- 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.  
- Hãng Atmel có các chip Vi điều khiển có tính năng tương tự như chip  
Vi điều khiển MCS-51 của Intel, các mã số chip được thay đổi chút ít khi  
được Atmel sản xuất. Mã số 80 chuyển thành 89, chẳng hạn 80C52 của Intel  
khi sản xuất ở Atmel mã số thành 89C52 (Mã số đầy đủ: AT89C52) với tính  
năng chương trình tương tự như nhau. Tương tự 8051,8053,8055 có mã số  
tương đương ở Atmel là 89C51,89C53,89C55. Vi điều khiển Atmel sau này  
ngày càng được cải tiến và được bổ sung thêm nhiều chức năng tiện lợi hơn  
cho người dùng.  
Bảng 1  
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.  
- 17 -  
Bảng 2  
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 để  
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 3: Đị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  
 
- 18 -  
2. Vi điều khiển (microcontroller).  
Mục tiêu : Hiểu được cấu trúc bên trong và nguyên lý hoạt động của bộ vi  
điều khiển 8051.  
2.1. Nguyên lý, cấu tạo.  
2.1.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,...  
- VDK ATMEL: 89Cxx, AT89Cxx51...  
- VDK AVR AT90Sxxxx  
- VDK PIC 16C5x, 17C43...  
2.1.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.  
 
- 19 -  
- Đ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)  
Hình 1.1. Cấu trúc bên trong của vi điều khiển.  
- 20 -  
- 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  
đí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ớ  
Tải về để xem bản đầy đủ
docx 241 trang Hứa Trọng Đạt 09/01/2024 7120 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 - Nghề Điện công nghiệp", để 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:

  • docxgiao_trinh_mo_dun_vi_dieu_khien_nghe_dien_cong_nghiep.docx