Matlab - 将字符向量转换为数字向量?

zep*_*rik 0 regex matlab serial-port

我正在尝试为数字输入实现示波器,并通过串行端口进行调试.我有范围软件发送Matlab字符串,如"000000111111111000000001111111000000".我想画这个.有没有办法让我把这个字符串拆分成一个向量.它似乎没有Matlab允许你使用没有分隔符的strsplit().我宁愿不用每个字节之间的分隔符来阻塞通信.

bea*_*ker 7

使用MATLAB的弱类型,这实际上非常简单:

>> str = '000000111111111000000001111111000000'
str = 000000111111111000000001111111000000
>> class(str)
ans = char

>> vec = str - '0'
vec =

 Columns 1 through 22:

   0   0   0   0   0   0   1   1   1   1   1   1   1   1   1   0   0   0   0   0   0   0

 Columns 23 through 36:

   0   1   1   1   1   1   1   1   0   0   0   0   0   0
>> class(vec)
ans = double
Run Code Online (Sandbox Code Playgroud)

这会'0'从字符串中的每个字符中减去字符的序数值,并保留数值01.