3. Nội dung các phần thuyết minh:
5.1 Xây dựng chương trình điều khiển trên các module
5.1.1 Chương trình điều khiển trên module master
Giải thích: nhiệm vụ của module master sẽ thu thập các giá trị nhiệt độ từ các module đo nhiệt độ gởi về sau đó sẽ lưu giá trị nhiệt độ của từng phòng vào từng vùng nhớ riêng biệt. Các giá trị nhiệt độ này sẽ được gởi về máy tính để xử lý và hiển thị. Dữ liệu sau khi xử lý sẽ được máy tính truyền lệnh điều khiển xuống module master để thực hiện việc điều khiển thiết bị. Việc điều khiển thiết bị được thực hiện thông qua các module đo nhiệt độ, module master chỉ có nhiệm vụ nhận mã điều khiển từ máy tính sau đó gởi về module đo nhiệt độ tương ứng để điều khiển thiết bị.
Begin
Khởi tạo port nối tiếp
Khởi tạo các biến Cho phép ngắt nối
tiếp hoạt động Giải mã, hiển thị
End
Ngoài ra, module master còn có chức năng hiển thị nhiệt độ của từng phòng riêng biệt nhưng phần hiển thị có hạn chế hơn so với máy tính, tại một thời điểm chỉ cho phép hiển thị giá trị nhiệt độ của một phòng hay một khu vực nào đó.
Lưu đồ ngắt nối tiếp
Giải thích: hoạt động ngắt nối tiếp xảy ra khi có một dữ liệu được truyền đi hoặc một dữ liệu từ các module, máy tính gởi đến. Nếu một dữ liệu được truyền đi thì vi điều khiển sẽ kiểm tra việc truyền byte dữ liệu và chờ cho đến khi byte dữ liệu được truyền đi hoàn tất. Ngược lại nếu một dữ liệu được nhận vào thì vi điều khiển cũng kiểm soát việc nhận dữ liệu để đảm bảo dữ liệu được nhận vào đầy đủ và chính xác. Y Đ S Ngắt nối tiếp A = Sbuf RI = 1 RETI Xóa RI Xóa TI TI = 1
Set bit truyền
5.1.2 Chương trình điều khiển trên module đo nhiệt độ Begin
Khởi tạo port nối tiếp Khởi tạo các biến Cho phép ngắt nối
tiếp hoạt động
Giải mã, hiển thị
End Chuyển đổi ADC
Đọc kết quả chuyển đổi So sánh với nhiệt độ cũ = ? Đ S
Lưu giá trị mới Set bit TB8 Truyền mã địa chỉ
Xóa bit TB8 Truyền giá trị nhiệt
độ mới
Lưu đồ ngắt nối tiếp
Giải thích: hoạt động ngắt nối tiếp xảy ra khi có một dữ liệu được truyền đi hoặc một dữ liệu từ các module, máy tính gởi đến. Nếu một dữ liệu được truyền đi thì vi điều khiển sẽ kiểm tra việc truyền byte dữ liệu và chờ cho đến khi byte dữ liệu được truyền đi hoàn tất. Ngược lại nếu một dữ liệu được nhận vào thì vi điều khiển cũng kiểm soát việc nhận dữ liệu để đảm bảo dữ liệu được nhận vào đầy đủ và chính xác. YĐ S Ngắt nối tiếp A = Sbuf RI = 1 RETI Xóa RI Xóa TI TI = 1
Set bit truyền
Lưu đồ nhận dữ liệu từ module master A = Sbuf END Xóa RI RB8 = 1 A = “a” Xóa SM2 Đ S S Đ SM2 =1 Đ S BEGIN Mã ĐK 1 TB Mở 1 TB S Đ 0 1