MATLAB从R2019b开始不建议使用serial创建串口对象 并建议改用serialport及其属性,在R2020b以后的版本中使用serial可能会报错。在写这篇文章时,网上几乎所有使用MATLAB读取串口数据的教程都在使用serial。本文主要介绍在MATLAB R2020b环境下使用serialport及其属性读取串口数据的一种方法。

参考MATLAB中serial的文档,初始化串口对象的方法:

s = serialport(port,baudrate)

port是串口号,baudrate是波特率。

使用serial时需要使用fopen与fclose打开与关闭串口,这个方法可以直接使用read等方法读取数据,避免了串口的打开与关闭可能引起的错误。

bd02adda10f1cb7c8df7fa144002a8f9.png

configureCallback(device,"terminator",callbackFcn) 将 callbackFcn 设置为在终止符可供读取时触发。

configureCallback(device,"byte",count,callbackFcn) 将 callbackFcn 设置为在 count 字节数可供读取时触发。

configureCallback(device,"off") 关闭回调。

serialport 对象 BytesAvailableFcnMode 属性指示模式为 "terminator"、"byte" 或 "off"。BytesAvailableFcn 属性指示 callbackFcn 指定的回调函数。BytesAvailableFcnCount 属性指示 count 设置。

标签:读取,callbackFcn,serialport,MATLAB,串口,serial

来源: https://www.cnblogs.com/stephen0829/p/14352703.html

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐