Bài tập kĩ thuật vi điều khiển
lượt xem 36
download
Tham khảo tài liệu 'bài tập kĩ thuật vi điều khiển', kỹ thuật - công nghệ, tự động hoá phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài tập kĩ thuật vi điều khiển
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển MỤC LỤC Trang Lời giới thiệu 2 Phần 1. Bài tập căn bản 1. Nhóm lệnh di chuyển dữ liệu. 3 Bài tập 1.1 ... 1.3 3 Bài tập 1.4 ... 1.8 4 Bài tập 1.9 5 2. Nhóm lệnh tính toán số học. 5 Bài tập 2.1 ... 2.4 5 Bài tập 2.5 ... 2.9 6 3. Nhóm lệnh tính toán logic. 6 Bài tập 3.1 ... 3.7 7 Bài tập 3.8 ... 3.10 8 4. Nhóm lệnh rẽ nhánh chương trình. 8 Bài tập 4.1 ... 4.3 8 Bài tập 4.4 ... 4.8 9 Bài tập 4.9 ... 4.12 10 Bài tập 4.13 ... 4.14 11 5. Nhóm lệnh điều khiển biến logic. 11 Bài tập 5.1 ... 5.4 11 Phần 2. Bài tập ứng dụng cơ bản 12 Bài tập 1 ... 5 12 Bài tập 6 ...15 13 Tài liệu tham khảo. 14 Bạch Hưng Trường 1 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển LỜI GIỚI THIỆU Quyển bài tập kỹ thuật Vi điều khiển này được biên soạn nhằm phục vụ cho việc giảng dạy bộ môn Vi điều khiển tại trường Đại học SPKT Hưng yên. Hệ thống các bài tập ở quyển sách này đã được tác giả biên soạn, tổng hợp sao cho phù hợp với nội dung đào tạo và giáo trình kỹ thuật Vi điều khiển. Vì vậy, khi giảng dạy môn này giáo viên cần liên hệ các bài tập cụ thể để áp dụng cho phù hợp với từng nội dung bài giảng. Mặc dầu đã rất cố gắng trong quá trình biên soạn nhưng do trình độ và thời gian còn bị hạn chế nên chắc chắn quyển sách này không tránh khỏi những thiếu sót, rất mong nhận được những ý kiến phê bình, đóng góp của bạn đọc. Bạch Hưng Trường 2 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển Hưng yên, tháng 10 năm 2003 Tác giả PHẦN 1: BÀI TẬP CĂN BẢN 1. NHÓM LỆNH DI CHUYỂN DỮ LIỆU: BÀI TẬP 1.1: DỮ KIỆN YÊU CẦU - (30h) ở RAM nội = 40h. - Chuyển nội dung tại vị trí 30h ở RAM - (40h) ở RAM nội = 10h. nội vào R1 và A. - Chuyển nội dung tại vị trí 40h ở RAM nội vào B. - Chuyển nội dung 0CAh vào vị trí 40h ở RAM nội và cổng P2. - Xác định giá trị của các thanh ghi R1, A, B, và nội dung của RAM nội tai các vị trí trên (bảng Main Registers). - Xuất dữ liệu của A và B ra cổng P1 và P3. BÀI TẬP 1.2: DỮ KIỆN YÊU CẦU Xác định nội dung mới của P1 sau khi - (C) = 1; (P2) = 0C5h thực hiện các lệnh sau: - (P1) = 35h MOV P1.3, C MOV C, P2.3 MOV P1.2, C BÀI TẬP 1.3: DỮ KIỆN YÊU CẦU - Sao chép nội dung tại vị trí 11h ở - (R0) = 11h; (R1) = 23h Bạch Hưng Trường 3 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển - (11h) ở RAM ngoài = 55h RAM ngoài vào A. - Sao chép nội dung 55h vào vị trí 23h của RAM ngoài. - Xuất dữ liệu của A ra cổng P0 bằng phương pháp định địa chỉ trực tiếp. BÀI TẬP 1.4: DỮ KIỆN YÊU CẦU Lưu nội dung 23h và 11h vào vị trí 06h (SP) = 05h; (DPTR) = 1123h và 07h của ngăn xếp ở RAM nội. Xác định nội dung mới của SP. BÀI TẬP 1.5: DỮ KIỆN YÊU CẦU Xác định nội dung mới của DPTR và SP - (SP) = 32h - (30h), (31h) và (32h) ở RAM sau khi thực hiện các lệnh sau: nội = 10h, 11h và 12h POP DPH POP DPL BÀI TẬP 1.6: DỮ KIỆN YÊU CẦU - Hoán chuyển (A) và (30h) ở RAM - (R1) = 30h; (A) = 0FFh - (30h) ở RAM nội = 0Fh nội. - Xác định nội dung mới của A và (30h). - Xuất (A) và (30h) ở RAM nội ra P1 và P3. BÀI TẬP 1.7: DỮ KIỆN YÊU CẦU - (R1) = 20h; (A) = 10001100b - Xác định (A), (20h) ở RAM nội sau - (20h) ở RAM nội = khi thực hiện lệnh: XCHD A, @R1 - Xuất (A) và (20h) ở RAM nội ra P0 và 11100001b P2. Bạch Hưng Trường 4 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển BÀI TẬP 1.8: (2A), (2B), (2C), (2D) và (2E) ở RAM nội là: 00h, 12h, 34h, 56h và 78h. Hãy xác định nội dung của bảng số liệu sau đây theo từng lệnh cho trước. (2A) (2B) (2C) (2D) (2E) (ACC) MOV A, 2Eh MOV 2Eh, 2Dh MOV 2Dh, 2Ch MOV 2Ch, 2Bh MOV 2Bh, #0 BÀI TẬP 1.9: (2A), (2B), (2C), (2D) và (2E) ở RAM nội là: 00h, 12h, 34h, 56h và 78h. Hãy xác định nội dung của bảng số liệu sau đây theo từng lệnh cho trước. (2A) (2B) (2C) (2D) (2E) (ACC) CLR A XCH A, 2Bh XCH A, 2Ch XCH A, 2Dh XCH A, 2Eh 2. NHÓM LỆNH TÍNH TOÁN SỐ HỌC BÀI TẬP 2.1: DỮ KIỆN YÊU CẦU Xác định nội dung của A, AC, CF, OV - (A) = 0C3h sau khi thực hiện lệnh: - (R1) = 0AAh ADD A, R1 BÀI TẬP 2.2: DỮ KIỆN YÊU CẦU Xác định nội dung của A, AC, CF, OV - (A) = 0C3h sau khi thực hiện lệnh: - (R1) = 0AAh ADDC A, R1 BÀI TẬP 2.3: Bạch Hưng Trường 5 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển DỮ KIỆN YÊU CẦU Xác định nội dung của A, AC, CF, OV (A) = 0C9h, (R2) = 54h sau khi thực hiện lệnh: SUBB A, R2 BÀI TẬP 2.4: DỮ KIỆN YÊU CẦU Xác định lại: (R0); (7Eh) và (7Fh) ở (R0) = 7Eh. (7Eh) và (7Fh) ở RAM nội = RAM nội sau khi thực hiện các lệnh: 0FFh và 40h INC @R0 INC R0 INC @R0 BÀI TẬP 2.5: DỮ KIỆN YÊU CẦU Xác định lại: (R0); (7Eh) và (7Fh) ở (R0) = 7Fh. (7Eh) và (7Fh) ở RAM nội = RAM nội sau khi thực hiện các lệnh: 00h và 40h DEC @R0 DEC R0 DEC @R0 BÀI TẬP 2.6: DỮ KIỆN YÊU CẦU Xác định lại (DPTR) sau khi thực hiện (DPTR) = 12FEh các lệnh: INC DPTR INC DPTR INC DPTR BÀI TẬP 2.7: DỮ KIỆN YÊU CẦU Xác định kết quả và (A), (B), (CF), (A) = 50h, (B) = 0A0h (OV) sau khi thực hiện lệnh: MUL AB BÀI TẬP 2.8: DỮ KIỆN YÊU CẦU Xác định kết quả và (A), (B), (CF), (A) = 0FBh, (B) = 12h Bạch Hưng Trường 6 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển (OV) sau khi thực hiện lệnh: DIV AB BÀI TẬP 2.9: DỮ KIỆN YÊU CẦU Xác định (A) sau khi thực hiện các (A) = 56h, (R2) = 67h, lệnh: (CF) = 1 ADDC A,R2 DA A 3. NHÓM LỆNH TÍNH TOÁN LOGIC BÀI TẬP 3.1: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: ANL A, R0 (A) = 0C3H, (R0) = 55h (A)= ? BÀI TẬP 3.2: DỮ KIỆN YÊU CẦU Hãy thiết lập cờ nhớ bằng lệnh ANL P1.0=1, ACC.7=1 và OV=0 BÀI TẬP 3.3: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: ORL A, R0 (A) = 0C3H, (R0) = 55h (A) = ? BÀI TẬP 3.4: DỮ KIỆN YÊU CẦU Hãy thiết lập cờ nhớ bằng lệnh ORL P1.0=1, ACC.7=1 và OV=0 BÀI TẬP 3.5: DỮ KIỆN YÊU CẦU Bạch Hưng Trường 7 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển Sau khi thực hiện lệnh: XRL A, R0 (A) = 0C3H, (R0) = 0AAh (A) = ? BÀI TẬP 3.6: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: RL (A) = 0C5h. A (A) = ? BÀI TẬP 3.7: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: RLC A (A) = 0C5h, (C) = 0. (A) =?, (C) =? BÀI TẬP 3.8: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: RR A (A) = 0C5h. (A) =? BÀI TẬP 3.9: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: RRC A (A) = 0C5h, (C) = 0. (A) =?, (C) =? BÀI TẬP 3.10: DỮ KIỆN YÊU CẦU Sau khi thực hiện lệnh: SWAP A (A) = 0C5h (A) =? 4. NHÓM LỆNH RẼ NHÁNH CHƯƠNG TRÌNH BÀI TẬP 4.1: DỮ KIỆN YÊU CẦU (SP) = 07h. Nhãn CT_CON Sau khi thực hiện lệnh ACALL Bạch Hưng Trường 8 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển được đặt tại vị trí 0345h trong CT_CON tại vị trí 0123h thì : (SP), bộ nhớ chương trình. (08h), (09h) và (PC) = ? BÀI TẬP 4.2: DỮ KIỆN YÊU CẦU (SP) = 07h. Nhãn CT_CON Sau khi thực hiện lệnh LCALL được đặt tại vị trí 1234h trong CT_CON tại vị trí 0123h thì: (SP), bộ nhớ chương trình. (08h), (09h) và (PC) =? BÀI TẬP 4.3: DỮ KIỆN YÊU CẦU (SP) = 0Bh. (0Ah) và (0Bh) -Xác định (SP) sau khi thực hiện lệnh trong RAM nội = 23h và 01h. RET - XĐ địa chỉ tiếp theo của chương trình. BÀI TẬP 4.4: DỮ KIỆN YÊU CẦU (SP) = 0Bh. (0Ah) và (0Bh) -Xác định (SP) sau khi thực hiện lệnh trong RAM nội = 23h và 01h. RETI Một ngắt được phát hiện - XĐ địa chỉ tiếp theo của chương trình. trong khi lệnh ở địa chỉ 0123h đang thực thi. BÀI TẬP 4.5: DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (P1) = 0CAh. (A) = 56h. trình, khi thực hiện các lệnh: JB P1.2, Label1 JB ACC.2, Lable2 BÀI TẬP 4.6: DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (P1) = 0CAh. (A) = 56h. trình, khi thực hiện các lệnh: JNB P1.3, Label1 JNB ACC.3, Lable2 Bạch Hưng Trường 9 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển BÀI TẬP 4.7: DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (A) = 56h trình và nội dung mới của A, khi thực hiện các lệnh: JBC ACC.3, Label1 JBC ACC.2, Lable2 BÀI TẬP 4.8: DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (C) = 0 trình và nội dung mới của C, khi th ực hiện các lệnh: JC Label1 CPL C JC Lable2 BÀI TẬP 4.9: DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (C) = 1. trình và nội dung mới của C, khi th ực hiện các lệnh: JNC Label1 CPL C JNC Lable2 BÀI TẬP 4.10: DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (A) = 01h. trình và nội dung mới của A, khi thực hiện các lệnh: JZ Label1 DEC A JZ Lable2 BÀI TẬP 4.11: Bạch Hưng Trường 10 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển DỮ KIỆN YÊU CẦU Xác định địa chỉ rẽ nhánh của chương (A) = 00h. trình và nội dung mới của A, khi thực hiện các lệnh: JNZ Label1 INC A JNZ Lable2 BÀI TẬP 4.12: DỮ KIỆN YÊU CẦU (40h), (50h) và (60h) ở RAM Xác định địa chỉ rẽ nhánh của chương nội = 01h, 70h và 15h. trình và nội dung mới tại các vị trí 40h, 50h và 60h ở RAM nội, khi thực hiện các lệnh: DJNZ 40h, Label1 DJNZ 50h, Label2 DJNZ 60h, Label3 BÀI TẬP 4.13: DỮ KIỆN YÊU CẦU Sử dụng các lệnh: Viết chương trình tạo ra 4 xung xuất hiện ở bit 7 của cổng P1. Mỗi một MOV xung chiếm 3 chu kỳ máy CPL DJNZ BÀI TẬP 4.14: DỮ KIỆN YÊU CẦU Sử dụng các lệnh SETB, CLR Viết chương trình tạo ra một xung có mức thấp trên bit 7 của cổng P2 chính và NOP xác 5 chu kỳ. NHÓM LỆNH ĐIỀU KHIỂN BIẾN LOGIC 5. BÀI TẬP 5.1: Bạch Hưng Trường 11 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển DỮ KIỆN YÊU CẦU Thực hiện lệnh xoá bit để có (P1) = (P1) = 5Dh. 59h. BÀI TẬP 5.2: DỮ KIỆN YÊU CẦU Sử dụng lệnh thiết lập bit để có: (P1) = (C) = 0, (P1) = 34h. 35h, và (C) = 1. BÀI TẬP 5.3: DỮ KIỆN YÊU CẦU Cổng P1 vừa được ghi nội Sử dụng lệnh lấy bù bit để có: (P1) = dung 5Bh. 5Dh BÀI TẬP 5.4: DỮ KIỆN YÊU CẦU Sau khi thực hiện xong lệnh: CPL A (A) = 0A3h Xác định nội dung ban đầu của A. PHẦN 2: BÀI TẬP ỨNG DỤNG CƠ BẢN BÀI TẬP 1 : Kiểm tra cổng vào/ ra của Vi xử lý On-chip 8 bit. Yêu cầu: Viết chương trình xuất dữ liệu ra cổng P1 theo bảng số liệu sau: P1 11111110 11111100 11111000 11110000 11100000 11000000 10000000 00000000 Bạch Hưng Trường 12 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển 11111111 Lưu ý: thực hiện hàm Wait với thời gian chính xác 1 s. BÀI TẬP 2 : Viết chương trình đìêu khiển hệ thống quảng cáo điện tử chạy tự động với nhiều chế độ hiển thị khác nhau. BÀI TẬP 3 : Viết chương trình đìêu khiển hệ thống quảng cáo điện tử hiển thị bán tự động với nhiều chế độ khác nhau (cho phép người sử dụng lựa chọn các chế độ hiển thị khác nhau). BÀI TẬP 4 : Viết chương trình đìêu khiển hiển thị LED 7 thanh (đếm tiến từ 0 đến F). Quá trình hiển thị được lặp đi lặp lại nhiều lần. BÀI TẬP 5 : Viết chương trình đìêu khiển LED 7 thanh hiển thị theo sơ đồ khối sau: Đếm Đếm Start tiến lùi BÀI TẬP 6 : Viết chương trình đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT0=0 thì hiển thị số 0, - Nếu INT0=1 thì hiển thị số 1. BÀI TẬP 7 : Viết chương trình đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT0=0 thì hiển thị số 0, INT0=1 thì hiển thị số 1. - Nếu INT1=0 thì hiển thị, INT1=1 thì không hiển thị. BÀI TẬP 8 : Viết chương trình đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT1=0 thì hiển thị, INT1=1 thì không hiển thị. - Nếu INT0=0 thì hiển th ị s ố 0 nh ấp nháy, INT0=1 thì hi ển th ị s ố 1 nhấp nháy. BÀI TẬP 9 : Viết chương trình đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: Bạch Hưng Trường 13 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển - Nếu INT1=0 thì hiển thị, INT1=1 thì không hiển thị. - Nếu INT0=0 thì đếm lùi, INT0=1 thì đếm tiến. - Chỉ thay đổi khi thực hiện xong việc gọi bảng số liệu. BÀI TẬP 10 : Viết chương trình đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT1=0 thì hiển thị, INT1=1 thì dừng. - Nếu INT0=0 thì đếm lùi, INT0=1 thì đếm tiến. - Chỉ thay đổi khi thực hiện xong việc gọi bảng số liệu. BÀI TẬP 11: Viết chương trình nạp giá trị hằng số (1) vào RAM ngoài tại vùng nhớ được định địa chỉ từ 1000h đến 10FFh . BÀI TẬP 12: Viết chương trình tạo tín hiệu âm thanh với tần số 500 Hz tại bit 0 của cổng P1. BÀI TẬP 13: Viết chương trình tạo tín hiệu âm thanh với tần số 500 Hz tại bit 0 của cổng P1, có giới hạn về mặt thời gian: âm thanh kéo dài 5 s sau đó tắt. BÀI TẬP 14: Viết chương trình để VXL thực hiện chức năng biến đổi A/D BÀI TẬP 15: Viết chương trình để VXL thực hiện chức năng biến đổi D/A TÀI LIỆU THAM KHẢO: The 8051 Microcontroller - I. Scott Mackenzie. 1. The MCS*51 Microcontroller Family User’s Manuel - INTEL - 1994. 2. The AT89 Family of Microcontrollers - ATMEL - 2003. 3. Microcomputer Components – SAB80C515 8 bit Single-chip 4. Microcontroller Family - SIEMENS - 1995. 5. Mikrocomputertechnik – Prof.Dr.Ing. G.Schnell – Fachhochschule Frankfurt am Main - 2001. 6. Kỹ thuật Vi xử lý - Văn Thế Minh - NXB GD - 1997. Bạch Hưng Trường 14 06-10- 2003
- Bài tập: Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN Khiển 7. Kỹ thuật VXL & lập trình ASSEMBLY cho hệ VXL - Đỗ Xuân Tiến – NXB KH&KT - 2001. 8. Họ VĐK 8051 - Tống Văn On & Hoàng Đức Hải - NXB LĐXH - 2001 Bạch Hưng Trường 15 06-10- 2003
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Kỹ Thuật Vi Xử Lý - Phạm Hoàng Duy
136 p | 431 | 165
-
Bài tập Vi điều khiển
21 p | 750 | 113
-
Giáo trình kỹ thuật vi điều khiển - chương IV - Các bài tập thực hiện trên Kit
7 p | 271 | 77
-
Thuyết trình Cơ Điện Tử đề tài: Tìm Hiểu Về Robot Ứng Dụng Trong Sinh Hoạt Gia Đình
25 p | 866 | 64
-
Đề thi học kì 1 môn Kỹ thuật vi xử lý năm 2020-2021 có đáp án - Trường ĐH Sư Phạm Kỹ Thuật TP.HCM
6 p | 32 | 9
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