Simulink中使用串口通信
- 1. 模块介绍
- 1.1 串口参数设置模块
- 1.2 发送数据模块
- 1.3 接收数据模块
- 1.4 显示数据模块
- 2. 模块配置
- 2.1 基本参数配置
- 2.2 发送参数配置
- 2.3 接收参数配置
- 3. 串口通信测试
1. 模块介绍
本文使用的模块都在库函数的Instrument Control Toolbox 里面。
1.1 串口参数设置模块
串口通信第一步首先是配置串口,配置模块如下:
1.2 发送数据模块
要想在Simulink里面发送数据,得先在库浏览器里面找到串口发送模块
1.3 接收数据模块
要想在Simulink里面接收数据,先在库浏览器里面找到串口接收模块
1.4 显示数据模块
调试数据必须使用一个显示模块,但是scope在这里是不合适的,Display 刚刚好。
可以选择很多数据类型,这里选择十六进制,方便调试。
2. 模块配置
2.1 基本参数配置
串口的基本参数配置:串口号,波特率,数据位,奇偶校验,停止位,传送顺序,是否硬件流,响应时间。
- 串口号:根据硬件设备来选择(若插硬件,必须先插上串口,再打开MATLAB才会显示)
- 波特率:与对应设备一致即可,我这里是使用115200.
- 奇偶校验位:一般数据不使用,可通过传输数据中1的个数来检验数据是否有传输错误。
- 传输顺序:在传输大于八位的数据时必须关注,先传输低八位使用 little-endian,否则 使用endian-little
其他一般选默认即可。
2.2 发送参数配置
发送参数只要选择端口号和帧头就可以了,这里直接发送数据,不要帧头。
2.3 接收参数配置
如下图配置好接收参数,端口号选择com1,数据类型就选择基础的 uint8 ,0.01s接收一次。
3. 串口通信测试
用虚拟串口进行测试,申请一对串口Com1和Com2
这里选择把接收的数据给发送回去。
可以看到,发送的21,接收成功。