who i can write more then one value on port?
조회 수: 3 (최근 30일)
이전 댓글 표시
im going to write more than one value on port but it s not working .it s just write tha values as one value.
global a;
a=serial('COM4');
setpoint=str2double(get(handles.s,'string'));
k=str2double(get(handles.k1,'string'));
i=str2double(get(handles.k2,'string'));
d=str2double(get(handles.k3,'string'));
fprintf(a,'%d',setpoint);
fprintf(a,'%d',k);
fprintf(a,'%d',i);
fprintf(a,'%d',d);
댓글 수: 2
Geoff Hayes
2019년 6월 2일
편집: Geoff Hayes
2019년 6월 2일
husman - please clarify what you mean by it's not working and it just writes the values as one value. Are you observing an error message? If so, what is it? Else describe where your above code is going wrong. Is it because you convert the strings to doubles? What are the data types for your variables? Do you need to cast these variables to signed integers?
답변 (1개)
Walter Roberson
2019년 6월 2일
When you provide your own format to fwrite to serial, then no delimiter is added automatically. CR or LF will not be added between your values when your provide your own format. You need to code in an appropriate delimiter, possibly '%d\n' or '%d ' for the first several and '%d\n' for the last.
댓글 수: 3
참고 항목
카테고리
Help Center 및 File Exchange에서 Arduino Hardware에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



