Xem mẫu

  1. 1 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.
  2. 2 LỜI GIỚI THIỆU Để thực hiện biên soạn giáo trình đào tạo nghề Cơ Điện tử ở trình độ Cao đẳng và Trung cấp, giáo trình Mô đun Lập trình 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 chi tiết mô đun lập trình vi điều khiển. 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 60 giờ gồm có: Bài 1: Cấu trúc của hệ vi xử lý và máy vi tính 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: Bộ định thời Bài 5: Cổng nối tiếp Bài 6: Ngắt 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ị tại trường có thề sử dụng cho phù hợp. Rất mong nhận được đóng góp ý kiến của quý 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ề Khoa Điện tử điện lạnh – Trường Cao đẳng nghề kỹ thuật công nghệ - Tổ 27 thị trấn Đông Anh - Hà Nội. Hà Nội, ngày tháng năm 2019 BAN CHỦ NHIỆM BIÊN SOẠN GIÁO TRÌNH NGHỀ: CƠ ĐIỆN TỬ TRƯỜNG CAO ĐẲNG NGHỀ KỸ THUẬT CÔNG NGHỆ
  3. 3 MỤC LỤC TRANG LỜI GIỚI THIỆU .............................................................................................. 2 BÀI 1: CẤU TRÚC CỦA HỆ VI XỬ LÝ VÀ MÁY TÍNH .......................... 10 1. Lịch sử phát triển các trung tâm vi xử lý .................................................. 10 2. Cấu trúc cơ bản của hệ vi xử lý ................................................................... 11 3. Từ hệ Vi xử lý đến máy vi tính PC ............................................................. 13 3.1. Máy tính xử lý dữ liệu ....................................................................... 14 3.2. Máy tính là bộ xử lý số ...................................................................... 14 3.3. Máy tính đo lường và điều khiển ...................................................... 15 3.4. Căn cứ vào tính năng kỹ thuật và các chỉ tiêu về kích thước ............ 15 BÀI 2: CẤU TRÚC HỌ VI ĐIỀU KHIỂN 8051............................................ 17 1. Tổng quan .................................................................................................... 18 2. Sơ đồ chân ................................................................................................... 21 3. Cấu trúc Port I/O ......................................................................................... 23 3.1. Chức năng các Port I/O ...................................................................... 23 3.1.1. Port 0 .............................................................................................. 23 3.1.2. Port 1 ............................................................................................... 23 3.1.3. Port 2 ............................................................................................... 23 3.1.4. Port 3 ............................................................................................... 23 3.2. Kết nối các Port với led. ..................................................................... 24 4. Tổ chức bộ nhớ ............................................................................................ 26 4.1.Tổng quan tổ chức bộ nhớ................................................................... 26 4.2. Vùng RAM đa năng. .......................................................................... 29 4.3. Vùng RAM định địa chỉ bit................................................................ 29 5. Các thanh ghi chức năng đặc biệt................................................................ 29 5.1. Từ trạng thái chương trình PSW (program status word).................... 29 5.2. Thanh ghi B ........................................................................................ 30 5.3. Con trỏ Stack ...................................................................................... 30 5.4. Con trỏ dữ liệu DPTR ........................................................................ 31 5.5. Các thanh ghi Port nối tiếp ................................................................. 31
  4. 4 5.6. Các thanh ghi định thời ..................................................................... 31 5.7. Các thanh ghi port nối tiếp (Serial Data Buffer) ................................ 31 5.8. Các thanh ghi ngắt .............................................................................. 32 5.9.Thanh ghi điều khiển nguồn PCON ................................................... 32 6. Bộ nhớ ngoài ............................................................................................... 33 6.1. Truy xuất bộ nhớ chương trình ngoài ................................................ 34 6.2. Truy xuất bộ nhớ dữ liệu ngoài ......................................................... 35 6.3.Giải mã địa chỉ .................................................................................... 35 7. Các cải tiến của 8032/8052 ......................................................................... 35 8. Hoạt động Reset .......................................................................................... 35 9. Thực hành ứng dụng.................................................................................... 36 BÀI 3: TẬP LỆNH 8051 ................................................................................. 38 1. Mở đầu......................................................................................................... 38 1.1. Cú pháp lệnh ....................................................................................... 38 1.2. Khai báo dữ liệu .................................................................................. 39 2. Các cách định địa chỉ .................................................................................. 41 2.1. Định địa chỉ bằng thanh ghi ............................................................... 41 2.2. Định địa chỉ trực tiếp ......................................................................... 41 2.3. Định địa chỉ gián tiếp (Indirect Addressing)...................................... 42 2.4. Định địa chỉ tức thời (Immediate Addressing) .................................. 43 2.5. Định địa chỉ tương đối ...................................................................... 44 2.6. Định địa chỉ tuyệt đối......................................................................... 44 2.7. Định địa chỉ dài (Long Addressing)................................................... 45 2.8. Định địa chỉ chỉ số (Index Addressing) ............................................ 45 3. Các nhóm lệnh ............................................................................................. 46 3.1. Nhóm lệnh số học............................................................................... 47 3.2. Nhóm lệnh logic. ................................................................................ 59 3.3. Nhóm lệnh truyền dữ liệu. ................................................................ 69 3.4. Nhóm lệnh boolean. ........................................................................... 75 3.5.Nhóm lệnh rẽ nhánh chương trình. ..................................................... 77 4. Luyện tập ..................................................................................................... 84
  5. 5 BÀI 4: BỘ ĐỊNH THỜI .................................................................................. 86 1. Mở đầu......................................................................................................... 86 2. Thanh ghi SFR của timer ............................................................................ 89 3. Các chế độ làm việc .................................................................................... 91 3.1. Chế độ định thời 13 bit (chế độ 0). .................................................... 91 3.2. Chế độ định thời 16 bit (chế độ 1). .................................................... 91 3.3. Chế độ tự nạp lại 8 bit (chế độ 2). ...................................................... 92 3.4. Chế độ định thời tách biệt timer (chế độ 3). ...................................... 92 4. Nguồn cung cấp xung cho Timer ............................................................... 93 4.1. Chức năng định thời. .......................................................................... 93 4.2.Đếm sự kiện. ....................................................................................... 93 5. Khởi động, dừng, điều khiển Timer ............................................................ 93 6. Khởi tạo và truy xuất thanh ghi Timer ....................................................... 94 6.1. Đọc bộ định thời đang hoạt động. ...................................................... 96 6.2. Thời gian ngắn và thời gian dài. ........................................................ 97 7. Timer 2 của 8052......................................................................................... 98 7.1. Các thanh ghi điều khiển Timer 2. ..................................................... 99 7.2. Chế độ capture.................................................................................. 101 7.3. Chế độ tự động nạp lại. .................................................................... 101 7.4. Chế độ tạo xung clock. ..................................................................... 102 7.5 Chế độ tạo tốc độ baud. .................................................................... 104 BÀI 5: CỔNG NỐI TIẾP .............................................................................. 106 1. Mở đầu....................................................................................................... 106 2. Thanh ghi điều khiển ................................................................................. 108 2.1. Thanh ghi SCON (Serial port controller). ....................................... 108 2.2. Thanh ghi BDRCON (Baud Rate Control Register). ..................... 110 3. Chế độ làm việc ......................................................................................... 110 3.1. Thanh ghi dịch 8 bit (chế độ 0). ...................................................... 112 3.2. Chế độ UART 8 bit có tốc độ baud thay đổi ( chế độ 1). ................ 114 3.3. Chế độ 2: UART 9 bit với tốc độ Baud cố định. ........................... 115
  6. 6 3.4. Chế độ 3: UART 9 bit với tốc độ Baud thay đổi............................ 115 4. Khởi tạo và truy suất thanh ghi PORT nối tiếp ........................................ 116 4.1. Bit điều khiển cho phép nhận dữ liệu (Receive Enable). .............. 116 4.2. Bit dữ liệu thứ 9. .............................................................................. 116 4.3. Thêm vào bit chẵn lẻ Parity ............................................................. 116 4.4. Các cờ ngắt. ...................................................................................... 117 5. Truyền thông đa xử lý ............................................................................... 118 6. Tốc độ BAUD ........................................................................................... 119 6.1. Sử dụng bộ định thời 1 là xung clock tốc độ baud. ......................... 121 6.2. Tạo tốc độ baud bằng Timer 1........................................................ 122 6.3. Tạo tốc độ baud bằng Timer 2........................................................ 125 6.4. Bộ tạo tốc độ baud nội (INT_BRG–Internal Baud Rate Renerator)125 7. Luyện tập ................................................................................................... 126 BÀI 6: NGẮT ................................................................................................ 128 1. Mở đầu....................................................................................................... 128 2. Tổ chức ngắt của 8051 .............................................................................. 130 2.1 Cho phép và không cho phép ngắt: ................................................... 131 2.2 Ưu tiên ngắt. ...................................................................................... 132 2.3. Chuỗi. ............................................................................................... 134 3. Xử lý ngắt .................................................................................................. 136 3.1 Các vector ngắt. ................................................................................. 137 3.2. Ngắt ngoài (External Interrupt). ....................................................... 138 4. Thiết kế chương trình dùng ngắt ............................................................... 138 4.1 Các trình phục vụ ngắt kích thước nhỏ. ............................................ 140 4.2 Các trình phục vụ ngắt kích thước lớn. ............................................. 140 5. Luyện tập ................................................................................................... 142 TÀI LIỆU THAM KHẢO ............................................................................. 145
  7. 7 GIÁO TRÌNH MÔ ĐUN Tên mô đun: Lập trình vi điều khiển Mã môn học/mô đun: MĐ CĐT32 Vị trí, tính chất, ý nghĩa và vai trò của môn học/mô đun: - Vị trí: Trước khi học mô đun này cần hoàn thành các môn học cơ sở và một số môn học chuyên môn, môn học này nên học cuối khóa học. - Tính chất: Là mô đun tích hợp lý thuyết với thực hành. - Ý nghĩa và vai trò của môn học/mô đun: +Ý nghĩa: 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ò: 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ôn học/mô đun: - Về kiến thức: + Trình bày được các khái niệm, kiến thức cơ bản về cấu trúc hệ vi xử lý, vi điều khiển. + Mô tả được cấu trúc họ vi điều khiển chuẩn công nghiệp. - Về kỹ năng: + Lập trình được các bài tập ứng dụng đúng yêu cầu kỹ thuật. - Về thái độ: + Chủ động, sáng tạo và đảm bảo an toàn trong quá trình học tập.
  8. 8 Nội dung của mô đun: Thời gian (giờ) Thực hành, Số Tên các bài trong mô đun Tổng Lý thí nghiệm, Kiểm TT số thuyết thảo luận, tra bài tập 1 Bài 1: Cấu trúc của hệ vi xử lý 2 2 và máy vi tính 1. Lịch sử phát triển các trung tâm vi xử lý: 2. Cấu trúc cơ bản của hệ vi xử lý 3. Từ hệ Vi xử lý đến máy vi tính PC 2 Bài 2: Cấu trúc họ vi điều khiển 9 6 3 8051 1. Tổng quan 2. Sơ đồ chân 3. Cấu trúc Port I/O 4. Tổ chức bộ nhớ 5. Các thanh ghi chức năng đặc biệt 6. Bộ nhớ ngoài 7. Các cải tiến của 8032/8052 8. Hoạt động Reset 9. Thực hành ứng dụng 3 Bài 3: Tập lệnh 8051 10 3 6 1 1. Mở đầu 2. Các cách định địa chỉ 3. Các nhóm lệnh 4. Luyện tập
  9. 9 4 Bài 4: Bộ định thời 12 3 8 1 1. Mở đầu 2. Thanh ghi SFR của timer 3. Các chế độ làm việc 4. Nguồn cung cấp xung cho Timer 5. Khởi động, dừng, điều khiển Timer 6. Khởi tạo và truy xuất thanh ghi Timer 7. Timer 2 của 8052 5 Bài 5: Cổng nối tiếp 12 4 7 1 1. Mở đầu 2. Thanh ghi điều khiển 3. Chế độ làm việc 4. Khởi tạo và truy suất thanh ghi PORT nối tiếp 5. Truyền thông đa xử lý 6. Tốc độ BAUD 7. Luyện tập 6 Bài 6: Ngắt 12 3 9 1. Mở đầu 2. Tổ chức ngắt của 8051 3. Xử lý ngắt 4. Thiết kế chương trình dùng ngắt 5. Luyện tập Thi kết thúc mô đun 3 3 Cộng 60 21 33 6
  10. 10 BÀI 1: CẤU TRÚC CỦA HỆ VI XỬ LÝ VÀ MÁY TÍNH Mã bài: MĐ CĐT32-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 xử lý. Trong bài học này giới thiệu về lịch sử phát triển các trung tâm vi xử lý, cấu trúc cơ bản của hệ vi xử lý và từ hệ Vi xử lý đến máy vi tính PC. Mục tiêu: - Trình bày được lịch sử phát triển các trung tâm vi xử lý - Phân tích được Cấu trúc cơ bản của hệ vi xử lý - Chủ động, sáng tạo và đảm bảo an toàn trong quá trình học tập. Nội dung chính: 1. Lịch sử phát triển các trung tâm vi xử lý Vi xử lý được chế tạo từ các tranzito tích hợp trên một vi mạch tích hợp đơn. Xuất hiện lần đầu tiên vào những năm đầu của thập kỷ 70 của thế kỷ 20. Sử dụng mã BCD trên nền 4 bit. Các vi xử lý 4 bit và 8 bit được sử dụng trong các thiết bị đầu cuối, máy in, các hệ thống tự động... Đến giữa những năm 1970 thì lần đầu tiên các vi xử lý 8 bit với 16 bit địa chỉ được sử dụng như máy tính đa mục đích. Các hãng sản xuất vi xử lý đầu tiên ở thời điểm này là Intel, Texas Instruments và Garrett AiResearch với ba dòng chip tương ứng: Intel 4004, TMS 1000 và Central Air Data Computer. Đây là những vi xử lý 4 bit. Sau sự ra đời của các vi xử lý 4 bit thì các hãng cho ra đời các dòng 8 bit, 12 bit, 16 bit, 32 bit, 64 bit. Intel 8008 là vi xử lý 8 bit đầu tiên trên thế giới được sản xuất năm 1972. Tiếp sau thành công của 8008 là các phiên bản như 8080 (1974), Zilog Z80 (1976). Các vi xử lý của Motorola 6800 được phát hành tháng 8 năm 1974 và MOS technology ra đời năm 1975. Intersil 6100 là vi xử lý 12 bit, từ khi được sản xuất bởi
  11. 11 công ty Harris nó được biết đến với tên HM-6100 được sử dụng trong quân đội suốt thập niên 1980. Vi xử lý 16 bit đầu tiên được giới thiệu bởi hãng National Semiconductor IMP- 16 vào năm 1973 đây là vi xử lý đa chip. Đến năm 1975 hãng này giới thiệp vi xử lý đơn chip đầu tiên. Hãng Texas Instruments ra đời vi xử lý 16 bit đơn chip TI-990 sử dụng như một máy tính mini. Intel cũng cho ra đời dòng vi xử lý 16 bit lấy tên 8086. Vi xử lý 16 bit chỉ xuất hiện trên thị trường một thời gian ngắn thì dòng 32 bit đã bắt đầu xuất hiện. MC6800 là vi xử lý 32 bit đầu tiên của hãng Motorola, họ 68k có 32 bit thanh ghi nhưng sử dụng đường dẫn dữ liệu 16 bit bên trong và 16 bit dữ liệu bên ngoài để giảm số lượng pin, hỗ trợ 24 bit địa chỉ. Motorola thường được biết đến như vi xử lý 16 bit mặc dù nó có cấu trúc 32 bit. Vi xử lý 32 bit đầy đủ đầu tiên là AT&T Bell Labs BELLMAC-32A với mẫu đầu tiên vào năm 1980 và sản xuất năm 1982. Vi xử lý 32 bit đầu tiên của Intel là dòng iAPX 432 được giới thiệu năm 1981 nhưng không thu được thành công. Vi xử lý ARM đầu tiên ra đời năm 1985 với thiết kế RISC viết tắt của reduced instruction set computer máy tính có tập lệnh rút gọn, các vi xử lý ARM được sử dụng chủ yếu trong các điện thoại di động. Vi xử lý 64 bit được thiết kế cho các máy tính cá nhân. Nó được thiết kế vào đầu những năm 1990 đến đầu những năm 2000 chứng kiến vi xử lý 64 bit nhằm vào thị trường máy tính. Vi xử lý AMD 64 bit tương thích ngược với x86, x86-64 còn gọi là AMD64 trong tháng 9 năm 2003, tiếp sau thành công của Intel64. Kỷ nguyên của máy tính 64 bit đã bắt đầu. 2. Cấu trúc cơ bản của hệ vi xử lý Các µP họ 80x86 được phát triển trên cơ sở công nghệ VLSI với các phần tử cơ bản là các transistor trường MOS có độ tiêu hao công suất rất nhỏ. Sơ đồ khối chức năng của µP8086 được thể hiện trên hình 1.1, gồm hai thành phần chủ yếu là đơn vị ghép nối BUS (BIU), đơn vị thực hiện lệnh (EU). Tất cả các thanh ghi và đường truyền dữ liệu trong EU đều có độ dài 16 bits. BIU thực hiện tất các các nhiệm vụ về BUS cho EU: thiết lập khâu liên kết với BUS dữ liệu, BUS địa chỉ và BUS điều khiển. Dữ liệu được trao đổi giữa CPU với bộ nhớ khi EU có yêu cầu, song không được truyền trực tiếp tới EU mà thông qua một vùng nhớ RAM dung lượng nhỏ (6 bytes) được gọi là hàng nhận
  12. 12 lệnh trước (lnstruction Stream Byte Quere PQ - Prefetch Quere) rồi mới được truyền cho hệ thống điều khiển EU (Execution Ung Control System). Khi EU đang thực hiện một lệnh thì BIU đã tìm và lấy lệnh sau đặt sẵn vào PQ. Đây là cơ chế đường ống (pipeline), một kỹ thuật tăng tốc độ cho CPU. Kỹ thuật đường ống sử dụng một vùng nhớ RAM cực nhanh, làm tăng đáng kể tốc độ của bộ Vi xử lý thông qua việc truy tìm lệnh từ bộ nhớ chương trình thay cho sự liên hệ giữa CPU với bộ nhớ chương trình. Riêng với bộ xử lý Pentium, có hai đường ống, một cho các lệnh và mật cho các dữ liệu. Bảng 1.1. Thông số kỹ thuật cơ bản của các trung tâm Vi xử lý họ 80 Loại µp Độ dài Độ rộng Độ rộng Không Tần số thanh BUS địa BUS dữ gian địa cực đại ghi chỉ liệu chỉ 8088 16 bits 20 bits 8 bits 1 MByte 10 MHZ 8086 16 bits 20 bits 16 bits 1 MByte 10 MHZ 80188 16 bits 20 bits 8 bits 1 MByte 10 MHZ 80186 16 bits 20 bits 16 bits 1 MByte 10 MHZ 80286 16 bits 24 bits 16 bits 16Mbytes 16 MHZ 80386SX 32 bits 24 bits 16 bits 16Mbytes 20MHZ 80386DX 32 bits 32 bits 32 bits 4Gbytes 40 MHZ i486 32 bits 32 bits 32 bits 4Gbytes 66 MHZ i486SX 32 bits 32 bits 32 bits 4Gbytes 25 MHZ Pentium (Phiên bản đầu) 32 bits 32 bits 64 bits 4Gbytes 66 MHZ
  13. 13 Hình 1.1. Cấu trúc các khối chức năng µP8086 3. Từ hệ Vi xử lý đến máy vi tính PC Trong thực tế, các hệ Vi xử lý hiện đại được trang bị thêm nhiều thiết bị ngoại vi tiện dụng tuỳ theo yêu cầu, mục đích sử dụng và có giao diện thân thiện với con người. Đó là các máy vi tính PC. Cũng có thể là những hệ Vi xử lý chuyên dụng cho những mục đích tính toán hay điều khiển.
  14. 14 3.1. Máy tính xử lý dữ liệu Là các máy tính được dùng để tính toán xử lý các dữ liệu như quản lý nhân viên trong cơ quan, tính toán tiền lương, tính toán kết cấu công trình, phân tích dữ liệu trong kinh doanh, v.v... Quan điểm đúng cho rằng máy tính chỉ gồm CPU và bộ nhớ chính, còn các thiết bị phụ trợ khác như bàn phím, máy in, các ổ đĩa cứng, đĩa mềm, Ổ CD, chuột, màn hình, máy in..., là những thiết bị ngoại vi. Các chương trình để xử lý dữ liệu được lưu giữ trong bộ nhớ chính hoặc trong các ổ đĩa, có nhiệm vụ xử lý những dữ liệu được người dùng nhập vào và đưa kết quả xử lý ra màn hình, in ra giấy hoặc lưu giữ trong các ổ đĩa. Để đánh giá tính năng và chất lượng của các máy này, ta thường căn cứ vào tốc độ xử lý dữ liệu, dung lượng bộ nhớ, ổ đĩa, chất lượng màn hình, máy in v.v... Hình 1.2. Máy vi tính 3.2. Máy tính là bộ xử lý số Đối với các máy tính, thời gian dành cho xử lý dữ liệu rất nhỏ, còn thời gian để tính toán, xử lý các số liệu lại vô cùng lớn. Các máy tính loại này được sử dụng chủ yếu trong các cơ quan dự báo, như dự báo khí tượng, thuỷ văn, trong tính toán quỹ đạo bay của tên lửa, máy bay, tầu thuỷ, v.v... hay trong các phòng nghiên cứu khoa học. Những máy tính loại này thông thường thực hiện những chương trình tính toán khổng lồ, nên chúng được trang bị các CPU rất mạnh và các thiết bị ngoại vi, bộ nhớ ngoài rất lớn. Đó là những siêu máy tính (Supercomputer).
  15. 15 3.3. Máy tính đo lường và điều khiển Sự phát triển nhanh chóng của các hệ thống máy tính đã tạo ra những ứng dụng lớn lao trong các hệ thống đo lường và điều khiển tự động. Đối với các ứng dụng thông thường như trong các dụng cụ gia dụng, từ Ti vi, điều hoà nhiệt độ, máy giặt v.v... Đó là những máy tính nhỏ được chế tạo dưới dạng một vi mạch (Single-chip Microcomputer). Tuy nhiên, cũng cần phải tính đến những máy tính này trong các thiết bị hiện đại và phức tạp như trong các hệ thống tự động lái máy bay (Autopilot), tàu thuỷ, tên lửa... 3.4. Căn cứ vào tính năng kỹ thuật và các chỉ tiêu về kích thước Các máy tính còn được chìa ra thành máy tính lớn đẻ giải các bài toán cực lớn với tốc độ rất nhanh, máy tính nhỏ sử dụng trong gia đình, trong trường học hay các tính toán thông dụng, điều khiển các quá trình công nghệ vừa và nhỏ. Cũng cần nhắc đến ở đây một sự khác biệt giữa hai khái niệm hệ Vi xử lý và máy vi tính: Các máy vi tính luôn luôn được trang bị một phần mềm cơ bản là Hệ điều hành, ví dụ: MS-DOS hay các phiên bản điều hành đa nhiệm (MS WINDOWS của hãng phần mềm Microsoft, hoặc các hệ điều hành của các hãng khác...) và các chương trình hay phần mềm ứng dụng, trong khi các hệ Vi xử lý chỉ cần trang bị một chương trình Monitor (chương trình giám sát) đơn giản đươc ghi trong bộ nhớ ROM.
  16. 16 CÁC BÀI TẬP MỞ RỘNG, NÂNG CAO VÀ GIẢI QUYẾT VẤN ĐỀ Câu 1: Trình bày lịch sử phát triển các trung tâm vi xử lý Câu 2: Phân tích cấu trúc cơ bản của hệ vi xử lý Câu 3: Nhận dạng vi xử lý 8086 trên kit vi xử lý 80xx Yêu cầu về đánh giá kết quả học tập: Nội dung: + Về kiến thức: Trình bày được lịch sử phát triển các trung tâm vi xử lý + Về kỹ năng: Phân tích được Cấu trúc cơ bản của hệ vi xử lý - Thực hiện viết các chương trình theo yêu cầu cho trứoc + Thái độ: Đánh giá phong cách, thái độ học tập Chủ động, sáng tạo và an toàn trong quá trình học tập. Phương pháp: + Về kiến thức: Được đánh giá bằng hình thức kiểm tra viết + Về kỹ năng: Đánh giá kỹ năng thực hành Mỗi sinh viên, hoặc mỗi nhóm học viên thực hiện công việc theo yêu cầu của giáo viên. Tiêu chí đánh giá theo các nội dung: - Độ chính xác của công việc - Thời gian thực hiện công việc - Độ chính xác theo yêu cầu kỹ thuật + Thái độ: Tỉ mỉ, cẩn thận, chính xác.
  17. 17 BÀI 2: CẤU TRÚC HỌ VI ĐIỀU KHIỂN 8051 Mã bài: MĐ CĐT32-02 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 bộ Vi điều khiển. Vi điều khiển(Microcontroller) có khả năng tính toán, xử lý, và thay đổi chương trình linh hoạt theo mục đích người dùng, đặc biệt hiệu quả đối với các bài toán và hệ thống, nhưng cấu trúc phần cứng dành cho người dùng đơn giản. Vi điều khiển ra đời mang lại sự tiện lợi đối với người dùng, họ không cần nắm vững một khối lượng kiến thức quá lớn như người dùng vi xử lý, kết cấu mạch điện dành cho người dùng cũng trở nên đơn giản hơn nhiều và có khả năng giao tiếp trực tiếp với các thiết bị bên ngoài. 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ẩ 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. - Chủ động, sáng tạo và an toàn trong quá trình học tập.
  18. 18 Nội dung chính: 1. Tổng quan Hình 2.1. Sơ đồ khối vi điều khiển 8051. 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.  2 bộ định thời 16 bit, mạch giao tiếp nối tiếp.  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.
  19. 19 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): Các ROM RAM Tốc độ Timer/ Nguồn Họ VĐK chân UART (bytes) (bytes) (MHz) Counter ngắt I/O 8051 8031AH ROMLESS 128 12 32 2 1 5 8051AH 4K ROM 128 12 32 2 1 5 8051AHP 4K ROM 128 12 32 2 1 5 8751H 4K 128 12 32 2 1 5 EPROM 8751BH 4K 128 12 32 2 1 5 EPROM 8052 8032AH ROMLESS 256 12 32 3 1 6 8052AH 8K ROM 256 12 32 3 1 6 8752BH 8K 256 12 32 3 1 6 EPROM 80C51 32 80C31BH ROMLESS 128 12,16 32 2 1 5 80C51BH 4K ROM 128 12,16 32 2 1 5 80C31BHP 4K ROM 128 12,16 32 2 1 5 87C51 4K 128 12,16,20,24 32 2 1 5 EPROM 8xC52/54/58 80C32 ROMLESS 256 12,16,20,24 32 3 1 6 80C52 8K ROM 256 12,16,20,24 32 3 1 6 8K 256 12,16,20,24 32 3 1 6 87C52 EPROM 80C54 16K ROM 256 12,16,20,24 32 3 1 6
  20. 20 16K 256 12,16,20,24 32 3 1 6 87C54 EPROM Các Họ VĐK ROM RAM Tốc độ Timer/ Nguồn chân UART (bytes) (bytes) (MHz) Counter ngắt I/O 80C58 32K ROM 256 12,16,20,24 32 3 1 6 32K 256 12,16,20,24 32 3 1 6 87C58 EPROM 8xL52/54/58 80L52 8K ROM 256 12,16,20 32 3 1 6 8K OTP 256 12,16,20 32 3 1 6 87L52 ROM 80L54 16K ROM 256 12,16,20 32 3 1 6 16K OTP 256 12,16,20 32 3 1 6 87L54 ROM 80L58 32K ROM 256 12,16,20 32 3 1 6 32K OTP 256 12,16,20 32 3 1 6 87L58 ROM … 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 trình Bộ nhớ dữ liệu Timer 16 Công Họ VĐK (Bytes) (Bytes) bit nghệ AT89C1051 1K Flash 64 RAM 1 CMOS AT89C2051 2K Flash 128 RAM 2 CMOS AT89C51 4K Flash 128 RAM 2 CMOS AT89C52 8K Flash 256 RAM 3 CMOS AT89C55 20K Flash 256 RAM 3 CMOS
nguon tai.lieu . vn