![]() |
|
Tài trợ cho PIC Vietnam |
||||||||
| Đóng góp ý kiến Nơi tiếp nhận những ý kiến đóng góp của thành viên |
|
|
Ðiều Chỉnh | Xếp Bài |
|
|
#2 |
|
PIC Bang chủ
|
Anh Bắc cho em hỏi 1 tí:
Trong file Rs232 Comunication.m phần function RS232_Communication_OpeningFcn(hObject, eventdata, handles, varargin) có 2 dòng lệnh: handles.output = hObject; và guidata(hObject, handles); có tác dụng gì vậy anh? Nếu không có 2 dòng này thì chương trình ko chạy dc. Code:
handles.status_com = IsConnect; em đọc trong help có nói nếu khai báo s = serial('COM1'); thì s.status là tình trạng cổng Com open hay close, còn status_com này thì em chưa hiểu , nó là tag nào của phần tử nào trong file *.fig vậy anh? Code:
guidata(hObject,handles); Code:
function button_Send_Callback(hObject, eventdata, handles) Code:
IsConnect = handles.status_com;
s = handles.com;
Code:
function button_Send_Callback(hObject, eventdata, handles)
strTX = get(handles.edit_TX,'String');
fprintf(s,strTX); vậy là anh truyền chuỗi hả anh , và 1 byte hả anh?
handles.com = s;
guidata(hObject,handles);
Code:
function button_Connect_Callback(hObject, eventdata, handles)
s = serial(get_stringPopup(handles.popup_ComPort));
Code:
s.BytesAvailableFcn = @BytesAvailable_Callback;
s.OutputEmptyFcn = @OutputEmpty_Callback;
s.BreakInterruptFcn = @BreakInterrupt_Callback;
s.ErrorFcn = @Error_Callback;
s.PinStatusFcn = @PinStatus_Callback;
s.BreakInterruptFcn = @BreakInterrupt_Callback;
s.TimerFcn = @Timer_Callback;
em chỉ thấy anh ghi code cho bytesAvailable_callback như sau: Code:
global hand;
ind = fscanf(obj);
set(hand.edit_RX,'String',ind);
Code:
s.RecordName = get(handles.edit_RecordName,'String');s
s.RecordMode = 'index';
Code:
function figure1_DeleteFcn(hObject, eventdata, handles)
IsConnect = handles.status_com;
if (IsConnect == 1),
s = handles.com;
record(s,'off')
fclose(s);
delete(s);
clear s;
IsConnect = 0;
end
delete(hObject);
Code:
function figure1_CloseRequestFcn(hObject, eventdata, handles)
IsConnect = handles.status_com;
if (IsConnect == 1),
s = handles.com;
record(s,'off');
fclose(s);
delete(s);
clear s;
IsConnect = 0;
end
delete(hObject)
Code:
s.BytesAvailableFcnCount = 1;
s.BytesAvailableFcnMode = 'terminator';
Em thấy trong phần Simulink có hỗ trợ RS 232 luôn , sao lấy ở đó hỗ trợ được không anh? Em mới làm quen với Matlab và giao tiếp cồng Com , xin anh chỉ giáo ạ (^_^)
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? |
|
|
|
|
|