LẬP TRÌNH GUI.

Một phần của tài liệu Nghiên cứu thiết kế chế tạo mạch giao tiếp giữa máy tính và ecu điều khiển động cơ (Trang 122 - 124)

- Thanh ghi điều khiển timer (TCON)

THIẾT KẾ GIAO DIỆN GIAO TIẾP BẰNG MATLAB

5.5. LẬP TRÌNH GUI.

Sau khi sắp xếp các thành phần GUI, cĩ thể thêm mã chương trình vào trình biên tập M – file. GUIDE tự động đưa ra những tập tin này theo sự sắp xếp ban đầu của chúng ta khi lưu hoặc chạy GUI. Trong GUI M-file bao gồm:

- Thiết lập giá trị ban đầu GUI.

- Các mã để thực hiện những thao tác trước khi GUI xuất hiện trên màn hình, như việc tạo dữ liệu và đồ họa.

- Những hàm callback được thực thi mỗi khi người sử dụng tác động vào một thành phần GUI.

Đầu tiên, mỗi callback chỉ chứa một dịng chỉ định hàm. Sau đĩ, tùy theo mục đích điều khiển, cĩ thể thêm các lệnh điều khiển vào trình biên tập M – file để cấu thành hàm hồn thiện. Để mở M-file, nhấp vào biểu tượng M-file Editor trên thanh cơng cụ Layout Editor như hình 5.8.

Cĩ thể thêm mã chương trình vào M-file trong các phần sau: • Hàm Opening.

Hàm Opening chứa mã chương trình mà chỉ được thực thi trước khi GUI được hiển thị. Cĩ thể truy xuất tất cả các thành phần của GUI trong hàm Opening bỡi tất cả các đối tượng của GUI được tạo ra trước khi gọi hàm Opening. Cĩ thể thêm mã chương trình đến hàm Opening để thực hiện các thao tác trước khi người sử dụng tác động đến GUI. Chẳng hạn, tạo dữ liệu, đồ thị, hình ảnh hoặc đĩng khối GUI với lệnh uiwait.

Hàm Output.

Hàm Output trả về kết quả hiện thị ở Command line. Nĩ thực sự hữu ích khi ta cần trả một biến về GUI khác.

Callback: thực thi mỗi khi người sử dụng tác động vào thành phần

Khi người sử dụng tác động vào một thành phần của GUI, GUI sẽ thực thi callback tương ứng. Tên của callback được xác định thuộc tính Tag và loại callback.

Hình 5.7. Trình biên tập M-file

Cĩ thể xem callback của bất kỳ các thành phần nào trong GUI bằng việc nhấp vào biểu tượng chữ f trên thanh cơng cụ danh sách tất cả các callback sẽ được hiển thị. Nhấp vào một callback trên danh sách hiển thị phần của M-file chứa callback nơi ta cĩ thể lập trình hiệu chỉnh.

Để lập trình callback cho các thành phần của GUI, phải biết được thuộc tính của từng thành phần để xác định các callback áp dụng cho các thành phần đĩ. Dưới đây lần lượt mơ tả phương thức lập trình các thành phần của GUI.

5.5.1. Toggle Button

Để xác định Callback dành cho một nút nhấn bật tắt, cần xem trạng thái của nĩ như thế nào. Matlab đặt thuộc tính Value bằng với giá trị Max khi nĩ bị nhấn xuống (mặc định Max = 1) và bằng giá trị Min khi nĩ khơng bị nhấn xuống (Min=0).

Từ GUI M-file

Các mã sau minh họa làm thế nào để lập trình callback trong GUI M-file function togglebutton1_Callback(hObject, eventdata, handles)

button_state = get(hObject,'Value'); if button_state == get(hObject,'Max')

% nếu togglebutton1 bị nhấn xuống

elseif button_state == get(hObject,'Min')

% nếu togglebutton1 khơng bị nhấn xuống

end

Chú ý: Nếu các toggle button được nằm trong button group thì chúng ta phải thêm code vào hàm callback SlectionChangeFcn trong button goup để điều khiển chúng. Button goup sẽ lưu đè các thuộc tính callback của radio button và toggle button chứa trong đĩ.

Một phần của tài liệu Nghiên cứu thiết kế chế tạo mạch giao tiếp giữa máy tính và ecu điều khiển động cơ (Trang 122 - 124)