Matlab/Simulink 自动代码生成 基于模型设计学习教程(5)---- Simulink与开发板通讯

我们首先这个是要提几点要求:

  1. Simulink与开发板之间要实时通讯
  2. Simulink能实时发送数据给开发板,并能更改数据

这个是我们先来看一下整个模型

我们就之前没有讲过的,这里讲一下怎么运用,

串口通讯模块记得Sample time要设置0.01s

在做串口接受跟发送一起的时候,我们一定要选Non-Blocking,选了以后就会出现一个READY的触发端口,只有在接受数据以后才会更新数据,程序就不会卡在等待接受数据;

有了READY的触发信号,我们需要一个Enable的控制信号来配合

 

其实In模块跟Out模块使用起来也是有技巧的,下面以out为例来讲一下

如上面这样设置的话,就是没有触发信号过来的时候输出敬爱能够保持上一个数据值

如果像上面这样设置,那么没有触发的时候就输出Initial output值,像上面就是输出0;

 

 

下面为Simulink上位机的搭建

 

首先我们把下图的三个模块拖到新建的模型中

 

 

 

下面为各个模块的设置

Port 只要你插上去USB串口模块你就会看到对应的COM口了

                       

Port 依然选择对应的COM口就行了,Transfer 依然是选择Non-Blocking,记得数据包的头尾要跟发送过来的要一样,不然没法接受,选择的数据类型也是需要跟发送过来的一样,最后设置Sample time:0.01

                        

设置Enable模块搭配READY的触发信号

                         

串口发送模块的设置:Port根据实际选择对应的COM口,数据包的头尾核心板接受那边对应上去;数据类型也要对应上去;

                                                  

最后我们看一下实际的运行结果:

 

                      

 

发送的数据准确无误,接受的数据也没有差错,那么Simulink与开发板之间的通讯是非常成功的。

在后面的实验我们将教大家如何利用采集回来的数据,在Simulink中提前做好仿真,提前完善好算法,加快设计进度;

 

本节所需的全部文件代码如下,请自行下载:

链接:https://pan.baidu.com/s/10C9xdvA-wAwmDGp5ifVVpg 
提取码:iqw1 

 

如有疑问请留言

 

          

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值