Bài giảng Vi xử lý - Vi điều khiển - Nguyễn Hữu Công
MỤC LỤC
CHƯƠNG 1. TỔNG QUAN VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN . 9
1.1 GIỚI THIỆU CHUNG VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN.10
1.1.1 Tổng quan.10
1.1.2 Lịch sử phát triển của các bộ xử lý.11
1.1.3 Vi xử lý và vi điều khiển .12
1.1.4 Ứng dụng của Vi xử lý – vi điều khiển .13
1.2 Cấu trúc chung của hệ vi xử lý.15
1.2.1 Khối xử lý trung tâm (CPU) .16
1.2.2 Hệ thống bus.17
1.3 Định dạng dữ liệu và biểu diễn thông tin trong hệ vi xử lý – vi điều khiển .18
1.3.1 Các hệ đếm .18
1.3.2 Mã ký tự - Alphanumeric CODE (ASCII, EBCDIC).20
1.3.3 Các phép toán số học trên hệ đếm nhị phân .22
CHƯƠNG 2. HỌ VI XỬ LÝ INTEL 80x86. 23
2.1 Cấu trúc phần cứng của bộ vi xử lý 8086 .24
2.1.1 Tổng quan.24
2.1.2 Cấu trúc bên trong và sự hoạt động.24
2.1.3 Mô tả chức năng các chân .31
2.2 Chế độ địa chỉ.31
2.2.1 Khái niệm chế độ địa chỉ.31
2.2.2 Các chế độ địa chỉ.34
2.3 Tập lệnh Assembly .37
2.3.1 Giới thiệu chung .37
2.3.2 Các nhóm lệnh.38
2.4 Lập trình hợp ngữ (Assembly) cho vi xử lý 80x86.54
2.4.1 Giới thiệu chung về hợp ngữ .54
2.4.2 Các bước khi lập trình .55
2.4.3 Cấu trúc chung của chương trình hợp ngữ .57
2.4.4 Các cấu trúc điều khiển cơ bản.69
2.4.5 Ngắt trong Assembly.72
2.4.6 Các ví dụ.74
2.5 Ghép nối bộ nhớ và thiết bi ngoại vi .80
2.5.1 Ghép nối bộ nhớ .80
2.5.2 Giải mã địa chỉ.81
2.5.3 Ghép nối thiết bị ngoại vi .84
2.5.4 Các kiểu giao tiếp vào / ra .84
2.5.5 Giải mã địa chỉ cho thiết bị vào / ra.84
2.5.6 Các mạch cổng đơn giản .85
Vi mạch chốt 74LS373:.85
2.6 Câu hỏi và bài tập.86
CHƯƠNG 3. HỌ VI ĐIỀU KHIỂN 8051. 89
3.1 Giới thiệu chung .90
3.1.1 Ứng dụng của vi điều khiển.91
3.1.2 Hoạt động của vi điều khiển.91
3.1.3 Cấu trúc chung của vi điều khiển .92
3.2 Kiến trúc vi điều khiển 8051.97
3.2.1 Chuẩn 8051.97
3.2.2 Chân vi điều khiển 8051.99
3.2.3 Cổng vào/ra .100
3.2.4 Tổ chức bộ nhớ 8051.1043.2.5 Các thanh ghi chức năng đặc biệt (SFRs - Special Function Registers) . 109
3.2.6 Bộ đếm và bộ định thời . 113
3.2.7 Truyền thông không đồng bộ (UART). 113
3.2.8 Ngắt vi điều khiển 8051 . 114
3.3 Lập trình hợp ngữ cho 8051 . 114
3.3.1 Các chế độ địa chỉ . 114
3.3.2 Tập lệnh trong 8051 . 116
3.3.3 Cấu trúc chung chương trình hợp ngữ cho 8051. 123
3.4 Bộ đếm và bộ định thời. 126
3.5 Truyền thông nối tiếp. 133
3.6 Xử lý ngắt. 140
3.7 Câu hỏi và bài tập cuối chương. 147
CHƯƠNG 4. ỨNG DỤNG. 151
4.1 Nhấp nháy dãy LED đơn. 152
4.2 Timer . 155
4.3 Sử dụng Timer T2 . 157
4.4 Dùng ngắt ngoài. 158
4.5 Lập trình ngắt ngoài theo sườn xuống. . 159
4.6 Sử dụng LED 7 thanh . 160
4.6.1 Hiển thị số trên 1 LED 7 thanh . 160
4.6.2 Hiển thị trên nhiều LED 7 thanh . 161
4.7 Thông báo bằng văn bản trên màn hình LCD. 164
4.8 Nhận dữ liệu qua UART. 169
4.9 Truyền dữ liệu qua UART. 170
4.10 Chương trình con phục vụ truyền thông nối tiếp. 172
4.11 Truyền thông UART cho 8051 bằng phần mềm. 172
4.12 Ghép nối 8051 với ADC0804, chuyển đổi ADC 8-bit. 175
4.13 Ghép nối vi điều khiển với bàn phím. 177
4.14 Ghép nối vi điều khiển với step motor. 179
CHƯƠNG 5. CÁC HỆ VI ĐIỀU KHIỂN TIÊN TIẾN. 191
5.1 Atmel AVR. 192
5.1.1 Lịch sử họ AVR . 192
5.1.2 Tổng quan về thiết bị. 192
5.1.3 Kiến trúc thiết bị. 193
5.1.4 Program Memory (Flash). 193
5.1.5 EEPROM. 193
5.1.6 Chương trình thực thi . 194
5.1.7 Tập lệnh. 194
5.1.8 Tốc độ MCU. 195
5.1.9 Những đặc tính . 195
5.2 Vi điều khiển PIC . 197
5.3 ARM . 200
Tài liệu tham khảo . 205
PHỤ LỤC A: Tập lệnh trong 8051. 206
PHỤ LỤC B: Chi tiết các thanh ghi chức năng trong 8051 . 210
PHỤ LỤC C: Ngắt. 216
Danh mục hình ảnh . 218
Danh mục mã nguồn . 220
Danh mục bảng . 220
Chỉ mục . 221
.................. 103 Bảng 3-2. Các thanh ghi chức năng đặc biệt ..................................................................... 105 Bảng 3-3. Địa chỉ RAM nội 8051 ..................................................................................... 106 Bảng 3-4. ký hiệu sử dụng mô tả lệnh............................................................................... 117 Bảng 3-5. Các lệnh vận chuyển dữ liệu ............................................................................ 120 Bảng 3-6. Các lệnh thao tác bit và đọc cổng.................................................................... 120 Bảng 3-7. Lệnh đọc cổng .................................................................................................. 121 Bảng 3-8. Đọc chốt trong của cổng ra.............................................................................. 121 Bảng 3-9. Nhảy vô điều kiện............................................................................................. 122 Bảng 3-10. Các toán tử...................................................................................................... 124 Bảng 3-11. Chế độ hoạt động của Timer/Counter ............................................................ 127 Bảng 3-12. Một số giá trị thường dùng trong truyền thông nối tiếp ................................. 139 Bộ môn Kỹ thuật máy tính – Khoa Điện tử 221 Trường ĐH Kỹ thuật Công nghiệp Chỉ mục 74LS245 ...............................................85 74LS373 ...............................................85 ACALL...............................................123 Accumulator .......................................109 ADC......................................................39 ADD .....................................................40 ALU......................................................24 AND .....................................................42 ASCII....................................................21 AT89C51 ..............................................99 BCD......................................................18 biến .......................................................63 BIU .......................................................25 Bộ đếm................................................113 bộ định thời.........................................113 bus.........................................................17 Bus địa chỉ ............................................17 Bus điều khiển ......................................17 Bus dữ liệu............................................17 Các bước khi lập trình ..........................55 Các hệ đếm ...........................................18 CALL............................................52, 122 Cấu trúc ................................................24 cấu trúc điều khiển................................69 chế độ địa chỉ ..................................31, 34 CHẾ ĐỘ ĐỊA CHỈ CHUỖI..................36 CHẾ ĐỘ ĐỊA CHỈ CỔNG ...................37 CHẾ ĐỘ ĐỊA CHỈ GIÁN TIẾP...........35 CHẾ ĐỘ ĐỊA CHỈ THANH GHI ........34 CHẾ ĐỘ ĐỊA CHỈ TRỰC TIẾP ..........35 CHẾ ĐỘ ĐỊA CHỈ TỨC THÌ ..............34 CHẾ ĐỘ ĐỊA CHỈ TƯƠNG ĐỐI ........35 Chương trình con..................................65 CMP......................................................46 cờ ..........................................................29 Cổng vào/ra ........................................100 CPU ................................................16, 94 CU.........................................................24 DB.......................................................123 DEC ......................................................40 Delay...................................................153 Địa chỉ chỉ số ......................................115 Địa chỉ gián tiếp..................................115 Địa chỉ theo thanh ghi.........................114 Địa chỉ trực tiếp ..................................115 Địa chỉ tức thời ...................................114 Địa chỉ vật lý ........................................29 DIV .......................................................40 DPTR..................................................111 EEPROM..............................................93 EQU.................................................... 124 EU................................................... 25, 26 FOR ...................................................... 70 Giải mã địa chỉ ..................................... 84 Gray Code ............................................ 19 hằng ...................................................... 63 Hợp ngữ................................................ 54 I/O Ports ............................................... 94 IF – THEN............................................ 69 IN .......................................................... 38 INC ....................................................... 40 INT ....................................................... 53 IRET ..................................................... 53 JA/JNBE............................................... 47 JAE/JNB/JNC....................................... 47 JB/JC/JNAE ......................................... 48 JBE/JNA............................................... 48 JE/JZ..................................................... 49 JMP....................................................... 49 JNE/JNZ ............................................... 50 Khối xử lý trung tâm ...................... 16, 17 Khung chương trình ............................. 62 kiến trúc của một vi xử lý..................... 15 Kiến trúc vi điều khiển 8051 ................ 97 LCALL ............................................... 123 Lệnh bó................................................. 67 LJMP .................................................. 122 LOOP ................................................... 51 LOOPE/LOOPZ ................................... 51 Macro ................................................... 67 máy móc dân dụng ............................... 14 máy tính cổ điển ................................... 15 MODEL................................................ 58 Một số hàm mẫu................................. 153 MOV..................................................... 38 MUL ..................................................... 41 NEG...................................................... 41 Ngắt ...................................................... 72 Ngắt 8051 ........................................... 114 Nhà thông minh .................................... 14 NOP...................................................... 53 NOT...................................................... 42 OR ........................................................ 42 OUT...................................................... 38 PC:Program Counter ............................ 94 PCON ................................................. 112 phần cứng bộ xử lý ............................... 24 POP....................................................... 39 PROC ................................................... 65 PSW.................................................... 110 222 Bộ môn Kỹ thuật máy tính – Khoa Điện tử Trường ĐH Kỹ thuật Công nghiệp PUSH.................................................... 39 quảng cáo.............................................. 14 RAM..................................................... 93 RCL ...................................................... 43 RCR...................................................... 43 Registers ............................................... 24 REPEAT............................................... 71 RET ...................................................... 54 ROL...................................................... 44 ROM..................................................... 92 ROR...................................................... 44 rs232 ................................................... 113 SAL ...................................................... 45 sản phẩm công nghiệp .......................... 14 sản phẩm giải trí ................................... 14 SBUF.................................................. 111 SFR............................................... 94, 109 SHL ...................................................... 45 SHR ...................................................... 45 SJMP .................................................. 122 Sơ đồ chân 8086/8088.......................... 31 Sơ đồ khối hệ vi xử lý .......................... 16 STACK................................................. 60 STC ...................................................... 54 SUB...................................................... 41 Tập lệnh Assembly............................... 37 Tên ..................................................... 124 thanh ghi............................................... 27 thanh ghi chỉ số .................................... 28 thanh ghi đoạn...................................... 28 thiết bị tự động ..................................... 13 thiết bị y tế............................................ 14 Timer Mode........................................ 129 Timer Register.................................... 111 TMOD................................................ 127 Tổ chức bộ nhớ 8051 ......................... 104 Toán tử ................................................. 64 từ khóa................................................ 125 UART................................................. 113 ứng dụng của vi điều khiển .................. 13 Ứng dụng của vi điều khiển ................. 91 WHILE................................................. 70 XOR ..................................................... 46
File đính kèm:
- bai_giang_vi_xu_ly_vi_dieu_khien_nguyen_huu_cong.pdf