一、matlab将串口数据读取并储存到position中
delete(instrfindall);%注销系统之前已经打开的串口资源
clear s %清空s的数据
s = serial('COM6','BaudRate',115200);%定义串口及波特率
fopen(s)%打开串口
fwrite(s,'00AB,')%向串口写入读取电机位置指令
for i=1:8 %共8个电机
position(i,:)=fscanf(s,'%d,%f',[1,2])%读取串口数据,'%d,%f'表示读取格式为整型、浮点数,用逗号分隔开。[1,2]表示数据储存为1行2列
end
position%显示输出的值
fclose(s)%关闭串口
输出结果
二、几个指令
1.sprintf(forval,val)——数据转字符串
将数据格式化为字符串或字符向量。
a=sprintf("%0.3f",123.456789)
显示结果为:
a =
"123.457"
2.vpa(val,num)——保留精度
设置数据的精度,保留多少位有效值
a=vpa(12.456789,4)
显示结果:
a =
12.46
3.strcat(string1,string2)——字符串合并
此指令主要用于将计算出的电机转角,速度等与相应的功能码组合拼接
strcat("a","b","c")
显示结果
ans = 文章来源:https://www.toymoban.com/news/detail-789534.html
"abc"文章来源地址https://www.toymoban.com/news/detail-789534.html
到了这里,关于matlab串口数据交互的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!