BỘ CÔNG THƯƠNG
TRƯỜNG CAO ĐẲNG CÔNG NGHIỆP VÀ XÂY DỰNG
BÀI GIẢNG MÔN HỌC
VI ĐIỀU KHIỂN
(Lưu hành nội bộ)
Người biên soạn: Lưu Thế Mạnh
Uông Bí, năm 2010
- 1 -
Bài 1 : Giới thiệu về vi điều khiển 8051...................................................- 3 -
1.1. Mô tả chung...................................................................................- 3 -
1.2. Sơ đồ khối họ vi điều khiển 8051 .................................................- 3 -
1.3. Sơ đồ chân và chức năng...............................................................- 4 -
1.4. Tổ chức bộ nhớ..............................................................................- 6 -
1.5. Tập lệnh.........................................................................................- 7 -
1.6. Bộ đếm/bộ định thời......................................................................- 8 -
1.7. Ngắt ...............................................................................................- 9 -
Bài 2 : Ngôn ngữ lập trình và phần mềm biên dịch, mô phỏng Keil C.- 11 -
Phần 1 – Ngôn ngữ C với lập trình vđk.................................................- 11 -
2.1.1. Cấu trúc một chương trình .......................................................- 11 -
2.1.2.Các loại biến trong C:................................................................- 12 -
2.1.3. Hàm trong C:............................................................................- 13 -
2.1.4. Các toán tử cơ bản :..................................................................- 14 -
2.1.5. Các cấu trúc lệnh rẽ nhánh, kiểm tra thường dùng: .................- 15 -
2.1.6. Bộ tiền xử lí..............................................................................- 15 -
Phần 2: Trình biên dịch cách sử dụng Keil C uVision 3.0....................- 17 -
2.2.1.Khởi tạo cho Project:.................................................................- 17 -
2.2.2 Soạn thảo chương trình: ............................................................- 37 -
2.2.3 Dịch chương trình: ....................................................................- 42 -
2.2.4. Chạy mô phỏng và sửa lỗi........................................................- 47 -
Bài toán 1: Bài toán ghép nối vi điều khiển với các led đơn.............- 55 -
Bài toán 2 : Phối hợp led-công tắc(1).................................................- 58 -
Bài Toán 3:Phối hợp led-công tắc(2).................................................- 60 -
Bài toán 4:...........................................................................................- 63 -
Bài 4: Ghép nối và thao tác với màn hình LCD...................................- 67 -
4.1. Lắp mạch theo sơ đồ sau:............................................................- 67 -
4.2. Nguyên lí hoạt động của LCD: ...................................................- 68 -
4.3. Lập trình : ....................................................................................- 70 -
Bài 5: Ngắt của vi điều khiển, thao tác với ngắt ngoài của vi điều khiển- 75 -
5.1. Khái niệm:.......................................................................................- 75 -
5.2. Trình tự thực hiện ngắt của vi điều khiển.......................................- 75 -
5.2.1.Các ngắt của vi điều khiển 8051 ...............................................- 75 -
5.2.2. Ngắt ngoài và cách lập trình.....................................................- 76 -
5.3. Các bài toán ứng dụng ngắt ngoài của vđk .................................- 76 -
Bài 6 : Bộ định thời của VĐK và ngắt định thời..................................- 81 -
6.1. Cơ sở lý thuyết................................................................................- 81 -
6.1.1. Bộ định thời của vi điều khiển là gì. ........................................- 81 -
6.1.2. Thanh ghi chứa, thanh ghi thiết lập chế độ cho bộ định thời...- 81 -
6.1.3. Cơ chế tạo trễ của bộ định thời và cách tính toán giá trị nạp cho bộ
định thời..............................................................................................- 82 -
6.1.4. Ngắt của bộ định thời ...............................................................- 83 -
6.2.Các bài toán minh họa. ....................................................................- 84 -
6.3. Bàn phím ma trận 4x4.....................................................................- 91 -
- 2 -
6.3.1. Lắp mạch theo sơ đồ sau..........................................................- 91 -
6.3.2: Nguyên lí quét phím:...............................................................- 91 -
6.3.3. Chúng ta có thể sử dụng theo sơ đồ thuật toán thứ 2 sau:........- 92 -
Bài7: BỘ ĐẾM CỦA VĐK 8051 (Counter)..........................................- 97 -
7.1. Ý nghĩa thực tiễn của các bộ đếm (Counter)..................................- 97 -
7.2. Cơ sở lý thuyết và lập trình vi điều khiển 8051 thành một bộ đếm.- 98 -
7.3. Bài toán lập trình minh họa ..........................................................- 100 -
Bài8: ĐIỀU KHIỂN TỐC Đ ĐỘNG CƠ ĐIỀU KHIỂN QUÁ TRÌNH
VỚI BĂNG TẢI.....................................................................................- 113 -
8.1.Điều khiển tốc độ động cơ một chiều............................................- 113 -
8.2. Điều khiển tốc độ động cơ theo quá trình.....................................- 114 -
- 3 -
Bài 1 : Giới thiệu về vi điều khiển 8051.
1.1. Mô tả chung
- Họ vi điều khiển 8051 có các đặc trưng được tóm tắt như sau:
+ Bộ nhớ có thể lập trình lại.
+ 4 KB ROM.
+ 128 byte RAM.
+ 4 cổng vào/ra (I/O port) 8-bit.
+ 2 bộ định thời 16-bit.
+ Cổng giao tiếp nối tiếp.
+ Không gian nhớ chương trình (mã) ngoài 64 Kb.
+ Không gian dữ liệu ngoài 64 Kb.
+ Bộ xử lý bit (thao tác trên các bit riêng rẽ).
+ 210 vị trí nhớ được định địa chỉ, mỗi vị trí 1 bit.
+ Nhân/chia trong 4 µs.
1.2. Sơ đồ khối họ vi điều khiển 8051
Hình sau đây cho thấy sơ đồ khối của vi điều khiển 8051
- 4 -
Hình 1. Sơ đồ khối họ vi điều khiển 8051
1.3. Sơ đồ chân và chức năng
1.3.1. Sơ đồ chân
Hình 2: Bố trí chân của họ 8051.
1.3.2. Mô tả chân
- Cổng P0: Bình thường đây là cổng ra. Để có thể vừa làm đầu ra, vừa làm
đầu vào thì mỗi chân của P0 phải được nối tới một điện trở treo 10 kΩ bên
ngoài. Sở như vậy cổng P0 dạng cực máng hở, đây là điểm khác với
các cổng P1, P2 và P3. Khi nối 8051 tới bộ nhớ ngoài, P0 trở thành bus địa chỉ
bus dữ liệu dồn kênh để tiết kiệm số chân [byte thấp của bus địa chỉ nếu là
địa chỉ].