1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Vi Mạch MCS 51 - Ứng Dụng Thực Tế (Phần 2) part 3 pps

9 340 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

F. HỆ THỐNG ĐIỀU KHIỂN NÚT NHẤN. Bài 2: Chương trình điều khiển nút nhấn, khi ta nhấn nút KEY0 thì 8 LED sẽ chớp tắt với tần số 5 Hz và ngược lại khi ta nhả nút KEY0 thì 8 LED sẽ chớp tắt với tần số 20 Hz (MOMENTARY SW được nối với Port0, LED được nối với Port1 (có sử dụng bộ đệm đảo)). Giáo trình thực hành vi xử lý. 190 Biên soạn: Phạm Quang Trí 1 Trình tự tiến hành thí nghiệm: 1.1 Kết nối thiết bị thí nghiệm. • Quá trình kết nối thiết bị thí nghiệm tương tự như Bài 1. 1.2 Vẽ lưu đồ giải thuật và viết chương trình điều khiển. ;*************************************************** ;CHUONG TRINH DIEU KHIEN NUT NHAN LAM 8 LED HOAT DONG ;*************************************************** ;KET NOI: 8 LED -> PORT1 MOMENTARY SW -> PORT0 (ACT = 0) ;*************************************************** ORG 00H MAIN: MOV A,#00H MP1: JNB P0.0,NHAN ;KIEM TRA NUT NHAN - Y: NUT DUOC NHAN ;NUT DUOC NHA -> F = 20 Hz ACALL DELAY50MS NHAN: ;NUT DUOC NHAN -> F = 5 Hz ACALL DELAY200MS SJMP MP1 ;*************************************************** DELAY50MS: ;CTC DELAY 500MS (F = 20 Hz) PUSH 00H CPL A ;CHOP TAT PORT 1 MOV P1,A MOV R0,#50 MOV TMOD,#01H DEL50: MOV TH0,#HIGH(-1000) MOV TL0,#LOW(-1000) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 DJNZ R0,DEL50 POP 00H RET ;*************************************************** DELAY200MS: ;CTC DELAY 200MS (F = 5 Hz) PUSH 00H CPL A ;CHOP TAT PORT 1 MOV P1,A MOV R0,#100 MOV TMOD,#01H DEL5: MOV TH0,#HIGH(-2000) MOV TL0,#LOW(-2000) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 DJNZ R0,DEL5 POP 00H RET END 1.3 Thực hiện lần lượt các bước từ 1.3 đến 1.8 tương tự như bài trên. 2 Bài tập: • Bài 1: Hãy viết chương trình điều khiển nút nhấn và biểu diễn các kiểu hiển thị trên 8 LED. Tự lựa chọn phương pháp kết nối các nút nhấn và LED.  Nhấn nút “KEY0”: 8 LED sáng tắt liên tục.  Nhấn nút “KEY1”: 8 LED sáng dần và tắt hết liên tục.  Nhấn nút “KEY2”: 8 LED đếm lên nhị phân 8 bit liên tục.  Nhấn nút “KEY3”: 8 LED sáng đuổi liên tục. F. HỆ THỐNG ĐIỀU KHIỂN NÚT NHẤN. Bài 2: Chương trình điều khiển nút nhấn, khi ta nhấn nút KEY0 thì 8 LED sẽ chớp tắt với tần số 5 Hz và ngược lại khi ta nhả nút KEY0 thì 8 LED sẽ chớp tắt với tần số 20 Hz (MOMENTARY SW được nối với Port0, LED được nối với Port1 (có sử dụng bộ đệm đảo)). Giáo trình thực hành vi xử lý. 191 Biên soạn: Phạm Quang Trí  Nhấn nút “KEY4”: 8 LED sáng dồn liên tục.  Nhấn nút “KEY5”: 8 LED tắt hết (không hoạt động). • Bài 2: Hãy viết chương trình điều khiển khi nhấn nút nhấn nào thì số thứ tự của nút nhấn đó hiển thị lên LED 7 đoạn (LED0). Tự lựa chọn phương pháp kết nối các nút nhấn và LED 7 đoạn. • Bài 3: Hãy viết chương trình điều khiển khi nhấn nút nhấn nào thì số thứ tự của nút nhấn đó hiển thị lên LED ma trận. Tự lựa chọn phương pháp kết nối các nút nhấn và LED ma trận. • Bài 4: Hãy viết chương trình điều khiển khi nhấn nút nhấn KEY1 thì RELAY1 đóng, khi nhấn nút nhấn KEY2 thì RELAY2 đóng và ngược lại khi không nhấn nút nhấn thì các relay sẽ ngắt. Tự lựa chọn phương pháp kết nối các nút nhấn và relay. • Bài 5: Hãy viết chương trình điều khiển khi nhấn nút nhấn KEY0 thì LED 7 đoạn (LED1) sẽ bắt đầu đếm BCD từ 9 xuống 0. Khi giá trị của LED 7 đoạn này giãm xuống tới giá trị 0 thì RELAY1 sẽ đóng lại. Sau đó khi nhấn nút nhấn KEY1 thì LED 7 đoạn tắt và RELAY1 ngắt. Tự lựa chọn phương pháp kết nối các nút nhấn, LED 7 đoạn và relay. • Bài 6: Hãy viết chương trình điều khiển hiển thị số đếm BCD từ 00 lên 59 trên hai LED 7 đoạn (LED1 và LED2). Khi nhấn nút nhấn KEY0 thì qúa trình đếm dừng lại và giá trị trên hai LED 7 đoạn bắt đầu sáng tắt liên tục. Sau đó, khi nhấn nút KEY1 thì giá trị trên hai LED 7 đoạn tăng dần lên theo số lần nhấn nút, khi nhấn nút KEY2 thì giá trị trên hai LED 7 đoạn giãm dần lên theo số lần nhấn nút, khi nhấn nút KEY0 thì quá trình đếm lại tiếp tục. Tự lựa chọn phương pháp kết nối các nút nhấn và LED 7 đoạn. • Bài 7: Hãy viết chương trình điều khiển hiển thị đồng hồ số trên sáu LED 7 đoạn (LED3 – LED7) có thể điều chỉnh dược thời gian bằng các nút nhấn:  Nút “KEY0”: dùng để chọn lựa tính năng điều chỉnh (Giờ / Phút / Giây) hoặc dùng để thoát khỏi quá trình điều chỉnh thời gian.  Nút “KEY1”: dùng để tăng giá trị thời gian.  Nút “KEY2”: dùng để giãm giá trị thời gian. Trong quá trình điều chỉnh thời gian thì đồng hồ dừng hoạt động và khi chọn lựa tính năng điều chỉnh nào (Giờ / Phút / Giây) thì cặp LED 7 đoạn tương ứng sẽ sáng tắt liên tục. Tự lựa chọn phương pháp kết nối các nút nhấn và LED 7 đoạn. • Bài 8: Sinh viên tự mình suy nghĩ và phát triển thêm chương trình. TRUNG TÂM THÍ NGHIỆM THỰC HÀNH ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP T T À À I I L L I I Ệ Ệ U U H H Ư Ư Ớ Ớ N N G G D D Ẫ Ẫ N N T T H H Í Í N N G G H H I I Ệ Ệ M M - - T T H H Ự Ự C C H H À À N N H H G. HỆ THỐNG ĐIỀU KHIỂN CÔNG TẮC. Giáo trình thực hành vi xử lý. 193 Biên soạn: Phạm Quang Trí A. MỤC ĐÍCH: • Thực hành lập trình ứng dụng trên máy tính, biên dịch chương trình, nạp vào vi điều khiển và sử dụng mô hình thí nghiệm để kiểm chứng. • Điều khiển thiết bị ngoại vi bằng các port của vi điều khiển. • Điều khiển các thiết bị ngoại vi bằng công tắc. • Trình bày một số ứng dụng điều khiển các thiết bị ngoại vi có sử dụng công tắc. B. YÊU CẦU: • Nắm vững tập lệnh của vi điều khiển MCS-51. • Biết cách viết các chương trình điều khiển công tắc. • Nắm được sơ đồ và nguyên lý hoạt động của khối công tắc trên mô hình thí nghiệm. • Biết cách viết các chương trình ứng dụng có sử dụng công tắc để điều khiển các thiết bị ngoại vi khác nhau. G. HỆ THỐNG ĐIỀU KHIỂN CÔNG TẮC. Bài tập: Chương trình điều khiển công tắc và hiển thị lên tám LED mức logic hiện tại (LED sáng = mức cao, LED tắt = mức thấp) của tám công tắc gạt (SWITCH được nối với Port0, LED được nối với Port1 (có sử dụng bộ đệm đảo)). Giáo trình thực hành vi xử lý. 194 Biên soạn: Phạm Quang Trí 1 Trình tự tiến hành thí nghiệm: 1.1 Kết nối thiết bị thí nghiệm. • Tắt nguồn cấp cho mô hình thí nghiệm. • Dùng dây bus 8 nối J64 (PORT1) ở khối vi điều khiển với J11 (BAR LED 1) ở khối dãy LED. • Dùng dây bus 8 nối J63 (PORT0 / DATA) ở khối vi điều khiển với J34 (SWITCH) ở khối công tắc. • Dùng dây bus 3 nối J103 (POWER) ở khối dãy LED và J106 (POWER) ở khối công tắc với nguồn +5V ở khối nguồn. POWERSWITCH PORT 0PORT 1PORT 3PORT 2 PORT 1PORT 3 40 PINS 20 PINS 3 3 1.2 Vẽ lưu đồ giải thuật và viết chương trình điều khiển. ;*************************************************** ;CHUONG TRINH DIEU KHIEN CONG TAC LAM 8 LED HOAT DONG ;*************************************************** ;KET NOI: 8 LED -> PORT1 SWITCH -> PORT0 ;*************************************************** ORG 00H MAIN: MOV P1,#00H ;TAT CAC LED SW0: ;SW0 JB P0.0,SW0OK ;KIEM TRA CONG TAC SW0 - Y: SW0 = 1 CLR P1.0 ;SW0 NHA -> LED TAT SJMP SW1 ;KIEM TRA CONG TAC KE TIEP SW0OK: SETB P1.0 ;SW0 NHAN -> LED SANG SW1: ;SW1 JB P0.1,SW1OK ;KIEM TRA CONG TAC SW1 - Y: SW1 = 1 CLR P1.1 ;SW1 NHA -> LED TAT SJMP SW2 ;KIEM TRA CONG TAC KE TIEP SW1OK: SETB P1.1 ;SW1 NHAN -> LED SANG SW2: ;SW2 JB P0.2,SW2OK ;KIEM TRA CONG TAC SW2 - Y: SW2 = 1 CLR P1.2 ;SW2 NHA -> LED TAT SJMP SW3 ;KIEM TRA CONG TAC KE TIEP SW2OK: SETB P1.2 ;SW2 NHAN -> LED SANG SW3: ;SW3 JB P0.3,SW3OK ;KIEM TRA CONG TAC SW3 - Y: SW3 = 1 CLR P1.3 ;SW3 NHA -> LED TAT SJMP SW4 ;KIEM TRA CONG TAC KE TIEP SW3OK: SETB P1.3 ;SW3 NHAN -> LED SANG SW4: ;SW4 JB P0.4,SW4OK ;KIEM TRA CONG TAC SW4 - Y: SW4 = 1 CLR P1.4 ;SW4 NHA -> LED TAT SJMP SW5 ;KIEM TRA CONG TAC KE TIEP SW4OK: SETB P1.4 ;SW4 NHAN -> LED SANG SW5: ;SW5 G. HỆ THỐNG ĐIỀU KHIỂN CÔNG TẮC. Bài tập: Chương trình điều khiển công tắc và hiển thị lên tám LED mức logic hiện tại (LED sáng = mức cao, LED tắt = mức thấp) của tám công tắc gạt (SWITCH được nối với Port0, LED được nối với Port1 (có sử dụng bộ đệm đảo)). Giáo trình thực hành vi xử lý. 195 Biên soạn: Phạm Quang Trí JB P0.5,SW5OK ;KIEM TRA CONG TAC SW5 - Y: SW5 = 1 CLR P1.5 ;SW5 NHA -> LED TAT SJMP SW6 ;KIEM TRA CONG TAC KE TIEP SW5OK: SETB P1.5 ;SW5 NHAN -> LED SANG SW6: ;SW6 JB P0.6,SW6OK ;KIEM TRA CONG TAC SW6 - Y: SW6 = 1 CLR P1.6 ;SW6 NHA -> LED TAT SJMP SW7 ;KIEM TRA CONG TAC KE TIEP SW6OK: SETB P1.6 ;SW6 NHAN -> LED SANG SW7: ;SW7 JB P0.7,SW7OK ;KIEM TRA CONG TAC SW7 - Y: SW7 = 1 CLR P1.7 ;SW7 NHA -> LED TAT SJMP SW0 ;KIEM TRA CONG TAC KE TIEP SW7OK: SETB P1.7 ;SW7 NHAN -> LED SANG SJMP SW0 END 1.3 Lưu chương trình và biên dịch chương trình. 1.4 Kiểm tra lỗi và hiệu chỉnh lỗi nếu có. 1.5 Gắn chip vi điều khiển thí nghiệm vào socket tương ứng trên khối nạp chip và bật nguồn cho khối nạp chip hoạt động. 1.6 Nạp chương trình vào vi điều khiển. 1.7 Sử dụng vi điều khiển vừa nạp gắn vào socket tương ứng trên khối vi điều khiển. 1.8 Bật nguồn cho mô hình thí nghiệm. Quan sát kết quả hoạt động, nếu kết quả hoạt động không đúng yêu cầu của đề bài thì phải quay lại kiểm tra việc kết nối mạch, hiệu chỉnh chương trình và làm lại các bước từ bước 3 đến bước 9. 2 Bài tập: • Bài 1: Hãy viết chương trình điều khiển hiển thị giá trị nhị phân của tám công tắc gạt dưới dạng số HEX trên hai LED 7 đoạn (LED6 và LED7). • Bài 2: Hãy viết chương trình điều khiển hiển thị giá trị nhị phân của tám công tắc gạt dưới dạng số DEC trên ba LED 7 đoạn (LED5, LED6 và LED7). • Bài 3: Hãy viết chương trình điều khiển công tắc và biểu diễn các kiểu hiển thị trên 8 LED.  SW1 = ON (mức thấp): 8 LED tắt hết (không hoạt động).  SW2 = ON (mức thấp): 8 LED sáng tắt liên tục.  SW3 = ON (mức thấp): 8 LED sáng dần và tắt hết liên tục.  SW4 = ON (mức thấp): 8 LED đếm lên nhị phân 8 bit liên tục.  SW5 = ON (mức thấp): 8 LED sáng đuổi liên tục.  SW6 = ON (mức thấp): 8 LED sáng dồn liên tục.  SW7 = ON (mức thấp): 8 LED sáng hết và tắt dần liên tục.  SW8 = ON (mức thấp): 8 LED đếm xuống nhị phân 8 bit liên tục. • Bài 4: Hãy viết chương trình điều khiển công tắc để đóng ngắt RELAY1. RELAY1 sẽ đóng khi các công tắc được gạt đúng vị trí đã chọn trước (SW1, 3, 5, 7 = ON và SW2, 4, 6, 8 = OFF) và nhấn nút nhấn KEY0. Ngược lại thì RELAY1 sẽ ngắt. Khi RELAY1 đóng thì trên LED ma trận hiển thị chữ Y, còn khi RELAY1 ngắt thì LED ma trận hiển thị chữ N. • Bài 5: Sinh viên tự mình suy nghĩ và phát triển thêm chương trình. TRUNG TÂM THÍ NGHIỆM THỰC HÀNH ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP T T À À I I L L I I Ệ Ệ U U H H Ư Ư Ớ Ớ N N G G D D Ẫ Ẫ N N T T H H Í Í N N G G H H I I Ệ Ệ M M - - T T H H Ự Ự C C H H À À N N H H H. HỆ THỐNG ĐIỀU KHIỂN RELAY. Giáo trình thực hành vi xử lý. 197 Biên soạn: Phạm Quang Trí A. MỤC ĐÍCH: • Thực hành lập trình ứng dụng trên máy tính, biên dịch chương trình, nạp vào vi điều khiển và sử dụng mô hình thí nghiệm để kiểm chứng. • Điều khiển thiết bị ngoại vi bằng các port của vi điều khiển. • Điều khiển các thiết bị ngoại vi công suất lớn thông qua việc điều khiển các relay. • Trình bày một số ứng dụng điều khiển đóng ngắt các thiết bị ngoại vi công suất lớn bằng cách sử dụng relay. B. YÊU CẦU: • Nắm vững tập lệnh của vi điều khiển MCS-51. • Biết cách viết các chương trình điều khiển đóng ngắt relay. • Nắm được sơ đồ và nguyên lý hoạt động của khối relay trên mô hình thí nghiệm. • Biết cách viết các chương trình ứng dụng có sử dụng các relay để điều khiển các thiết bị ngoại vi khác nhau. H. HỆ THỐNG ĐIỀU KHIỂN RELAY. Bài tập: Chương trình điều khiển RELAY1 và RELAY2 đóng ngắt tuần tự và liên tục. Thời gian giữa hai lần đóng ngắt là 1s (RELAY1 và RELAY2 được nối với P1.0 và P1.1). Giáo trình thực hành vi xử lý. 198 Biên soạn: Phạm Quang Trí 1 Trình tự tiến hành thí nghiệm: 1.1 Kết nối thiết bị thí nghiệm. • Tắt nguồn cấp cho mô hình thí nghiệm. • Dùng dây bus 2 nối J64 (PORT1) ở khối vi điều khiển với J18 (RELAY CONTROL) ở khối relay (chú ý là ta chỉ nối 2 bit thấp của J64 với J18). • Dùng dây bus 3 nối J111 (POWER) ở khối relay với nguồn +5V ở khối nguồn. RELAY CONTROL POWER PORT 0PORT 1PORT 3PORT 2 PORT 1PORT 3 40 PINS 20 PINS 1.2 Vẽ lưu đồ giải thuật và viết chương trình điều khiển. ;*************************************************** ;CHUONG TRINH DIEU KHIEN 2 RELAY DONG NGAT ;*************************************************** ;KET NOI: RELAY CONTROL -> PORT1 ;*************************************************** ORG 00H CHOPTAT: MOV P1,#00000001B ;RELAY1 DONG, RELAY2 NGAT LCALL DELAY1S MOV P1,#00000010B ;RELAY2 DONG, RELAY1 NGAT LCALL DELAY1S SJMP CHOPTAT ;QUAY LAI ;**************************************************** DELAY1S: ;CHUONG TRINH CON TAO THOI GIAN TRE 1S PUSH 00H MOV R0,#100 MOV TMOD,#01H LOOP2: MOV TH0,#HIGH(-10000) MOV TL0,#LOW(-10000) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 DJNZ R0,LOOP2 POP 00H RET END 1.3 Lưu chương trình và biên dịch chương trình. 1.4 Kiểm tra lỗi và hiệu chỉnh lỗi nếu có. 1.5 Gắn chip vi điều khiển thí nghiệm vào socket tương ứng trên khối nạp chip và bật nguồn cho khối nạp chip hoạt động. 1.6 Nạp chương trình vào vi điều khiển. 1.7 Sử dụng vi điều khiển vừa nạp gắn vào socket tương ứng trên khối vi điều khiển. 1.8 Bật nguồn cho mô hình thí nghiệm. Quan sát kết quả hoạt động, nếu kết quả hoạt động không đúng yêu cầu của đề bài thì phải quay lại kiểm tra việc kết nối mạch, hiệu chỉnh chương trình và làm lại các bước từ bước 3 đến bước 9. . -& gt; LED SANG SW3: ;SW3 JB P0 .3, SW3OK ;KIEM TRA CONG TAC SW3 - Y: SW3 = 1 CLR P1 .3 ;SW3 NHA -& gt; LED TAT SJMP SW4 ;KIEM TRA CONG TAC KE TIEP SW3OK: SETB P1 .3 ;SW3 NHAN -& gt; LED SANG. chứng. • Điều khiển thiết bị ngoại vi bằng các port của vi điều khiển. • Điều khiển các thiết bị ngoại vi bằng công tắc. • Trình bày một số ứng dụng điều khiển các thiết bị ngoại vi có sử dụng. Giáo trình thực hành vi xử lý. 1 93 Biên soạn: Phạm Quang Trí A. MỤC ĐÍCH: • Thực hành lập trình ứng dụng trên máy tính, biên dịch chương trình, nạp vào vi điều khiển và sử dụng mô hình

Ngày đăng: 09/07/2014, 23:20

Xem thêm: Vi Mạch MCS 51 - Ứng Dụng Thực Tế (Phần 2) part 3 pps

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN