how can I find a short int array from a long int array
2 ビュー (過去 30 日間)
古いコメントを表示
Now I have a long int array including some short array such beginning with 55 and ending 00, whose length was 10, but the contents between 55 and 00 could not be recognized for they were send from serial port. How could I extract those short arrays from the long array? Thanks!
4 件のコメント
Walter Roberson
2017 年 4 月 30 日
How are you doing the reading from the text file? The details might matter.
採用された回答
Walter Roberson
2017 年 4 月 30 日
as_short = typecast(YourLongArray, 'uint16');
sub_pos = find(as_short(1:end-9) == 55 & as_short(10:end) == 0);
short_array = as_short(sub_pos:sub_pos+9);
8 件のコメント
Walter Roberson
2017 年 5 月 3 日
You would normally need to write a protocol that triggers the mcu to send data, instead of just immediately sending it.
Perhaps you were thinking that when the MCU opens its serial port that the MCU would then wait untl MATLAB opens the serial port on its side before the MCU would proceed to send the data. It is possible to program serial ports that way, but it is not typically done on instruments.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Data Type Conversion についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!