hệ thống điều khiển thiết bị từ xa và tự động quay số báo động thông qua mạng điện thoại, chương 11 pps

8 227 0
hệ thống điều khiển thiết bị từ xa và tự động quay số báo động thông qua mạng điện thoại, chương 11 pps

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

Thông tin tài liệu

P 1 R7 P2.4=1 P0.0=0 P2.4=0 R7P1 7 0H=1 P 1 R7 P2.4=1 P0.0=1 P2.4=0 L CALL MO1 P 1 R7 P2.4=1 P0.1=0 P2.4=0 R7P1 7 1H=1 P 1 R7 P2.4=1 P0.1=1 P2.4=0 L CALL MO2 P 1 R7 P2.4=1 P0.2=0 P2.4=0 R7P1 7 2H=1 P 1 R7 P2.4=1 P0.2=1 P2.4=0 L CALL MO3 P 1 R7 P2.4=1 P0.3=0 P2.4=0 R7P1 7 3H=1 P 1 R7 P2.4=1 P0.3=1 P2.4=0 L CALL MO4 Chng 11: CHệễNG TRèNH CON Mễ THIET Bề 1. Lửu ủo giaỷi thuaọt. BEGIN A = 1 ẹ P2.0=1 ẹ S S ẹ ẹ A = 2 P2.1=1 S S A=3 ẹ P2.2=1 ẹ S S Ñ Ñ A=4 P2.3=1 S S RET 2. Giải thích: S au khi bấm đúng mã thứ nhất để mở thiết bò thì chương trình sẽ hỏi tiếp A=1 chưa. nếu đúng A=1 thì chương trình hỏi tiếp P2.0=1 chưa (P2.0 là trạng thái của công tắc bên ngoài). Nếu P2.0=1 là đúng thì ta phải xóa P0.0=0 để mở thiết bò 1 ( vì tín hiệu P0.0 và P2.0 được đưa qua cổng EXOR cho nên muốn đưa ra mứ c logic 1 thì mức logic của 2 trạng thái này sẽ khác nhau ). Sau đó đặt ô nhớ 70H=1 để báo là thiết bò 1 đã được mở. Sau đó gọi chương trình tiếng nói báo là “ Thiết bò 1 đã được mở”. Nếu P2.0=0 thì muốn mở thiết bò ta phải đặt P0.0=1 và đặt 70H=1 để báo thiết bò 1 đã được mở. Sau đó gọi chương trình báo mở thiết bò 1. Nếu điều kiện A=1 sai thì chương trình sẽ hỏi tiếp A=2 chưa. Nếu A=2 đúng, chương trình hỏi tiếp P2.1=1 chưa. Nếu P2.1=1 thì xóa P0.0=0 để mở thiết bò 2 và đồng thời đặt 71H=1 để báo là thiết bò 2 đã được mở. Sau đó gọi chương trình báo mở thiết bò 2. Nếu điều kiện P2.1=1 sai tức P2.1=0, muốn mở thiết bò 2 thì đặt P0.1=1 và đặt 71H=1 để báo là thiết bò 2 đã được mở và gọi chương trình báo mở thiết bò 2. Nếu điều kiện A=2 sai thì chương trình sẽ hỏi tiếp A=3 chưa. Nếu A=3 đúng, chương trình hỏi tiếp P2.2=1 chưa. Nếu P2.2=1 thì xóa P0.2=0 để mở thiết bò 3 và đồng thời đặt 72H=1 để báo là thiết bò 3 đã được mở. Sau đó gọi chương trình báo mở thiết bò 3. Nếu điều kiện P2.2=1 sai tức P2.2=0, muốn mở thiết bò 3 thì đặt P0.2=1 và đặt 72H=1 để báo là thiết bò 3 đã được mở và gọi chương trình báo mở thiết bò 3. Nếu điều kiện A=3 sai thì chương trình sẽ hỏi tiếp A=4 chưa. Nếu A=4 đúng, chương trình hỏi tiếp P2.3=1 chưa. Nếu P2.3=1 thì xóa P0.3=0 để mở thiết bò 4 và đồng thời đặt 73H=1 để báo là thiết bò 4 đã được mở. Sau đó gọi chương trình báo mở thiết bò 4. Nếu P2.3=0 thì đặt P0.3=1 để mở thiết bò 4 và đặt 73H=1 để báo là thiết bò 4 đã được mở và gọi chương trình báo mở thiết bò 4. Nếu điều kiện A=4 sai thì thoát. P 1 R7 P2.4=1 P0.0=1 P2.4=0 R7P1 7 0H=0 P 1 R7 P2.4=1 P0.0=0 P2.4=0 L CALL TAT1 P 1 R7 P2.4=1 P0.1=1 P2.4=0 R7P1 7 1H=0 P 1 R7 P2.4=1 P0.1=0 P2.4=0 L CALL TAT2 P 1 R7 P2.4=1 P0.2=1 P2.4=0 R7P1 7 2H=0 P 1 R7 P2.4=1 P0.2=0 P2.4=0 L CALL TAT3 P 1 R7 P2.4=1 P0.3=1 P2.4=0 R7P1 7 3H=0 P 1 R7 P2.4=1 P0.3=0 P2.4=0 L CALL TAT4 V. CHệễNG TRèNH CON TAẫT THIET Bề 1 Lửu ủo giaỷi thuaọt: BEGIN A = 1 ẹ P2.0=1 ẹ S S ẹ ẹ A = 2 P2.1=1 S S A=3 ẹ P2.2=1 ẹ S S Đ Đ A=4 P2.3=1 S S RET 2. Giải thích: Sau khi bấm đúng mã thứ nhất để tắt thiết bò thì chương trình sẽ hỏi tiếp A=1 chưa. Nếu đúng A=1 tức là tắt thiết bò 1, sau đó chương trình hỏi tiếp P2.0=1 chưa (P2.0 là trạng thái của công tắc bên ngoài). Nếu P2.0=1 là đúng thì ta phải đặt P0.0=1 để tắt thiết bò 1 ( vì tín hiệu P0.0 và P2.0 được đưa qua cổng EXOR cho nên muốn đưa ra mứ c logic 1 thì mức logic của 2 trạng thái này sẽ khác nhau ). Sau đó xóa ô nhớ 70H=0 để báo là thiết bò 1 đã được tắt. Sau đó gọi chương trình tiếng nói báo là “ Thiết bò 1 đã được tắt”. Nếu P2.0=0 thì muốn tắt thiết bò ta phải xóa P0.0=0 và xóa 70H=0 để báo thiết bò 1 đã được tắt. Sau đó gọi chương trình báo tắt thiết bò 1. Nếu điều kiện A=1 sai thì chương trình sẽ hỏi tiếp A=2 chưa. Nếu A=2 đúng, chương trình hỏi tiếp P2.1=1 chưa. Nếu P2.1=1 thì đặt P0.0=1 để tắt thiết bò 2 và đồng thời xóa 71H=0 để báo là thiết bò 2 đã được tắt. Sau đó gọi chương trình báo tắt thiết bò 2. Nếu điều kiện P2.1=1 sai tức P2.1=0, muốn tắt thiết bò 2 thì xóa P0.1=0 và xóa 71H=0 để báo là thiết bò 2 đã được tắt và gọi chương trình báo tắt thiết bò 2. Nếu điều kiện A=2 sai thì chương trình sẽ hỏi tiếp A=3 chưa. Nếu A=3 đúng, chương trình hỏi tiếp P2.2=1 chưa. Nếu P2.2=1 thì đặt P0.2=1 để tắt thiết bò 3 và đồng thời xóa 72H=0 để báo là thiết bò 3 đã được tắt. Sau đó gọi chương trình báo tắt thiết bò 3. Nếu điều kiện P2.2=1 sai tức P2.2=0, muốn tắt thiết bò 3 thì xóa P0.2=0 và xóa 72H=0 để báo là thiết bò 3 đã được tắt và gọi chương trình báo tắt thiết bò 3. Nếu điều kiện A=3 sai thì chương trình sẽ hỏi tiếp A=4 chưa. Nếu A=4 đúng, chương trình hỏi tiếp P2.3=1 chưa. Nếu P2.3=1 thì đặt P0.3=1 để tắt thiết bò 4 và đồng thời xóa 73H=0 để báo là thiết bò 4 đã được tắt. Sau đó gọi chương trình báo tắt thiết bò 4. Nếu P2.3=0 thì xóa P0.3=0 để tắt thiết bò 4 và xóa 73H=0 để báo là thiết bò 4 đã được tắt và gọi chương trình báo tắt thiết bò 4. Nếu điều kiện A=4 sai thì thoát. . đó gọi chương trình báo mở thiết bò 2. Nếu điều kiện P2.1=1 sai tức P2.1=0, muốn mở thiết bò 2 thì đặt P0.1=1 và đặt 71H=1 để báo là thiết bò 2 đã được mở và gọi chương trình báo mở thiết bò. đó gọi chương trình báo mở thiết bò 3. Nếu điều kiện P2.2=1 sai tức P2.2=0, muốn mở thiết bò 3 thì đặt P0.2=1 và đặt 72H=1 để báo là thiết bò 3 đã được mở và gọi chương trình báo mở thiết bò. mở. Sau đó gọi chương trình báo mở thiết bò 4. Nếu P2.3=0 thì đặt P0.3=1 để mở thiết bò 4 và đặt 73H=1 để báo là thiết bò 4 đã được mở và gọi chương trình báo mở thiết bò 4. Nếu điều kiện A=4

Ngày đăng: 05/07/2014, 12:21

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan