Thực hành điều khiển các thiết bị vào ra
lượt xem 91
download
Bước 1: Xây dựng mạch điều khiển mô tả như hình 2.3.5. Trong ví dụ này, các chân P2.0 đến P2.7 điều khiển việc cấp nguồn cho các led 7 thanh. Các chân P0.0 đến P0.6 được nối với các chân của led 7 thanh để điều khiển việc cấp đất cho các thanh led.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Thực hành điều khiển các thiết bị vào ra
- 2.3.5 Điều khiển nhiều led 7 thanh 2. Thực hành điều khiển các thiết bị vào ra 2.3 Điều khiển led 7 thanh 2.3.5 Cách điều khiển nhiều led 7 thanh Trong phần này bài học sẽ hướng dẫn cách điều khiển nhiều led 7 thanh cùng lúc Bước 1: Xây dựng mạch điều khiển mô tả như hình 2.3.5. Trong ví dụ này, các chân P2.0 đ ến P2.7 điều khiển việc cấp nguồn cho các led 7 thanh. Các chân P0.0 đến P0.6 đ ược nối v ới các chân của led 7 thanh để điều khiển việc cấp đất cho các thanh led. Hình 2.3.5 Sơ đồ nguyên lý điều khiển nhiều led 7 thanh Bước 2: Lập trình điều khiển Led theo ngôn ngữ lập trình Assembly (có th ể dùng ch ương trình Reads51) Nội dung chương trình: =============================================================== org 0h start: mov P0,#11111001b;Số 1 clr P2.7 ;Led 1 hiển thị số 1 call delay ;Gọi trễ setb P2.7 ;Tắt led 1 ; mov P0,#11011011b;Số 2 clr P2.6 ;Led 2 hiển thị số 2 call delay ;Gọi trễ
- setb P2.6 ;Tắt led 2 ; mov P0,#10110000b;Số 3 clr P2.5 ;Led 3 hiển thị số 3 call delay ;Gọi trễ setb P2.5 ;Tắt led 3 ; mov P0,#10011001b;Số 4 clr P2.4 ;Led 4 hiển thị số 4 call delay ;Gọi trễ setb P2.4 ;Tắt led 4 ; mov P0,#10010010b;Số 5 clr P2.3 ;Led 5 hiển thị số 5 call delay ;Gọi trễ setb P2.3 ;Tắt led 5 ; mov P0,#10000010b;Số 6 clr P2.2 ;Led 6 hiển thị sô 6 call delay ;Gọi trễ setb P2.2 ;Tắt led 6 ; mov P0,#11111000b;Số 7 clr P2.1 ;Số 7 hiển thị số 7 call delay ;Gọi trễ setb P2.1 ;Tắt led 7 ; mov P0,#10000000b;Số 8 clr P2.0 ;Led 8 hiển thị số 8 call delay ;Gọi trễ setb P2.0 ;Tắt led 8 sjmp start ;Trở lại ban đầu ;============================================= ;subroutine delay created to rise delay time ;============================================= delay: mov R1,#255 del1: mov R2,#255 del2: djnz R2,del2 djnz R1,del1 ret end ===============================================================
- Bước 3: Biên dịch chương trình trên bằng các chương trình biên dịch chuyên d ụng cho vi đi ều khi ển như Reads51. Sau khi biên dịch, chươn trình s ẽ t ạo ra file mã máy mà vi điều khi ển d ựa vào đó để hoạt động. Thông thường file đó sẽ có dạng tên_file.hex. Việc đ ặt tên file là do ng ười dùng t ự đặt. Bước 4 Nạp file mã máy mà chương trình biên dịch vừa tạo ra bằng các công cụ và m ạch nạp nh ư trong trang web này hướng dẫn làm như: mạch nạp 89xxxx, mạch nạp 89Cxx, mạch nạp 89Sxxxx, mạch nạp 89Sxx và AVR Sau khi nạp file mã máy vào vi điều khiển 89S51. Gắn vi điều khiển vào mạch ứng dụng, s ẽ thấy kết quả của bài học. 2. Thực hành điều khiển các thiết bị vào ra 2.3 Điều khiển led 7 thanh 2.3.2 Phối hợp nhiều thanh của led 7 thanh Bước 1: Xây dựng mạch điều khiển mô tả như hình 2.3.2. Trong ví dụ này, các chân P2.0 điều khiển việc cấp nguồn cho led 7 thanh. Các chân P0.0 đến P0.6 đ ược nối v ới các chân c ủa led 7 thanh để điều khiển việc cấp đất cho các thanh led. Trong phần này sẽ h ướng d ẫn cách ph ối hợp hi ển thị các thanh led của led 7 thanh Hình 2.3.2 Sơ đồ nguyên lý điều khiển led 7 thanh
- Bước 2: Lập trình điều khiển Led theo ngôn ngữ lập trình Assembly (có th ể dùng ch ương trình Reads51) Nội dung chương trình: =============================================================== org 0h start: mov P0,#11111100b; Cấp 0V cho thanh led a và b clr P2.0 ; Cấp 5V cho led 7 thanh call delay ; Gọi hàm trễ mov P0,#11011011b; Cấp 0V cho thanh led c,f clr P2.0 ; Cấp 5V cho led call delay ; Gọi hàm trễ mov P0,#10110000b; Cấp 0V to a,b,c,d,g clr P2.0 ; Cấp 5V cho led call delay ; Gọi hàm trễ sjmp start ; Trở về đầu chương trình ;============================================= ;subroutine delay created to rise delay time ;============================================= delay: mov R1,#255 del1: mov R2,#255 del2: djnz R2,del2 djnz R1,del1 ret end =============================================================== Bước 3: Biên dịch chương trình trên bằng các chương trình biên dịch chuyên d ụng cho vi đi ều khi ển như Reads51. Sau khi biên dịch, chươn trình s ẽ t ạo ra file mã máy mà vi điều khi ển d ựa vào đó để hoạt động. Thông thường file đó sẽ có dạng tên_file.hex. Việc đ ặt tên file là do ng ười dùng t ự đặt. Bước 4 Nạp file mã máy mà chương trình biên dịch vừa tạo ra bằng các công cụ và m ạch nạp nh ư trong trang web này hướng dẫn làm như: mạch nạp 89xxxx, mạch nạp 89Cxx, mạch nạp 89Sxxxx, mạch nạp 89Sxx và AVR
- Sau khi nạp file mã máy vào vi điều khiển 89S51. Gắn vi điều khiển vào mạch ứng dụng, s ẽ thấy kết quả của bài học. 2.3.3 Điều khiển led 7 thanh hiển thị số Thực hành mạch như phần 2.3.2, tuy nhiên hãy phối hợp các thanh led đ ể led 7 thanh hi ển th ị các chữ số 0,1,2,3,4,5,6,7,8,9. Việc này rất đơn giản. Chỉ vi ệc thay đ ổi lại ch ương trình ở ph ần 2.3.2 (thay đổi lại lệnh mov P0,#xxxxxxxxb) 2.3.4 Điều khiển led 7 thanh hiển thị chữ Thực hành mạch như phần 2.3.2, tuy nhiên hãy phối hợp các thanh led đ ể led 7 thanh hi ển th ị các chữ số a,b,c,d,e,f. Việc này rất đơn giản. Chỉ việc thay đổi lại chương trình ở phần 2.3.2 (thay đổi lại lệnh mov P0,#xxxxxxxxb) Thực hành điều khiển các thiết bị vào ra 2.2 Giao tiếp công tắc 2.2.2 Điều khiển led chạy khi nhấn công tắc Trong phần này, nội dung bài học là điều khiển led sáng dịch chuyển khi nh ấn công t ắc. Cụ thể là led sáng sẽ chuyển động sang trái khi nhấn phím nối với chân P2.0 và chuy ển đ ộng sang phải khi nhấn phím nối với chân P2.1. Bước 1: Xây dựng mạch điều khiển mô tả như hình 2.2.2. Trong ví dụ này, các chân P2.0 đ ến chân P2.7 của vi điều khiển được nối với phím bấm nháy và các chân P0.0 đến P0.7 đ ược n ối v ới Ka- tốt của led. Nhiệm vụ là khi nhấn phím tại chân P2.0 thì led sáng chuy ển đ ộng sang trái, nh ấn phím nối với chân P2.1 led sáng sẽ chuyển động sang ph ải.
- Hình 2.2.2 Sơ đồ nguyên lý hoạt động giao tiếp với công tắc Bước 2: Lập trình điều khiển Led theo ngôn ngữ lập trình Assembly (có th ể dùng ch ương trình Reads51) Nội dung chương trình: =============================================================== org 0h CekP20: JB P2.0,CekP21 ; kiểm tra P2.0 call RLeft ; gọi hàm điều khiển led -> trái sjmp CekP20 ; trở về CekP20 CekP21: JB P2.1,CekP20 ; kiểm tra P2.1 call RRight ; gọi hàm điều khiển led -> trái sjmp CekP20 ; trở về CekP2.0 ;=============================================== ;this subroutine is used to move LED to the left. ;================================================ RLeft: mov A,#11111110b;Khởi tạo cho led tại P0.0 sáng RLeft1: mov P0,A ;P0.0 sáng call delay ;gọi hàm trễ JB P2.0,RLeft2 ;kiểm tra P2.0 sjmp EndRLeft ;không nhấn phím P2.0, kết thúc ; dịch thanh ghi A -> trái RLeft2: RL A sjmp RLeft1 EndRLeft: ret
- ; ;================================================= ;this subroutine is used to move LED to the right. ;================================================= RRight: mov A,#01111111b RRight1:mov P0,A call delay JB P2.0,RRight2 sjmp EndRRight RRight2:RL A sjmp RRight1 EndRRight: ret ;============================================= ;subroutine delay created to rise delay time ;============================================= delay: mov R1,#255 del1: mov R2,#255 del2: djnz R2,del2 djnz R1,del1 ret end =============================================================== Bước 3: Biên dịch chương trình trên bằng các chương trình biên dịch chuyên d ụng cho vi đi ều khi ển như Reads51. Sau khi biên dịch, chươn trình s ẽ t ạo ra file mã máy mà vi điều khi ển d ựa vào đó để hoạt động. Thông thường file đó sẽ có dạng tên_file.hex. Việc đ ặt tên file là do ng ười dùng t ự đặt. Bước 4 Nạp file mã máy mà chương trình biên dịch vừa tạo ra bằng các công cụ và m ạch nạp nh ư trong trang web này hướng dẫn làm như: mạch nạp 89xxxx, mạch nạp 89Cxx, mạch nạp 89Sxxxx, mạch nạp 89Sxx và AVR Sau khi nạp file mã máy vào vi điều khiển 89S51. Gắn vi điều khiển vào mạch ứng dụng, s ẽ thấy kết quả của bài học. Thực hành điều khiển các thiết bị vào ra 2.1 Điều khiển LED 2.1.3 Điều khiển bật tắt lần lượt các led Phần trước đã giới thiệu cách điều khiển bật tắt nhiều led cùng lúc, phần này sẽ hướng dẫn cách điều khiển bật tắt lần lượt các led (8 led). Bước 1:
- Thiết kế mạch ứng dụng cho vi điều khiển như hình 2.1.3. Trong đó các chân P0.0 đến P0.7 được nối với Ka-tốt của led. Hình 2.1.3 Sơ đồ nguyên lý mạch điều khiển lần lượt các led Bước 2: Lập trình điều khiển Led theo ngôn ngữ lập trình Assembly (có th ể dùng ch ương trình Reads51) Nội dung chương trình: =============================================================== org 0h start: mov P0,#11111110b; Bật led nối với P0.0 call delay ; Tạo trễ mov P0,#11111101b; Bật led nối với P0.1 call delay ; Tạo trễ mov P0,#11111011b; Bật led nối với P0.2 call delay ; Tạo trễ mov P0,#11110111b; Bật led nối với P0.3 call delay ; Tạo trễ mov P0,#11101111b; Bật led nối với P0.4 call delay ; Tạo trễ mov P0,#11011111b; Bật led nối với P0.5 call delay ; Tạo trễ mov P0,#10111111b; Bật led nối với P0.6 call delay ; Tạo trễ mov P0,#01111111b; Bật led nối với P3.7 call delay ; Tạo trễ sjmp start ; loooooop forever to start ;============================================= ;subroutine delay created to rise delay time ;============================================= delay: mov R1,#255 del1: mov R2,#255 del2: djnz R2,del2 djnz R1,del1
- ret end =============================================================== Bước 3: Biên dịch chương trình trên bằng các chương trình biên dịch chuyên d ụng cho vi đi ều khi ển như Reads51. Sau khi biên dịch, chươn trình s ẽ t ạo ra file mã máy mà vi điều khi ển d ựa vào đó để hoạt động. Thông thường file đó sẽ có dạng tên_file.hex. Việc đ ặt tên file là do ng ười dùng t ự đặt. Bước 4 Nạp file mã máy mà chương trình biên dịch vừa tạo ra bằng các công cụ và m ạch nạp nh ư trong trang web này hướng dẫn làm như: mạch nạp 89xxxx, mạch nạp 89Cxx, mạch nạp 89Sxxxx, mạch nạp 89Sxx và AVR Sau khi nạp file mã máy vào vi điều khiển 89S51. Gắn vi điều khiển vào mạch ứng dụng, s ẽ thấy kết quả của bài học.
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Giáo trình: Tổng quan về máy công cụ điều khiển bằng chương trình số (Máy CNC)
145 p | 1076 | 579
-
GIÁO TRÌNH VI ĐIỀU KHIỂN 8051
0 p | 586 | 226
-
thiết kế phương pháp điều khiển robot tự hành dựa trên cơ sở logic mờ, chương 12
8 p | 341 | 154
-
đồ án thiết kế chế tạo và điều khiển tay máy, chương 14
9 p | 195 | 79
-
Giáo trình thực hành Điều khiển công nghiệp - Võ Duy Linh (ĐH Công Nghiệp))
31 p | 178 | 54
-
Mô hình nhà trồng cây với điều khiển tự động ứng dụng tại khu vực Thành Phố Hồ Chí Minh
17 p | 182 | 25
-
Sacr - Một công cụ phần mềm mô phỏng và điều khiển robot
6 p | 80 | 15
-
Giáo trình Thực hành điều khiển lập trình - ĐH Sư Phạm Kỹ Thuật Nam Định
134 p | 63 | 14
-
Nghiên cứu thiết kế, chế tạo mô hình thực hành điều khiển và giám sát hệ thống ứng dụng PLC S7-1200
4 p | 121 | 10
-
Thiết kế, chế tạo bộ điều khiển tự động tiết kiệm điện cho các thiết bị dùng trong văn phòng tại Trường Đại học Lâm Nghiệp
8 p | 74 | 9
-
Mô hình thực nghiệm tay máy 5 bậc tự do
6 p | 71 | 8
-
Giáo trình Điều khiển khí nén thủy lực (Nghề: Cơ điện tử): Phần 1 - Trường CĐ Nghề Kỹ thuật Công nghệ
132 p | 51 | 8
-
Giáo trình Cơ sở điều khiển quá trình (Nghề: Vận hành thiết bị khai thác dầu khí - Trình độ: Trung cấp) - Trường Cao Đẳng Dầu Khí (năm 2020)
53 p | 19 | 6
-
Giáo trình Điều khiển điện - khí nén (Nghề đào tạo: Điện tử công nghiệp - Trình độ đào tạo: Cao đẳng nghề) - Trường CĐ nghề Số 20
230 p | 14 | 6
-
Giáo trình Điều khiển điện khí nén (Nghề: Công nghệ kỹ thuật Điện-Điện tử - CĐ/TC) - Trường Cao đẳng nghề Đồng Tháp
121 p | 21 | 5
-
Mô hình thực tập điều khiển tự động sử dụng bộ lập trình PLC cỡ nhỏ
19 p | 47 | 3
-
Nghiên cứu, thiết kế kit thực hành FPGA
10 p | 7 | 1
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