Bài tập Vi xử lý (Họ vi điều khiển 8051) - Lê Chí Thông

2. SỬ DỤNG TẬP LỆNH
Truy xuất RAM nội
2.1 Viết CT ghi 40H vào ô nhớ 30H của RAM nội theo 2 cách (định địa chỉ ô nhớ trực tiếp và định
địa chỉ ô nhớ gián tiếp).
2.2 Viết CT xóa ô nhớ 31H của RAM nội theo 2 cách (định địa chỉ ô nhớ trực tiếp và định địa chỉ ô
nhớ gián tiếp).
2.3 Viết CT ghi nội dung thanh ghi A vào ô nhớ 32H của RAM nội theo 2 cách (định địa chỉ ô nhớ
trực tiếp và định địa chỉ ô nhớ gián tiếp).
2.4 Viết CT đọc ô nhớ 33H của RAM nội vào thanh ghi A theo 2 cách (định địa chỉ ô nhớ trực tiếp
và định địa chỉ ô nhớ gián tiếp). 
pdf 6 trang thamphan 28/12/2022 1000
Bạn đang xem tài liệu "Bài tập Vi xử lý (Họ vi điều khiển 8051) - Lê Chí Thông", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfbai_tap_vi_xu_ly_ho_vi_dieu_khien_8051_le_chi_thong.pdf

Nội dung text: Bài tập Vi xử lý (Họ vi điều khiển 8051) - Lê Chí Thông

  1. Đại H ọc Bách Khoa TP.HCM – Khoa Điện-Điện T ử Lê Chí Thông – chithong@gmail.com BÀI T ẬP VI X Ử LÝ (H Ọ VI ĐIỀU KHI ỂN 8051) 1. CẤU TRÚC PH ẦN C ỨNG - GI ẢI MÃ ĐỊA CH Ỉ 1.1 S dng 1 vi m ch 74138 và các c ng c n thi t thi t k mch gi i mã a ch to ra các tín hi u ch n chip t ư ng ng các vùng a ch sau: Tín hi u ch n chip Vùng a ch c tính truy xu t CS 0 0000H - 3FFFH PSEN CS1 4000H - 7FFFH PSEN CS 2 6000H - 7FFFH RD , WR CS 3 8000H - 87FFH RD CS 4 8800H - 8FFFH WR 1.2 S dng 1 vi m ch 74138 và các c ng c n thi t thi t k mch gi i mã a ch to ra các tín hi u ch n chip t ư ng ng các vùng a ch sau: Tín hi u ch n chip Vùng a ch c tính truy xu t CS 0 9800H - 9BFFH PSEN CS1 9800H - 9BFFH RD, WR CS 2 9C00H - 9DFFH RD , WR CS 3 9E00H - 9EFFH RD , WR 1.3 Ch dùng m t vi m ch 74138 (không dùng thêm c ng), thi t k mch gi i mã a ch to ra m t tín hi u ch n chip /CS t ư ng ng t m a ch F000H-F3FFH. 2. SỬ DỤNG T ẬP L ỆNH Truy xu ất RAM n ội 2.1 Vi t CT ghi 40H vào ô nh 30H c a RAM n i theo 2 cách ( nh a ch ô nh tr c ti p và nh a ch ô nh gián ti p). 2.2 Vi t CT xóa ô nh 31H c a RAM n i theo 2 cách ( nh a ch ô nh tr c ti p và nh a ch ô nh gián ti p). 2.3 Vi t CT ghi n i dung thanh ghi A vào ô nh 32H c a RAM n i theo 2 cách ( nh a ch ô nh tr c ti p và nh a ch ô nh gián ti p). 2.4 Vi t CT c ô nh 33H c a RAM n i vào thanh ghi A theo 2 cách ( nh a ch ô nh tr c ti p và nh a ch ô nh gián ti p). 2.5 Vi t CT chuy n d li u ô nh 34H ca RAM n i vào ô nh 35H c a RAM n i theo 2 cách (nh a ch ô nh tr c ti p và nh a ch ô nh gián ti p). Truy xu ất RAM ngoài 2.6 Vi t CT ghi 40H vào ô nh 0030H c a RAM ngoài. Bài t ập Vi Xử Lý 8051- Trang 1/6
  2. Đại H ọc Bách Khoa TP.HCM – Khoa Điện-Điện T ử Lê Chí Thông – chithong@gmail.com 2.33 Cho m t chu i d li u g m 20 byte liên ti p trong RAM n i, b t u t a ch 20H. Hãy vi t CT l n l ưt xu t các d ki u này ra Port 1. 2.34 Gi s Port 1 ưc n i n m t thi t b phát d li u (ví d nh ư 8 nút nh n). Hãy vi t CT nh n liên ti p 10 byte d li u t thi t b phát này và ghi vào 10 ô nh (RAM n i) liên ti p b t u t ô nh 50H. Tạo tr ễ (delay) 2.35 Vi t CT con delay 100 s, bi t r ng th ch anh (xtal) dùng trong h th ng là: a. 12 MHz b. 6 MHz 2.36 Vi t CT con delay 100ms, bi t r ng th ch anh (xtal) dùng trong h th ng là: a. 12 MHz b. 11,0592 MHz 2.37 Vi t CT con delay 1s, bi t r ng th ch anh (xtal) dùng trong h th ng là: a. 12 MHz b. 24 MHz Tạo xung 2.38 Vi t CT t o m t xung d ư ng ( ) ti chân P1.0 v i rng xung 1ms, bi t r ng xtal là 12 MHz. 2.39 Vi t CT t o chu i xung vuông có f = 100 KHz t i chân P1.1 (Xtal 12 MHz). 2.40 Vi t CT t o chu i xung vuông có f = 100 KHz và có chu k làm vi c D = 40% t i chân P1.2 (Xtal 12 MHz). 2.41 Vi t CT t o chu i xung vuông có f = 10 KHz t i chân P1.3 (Xtal 24 MHz). 2.42 Vi t CT t o chu i xung vuông có f = 10 KHz và có chu k làm vi c D = 30% t i chân P1.3 (Xtal 24 MHz). 2.43 Vi t CT t o chu i xung vuông có f = 10 Hz t i chân P1.4 (Xtal 12 MHz). 2.44 Vi t CT t o chu i xung vuông có f = 10 Hz và có chu k làm vi c D = 25% t i chân P1.5 (Xtal 12 MHz). Các phép toán 2.45 Cho m t chu i s 8 bit không d u trong RAM n i g m 10 s bt u t ô nh 30H. Hãy vi t CT con cng chu i s này và ghi k t qu vào ô nh 2FH (gi s kt qu nh hn ho c b ng 255). 2.46 Cho m t chu i s 8 bit không d u trong RAM n i g m 10 s bt u t ô nh 30H. Hãy vi t CT con cng chu i s này và ghi k t qu vào ô nh 2EH:2FH (ô nh 2EH ch a byte cao c a kt qu và ô nh 2FH ch a byte th p c a k t qu ). 2.47 Cho m t chu i s 16 bit không d u trong RAM n i g m 10 s bt u t ô nh 30H theo nguyên t c ô nh có a ch nh hn ch a byte cao và ô nh có a ch ln h n ch a byte th p. (Ví d: byte cao c a s 16 bit u tiên ưc c t t i ô nh 30H và byte th p c a s 16 bit u tiên ưc ct t i ô nh 31H). Hãy vi t CT con cng chu i s này và c t k t qu vào ô nh 2EH:2FH. 2.48 Vi t CT con l y bù 2 s 16 bit ch a trong R2:R3. Bài t ập Vi Xử Lý 8051- Trang 3/6
  3. Đại H ọc Bách Khoa TP.HCM – Khoa Điện-Điện T ử Lê Chí Thông – chithong@gmail.com 3.2 Vi t CT con mang tên DELAY10 có nhi m v to tr 10ms dùng Timer. (Xtal 12MHz). 3.3 Dùng CT con DELAY500 (bài 3.1) vi t CT t o sóng vuông f=1KHz t i P1.0. 3.4 Dùng CT con DELAY10 (bài 3.2) vi t CT t o sóng vuông f=50Hz t i P1.1. 3.5 Dùng CT con DELAY500 (bài 3.1) vi t CT t o sóng vuông f=500Hz (D=25%) t i P1.2. 3.6 Dùng CT con DELAY10 (bài 3.2) vi t CT t o sóng vuông f=20Hz (D=20%) t i P1.3. 3.7 Vi t CT dùng Timer t o sóng vuông f=500Hz t i P1.4. (Xtal 12MHz). 3.8 Vi t CT dùng Timer t o sóng vuông f=20KHz t i P1.5. (Xtal 24MHz). 3.9 Vi t CT dùng Timer t o 2 sóng vuông có cùng f= 1KHz t i P1.6 và P1.7. Bi t r ng sóng vuông ti P1.7 ch m pha h n sóng vuông t i P1.6 100(s. (Xtal 12MHz). 3.10 Vi t CT dùng Timer iu khi n èn giao thông t i m t giao l . Cho bi t r ng: Đèn Bit điều khi ển Th ời gian Xanh 1 P1.0 25s Vàng 1 P1.1 3s 1 P1.2 Xanh 2 P1.3 33s Vàng 2 P1.4 3s 2 P1.5 èn sáng khi bit iu khi n b ng 0. 4. SERIAL PORT 4.1 Vi t CT c 1 chu i data ch a trong RAM n i t a ch 30H n 50H và xu t ra 1 thi t b (ví d nh ư màn hình tinh th lng LCD) ưc n i v i port n i ti p c a 8051 (ch UART 8 bit, 2400 baud). Cho Xtal 11,059 MHz. 4.2 Vi t CT nh n 1 chu i data t 1 thi t b ngoài (ví d nh ư máy c mã v ch) n i v i 8051 qua port n i ti p (ch UART 8 bit, 4800 baud) và ghi data vào RAM n i t a ch 40H. Bi t r ng chu i data g m 20 byte và Xtal 11,059MHz. 4.3 Vi t CT l y 1 chu i data ch a trong RAM ngoài b t u t a ch 2000H và xu t ra 1 thi t b ưc n i v i port n i ti p c a 8051 (ch UART 8 bit, 1200 baud). Chu i k t thúc b i ký t EOT (có mã ASCII là 04H) và ký t này c ng ưc xu t ra (Xtal 11,059 MHz). 4.4 Làm l i bài 4.3 nh ưng không xu t ký t EOT. 4.5 Vi t CT nh n 1 chu i data t 1 thi t b ngoài n i v i 8051 qua port n i ti p (ch UART 8 bit, 9600 baud) và ghi data vào RAM ngoài b t u t a ch 4000H. Chu i data b t u b ng ký t STX (02H) và k t thúc b ng ký t ETX (03H). Không ghi 2 ký t này vào RAM. Cho Xtal 11,059MHz. 4.6 Vi t CT con mang tên XUAT có nhi m v ly 1 chu i data ch a trong RAM ngoài xu t ra port ni ti p ch UART 9 bit. Bit th 9 là bit parity ch n. Chu i data k t thúc b ng ký t null (00H). CT g i CT con XUAT s t a ch bt u c a chu i vào DPTR tr ưc khi g i CT con XUAT. Gi s port n i ti p ã ưc kh i ng. 4.7 Vi t CT con mang tên NHAP có nhi m v nh p 1 chu i data g m 30 byte t port n i ti p ch UART 9 bit, bit th 9 là bit parity l . N u data nh n ưc không b li thì ghi vào 1 vùng nh Bài t ập Vi Xử Lý 8051- Trang 5/6