Bài giảng Hệ nhúng: Chương 4 - Đỗ Công Thuần
lượt xem 2
download
Bài giảng "Hệ nhúng: Chương 4 - Ghép nối ngoại vi với 8051" trình bày các nội dung chính sau đây: Ghép nối cổng vào ra song song; Ghép nối ngắt ngoài; Ghép nối nút bấm; Ghép nối bộ định thời; Lập trình C với 8051;... Mời các bạn cùng tham khảo!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Hệ nhúng: Chương 4 - Đỗ Công Thuần
- Hệ nhúng (Embedded Systems) IT4210 Đỗ Công Thuần Khoa Kỹ thuật máy tính, Trường CNTT&TT Đại học Bách khoa Hà Nội Email: thuandc@soict.hust.edu.vn
- Giới thiệu môn học • Tên học phần: Hệ nhúng • Mã học phần: IT4210 (3-0-1-6) • Thời lượng: ‒ 16.5 buổi lý thuyết (3 tiết/buổi) ‒ 3 buổi thực hành (5 tiết/buổi) • Yêu cầu kiến thức nền tảng: ‒ Kiến trúc máy tính ‒ Vi xử lý ‒ Lập trình C 2
- Mục tiêu môn học • Nắm được kiến trúc tổng quan, đặc điểm và hoạt động của một hệ nhúng • Biết thiết kế hệ nhúng cơ bản (nguyên lý thiết kế mạch, …) • Nắm được kiến trúc vi điều khiển (Intel, ARM) • Lập trình vi điều khiển từ cơ bản đến nâng cao với các dòng vi điều khiển phổ biến • Lập trình với hệ điều hành nhúng 3
- Đánh giá học phần 1. Đánh giá quá trình: 40% ‒ Bài tập về nhà ‒ Chuyên cần ‒ Các bài thực hành, nhóm 4 SV/nhóm 2. Đánh giá cuối kỳ: 60% ‒ Làm project cuối kỳ, nhóm 4 SV/nhóm ‒ Yêu cầu sinh viên tự chọn nhóm và đăng kí đề tài. Chú ý: danh sách đề tài sẽ được cập nhật sau! 4
- Tài liệu tham khảo • Textbook/Lecture notes: ‒ Peter Marwedel, Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems, and the Internet of Things, Spinger, 4th edition, 2021. ‒ Edward A. Lee and Sanjit A. Seshia, Introduction to Embedded Systems: A Cyber-Physical Systems Approach, MIT Press, 2nd edition, 2017. ‒ Tammy Noergaard, Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers, Elsevier, 2nd edition, 2013. ‒ Han-Way Huang, Leo Chartrand, Microcontroller: An Introduction to Software & Hardware Interfacing, Cengage Learning, 2004. ‒ Lectures in Embedded Systems from Univ. of Cincinnati (EECE 6017C), Univ. of California, Berkeley (EECS 149), Univ. of Pennsylvania (ESE 350), Univ. of Kansas (EECS388). ‒ … • Manuals/Handbooks/Internet ‒ Atmel, Microchip, Texas Instruments, Keil… ‒ Keil ASM51 ‒ Arduino IDE ‒ … 5
- Nội dung học phần • Chương 1: Giới thiệu về Hệ nhúng • Chương 2: Thiết kế phần cứng Hệ nhúng • Chương 3: Lập trình với 8051 • Chương 4: Ghép nối ngoại vi với 8051 • Chương 5: Arduino • Chương 6: Ghép nối nối tiếp • Chương 7: Ghép nối với thế giới thực • Chương 8: Kiến trúc ARM • Chương 9: RTOS và FreeRTOS 6
- Nội dung học phần • Chương 1: Giới thiệu về Hệ nhúng • Chương 2: Thiết kế phần cứng Hệ nhúng • Chương 3: Lập trình với 8051 • Chương 4: Ghép nối ngoại vi với 8051 • Chương 5: Arduino • Chương 6: Ghép nối nối tiếp • Chương 7: Ghép nối với thế giới thực • Chương 8: Kiến trúc ARM • Chương 9: RTOS và FreeRTOS 7
- Chương 4 Ghép nối ngoại vi với 8051
- Nội dung • Ghép nối cổng vào ra song song • Ghép nối ngắt ngoài • Ghép nối nút bấm • Ghép nối bộ định thời • Lập trình C với 8051 9
- Ghép nối cổng vào ra song song • 8051 có 4 cổng vào ra GPIO (mỗi cổng 8 bit): P0, P1, P2, P3. • Sau khi reset, các cổng ở chế độ mặc định là cổng ra (output). • Để các cổng/chân làm việc ở chế độ cổng/chân vào (input), phải tiến hành ghi các bit 1 ra các cổng/chân tương ứng. ‒ Ví dụ: MOV P1,#0FF ; Cổng 1 thành cổng vào SETB P1.0 ; Chân P1.0 làm chân vào MOV P1,#03 ; Chân P1.0 và P1.1 làm chân vào ; các chân còn lại làm chân ra 10
- Xuất dữ liệu ra cổng/chân • Xuất dữ liệu ra cổng ra MOV tên_cổng, giá trị ‒ Ví dụ: MOV P1, #55h • Xuất dữ liệu ra từng chân ‒ Đưa chân cổng lên mức cao: SETB bit Ví dụ: SETB P1.0 ‒ Đưa chân cổng xuống mức thấp: CLR bit Ví dụ: CLR P1.0 11
- Đọc dữ liệu từ cổng vào • Bước 1: Thiết lập cổng làm việc ở chế độ input • Bước 2: Đọc dữ liệu từ chân cổng ‒ Ví dụ: MOV P1, #0FFh MOV A, P1 ; Đọc giá trị tại ; cổng P1, lưu vào A MOV P2, A ; Xuất ra cổng P2 12
- Ví dụ • Thiết kế mạch phát hiện đột nhập dùng công tắc đóng/mở. ‒ Nhà có 4 khu vực, mỗi khu vực có 3 công tắc lắp nối tiếp. ‒ Tủ trung tâm lắp 1 chuông báo động, và một đèn LED 7-thanh báo vị trí khu vực phát hiện đột nhập. 13
- Sơ đồ khối 90h 80h 14
- Thủ tục phát hiện đột nhập Initialize I/O ports, P0 and P1 Read port P1 YES Are all P1 inputs at 0 NO Sound alarm Bell 15
- Mạch Proteus 16
- Sample Code: Phát hiện đột nhập ORG 0000h MOV P1, #0ffh ;set P1 as input MOV P0, #00 ;initialize P0 POLL: MOV A, P1 ;read sensors CJNE A, #00h, ALARM ;fire alarm if detected LJMP POLL ;otherwise polling sensor ALARM: SETB P0.7 ;turn on buzzer END_LOOP: LJMP END_LOOP ;final endless loop END 17
- Bài tập 1: Hiển thị vị trí đột nhập trên LED 7-thanh? 18
- Ví dụ • Lập trình cho dãy đèn LED sáng lần từ trái sang phải 19
- Tính thời gian trễ chính xác? • CPU 8051 chạy ở tần số 12 MHz → Chu kỳ lệnh là 1us 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Hệ thống nhúng - Đại học Hàng hải
72 p | 429 | 89
-
Bài giảng Hệ điều hành (Operating Systems): Chương 1, 2, 3, 4 - TS. Vũ Đức Lung
24 p | 154 | 22
-
Bài giảng Hệ thống thông tin quản lý Chương 4: Triển khai ứng dụng - Th.S. Nguyễn Anh Hào
22 p | 185 | 21
-
Bài giảng Lập trình hệ nhúng: Chương 4 - Phạm Ngọc Hưng
26 p | 69 | 7
-
Bài giảng Hệ quản trị CSDL: Chương 4 (Phần 1) - TS. Lại Hiền Phương
32 p | 9 | 5
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 4 - Nguyễn Trí Thành
16 p | 83 | 5
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 4.5: Mã hóa bit
9 p | 31 | 5
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 4.6: Kỹ thuật truyền dẫn
19 p | 34 | 4
-
Bài giảng Hệ điều hành: Chương 4.1 - Nguyễn Ngọc Duy
47 p | 50 | 3
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 6.4: AS-Interface
16 p | 25 | 3
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 4.7: Kiến trúc giao thức
19 p | 40 | 3
-
Bài giảng Hệ phân tán - Chương 4: Trao đổi thông tin trong hệ phân tán
114 p | 8 | 3
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 4.1: Cơ sở truyền thông công nghiệp
24 p | 24 | 3
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 4.4: Bảo toàn dữ liệu
18 p | 24 | 2
-
Bài giảng Hệ nhúng: Chương 4 - Phạm Văn Thuận
19 p | 12 | 2
-
Bài giảng Hệ thống máy tính - Chương 0: Giới thiệu
7 p | 104 | 2
-
Bài giảng Hệ thống thông tin công nghiệp - Chương 4.3: Kiểm soát truy nhập bus
24 p | 31 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn