serial com RS422, sending hexadeximal coomands

4 次查看(过去 30 天)
Hello,i am trying to communicate with a "reciever" device which is connected as shown in the attached photo(serial-com).
i communicated with the device using PCOM software,as shown in the attached photo with "hexadeximal" commands.
i tried to do the same thing with matlab shown as following,
but it doesnt do anything,how to do these hexadecimal commands in matlab?
Thanks
s = serial('COM4');
set(s,'BaudRate',115200);
fopen(s);
fprintf(s,'0801')
fprintf(s,'63')
out = fscanf(s);
fclose(s)
delete(s)
clear s

采纳的回答

Greg
Greg 2017-11-28
编辑:Greg 2017-11-28
'63' and '0801' in MATLAB are character arrays. The binary of '63' is not the same as the binary of 0x63. Try:
fwrite(s,uint8(hex2dec('0801')));
fwrite(s,uint8(hex2dec('63')));

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by