MATLAB实现串口通讯的详细步骤

由于MATLAB中提供了仪表仪器通信的功能,所以MATLAB可以用来实现串口通信。
1、要实现串口通信,第一步必须要创建一个串口对象,MATLAB中提供了serial函数来创建一个串口对象。具体用法为:

object = serial('port'......);%其中object为串口的一个句柄

串口中的参数有很多例如:parity 校验方式;databits 数据位;stopbits 停止位等。
MATLAB设置串口对象后,还要对它的属性进行设置:
object.InputBufferSize = 1024;%设置输入缓冲区的大小
object.OutputBufferSize = 1024;%设置输出缓冲区的大小
object.Timeout = 0.5;%设置一次写入或者读入操作完成最大时间为0.5s时间单位为秒。
object.BytesAvailableFcnMode = ‘byte’;% 设置读入文件的格式为二进制。
object.BytesAvailableFcn = @fcntion_callback;%设置串口执行的回调函数(这个属性比较重要);
2、建立好串口的对象后,要使用它需要将串口对象打开。具体操作为:

fopen(object);% 将串口对象打开

3、将串口打开之后要想与串口进行通讯,这时候就需要发送握手命令给串口,与串口进行连接。具体操作:

fwrite(object,......);% 握手信号根据协议或者其他信息的差异会不同

由于我选择读取数据的方式为二进制文件的方式,所以使用fwrite函数来发送信息。如果是文本文件时写入串口的函数使用fscanf函数来完成。
4、当我们与串口建立联系之后就可以向串口读取信息了。具体使用的方法:

data = fread(object,10);% 向串口读取10个数据,这里的数据根据需求可以进行改动

5、当我们需要关闭工程或者是停止通讯时,需要将串口关闭或者清除串口对象。具体的用法是:

fclose(object); % 关闭串口对象
delete(object); % 删除内存中的串口对象

或者你感觉这样很麻烦,这里有一个更加直接的方法:在主工程界面中的关闭函数中使用clear all;语句来关闭所有的缓存,使用close all;关闭所有的窗口,然后在回调函数中调用关闭函数。

  • 20
    点赞
  • 171
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值