搭建成功simulink-stm32硬件在环开发环境

本次实验所使用的软件版本和硬件平台参数如下:

Matlab版本: 2021b

STM32硬件平台:YF_STM32_Alpha 1R4(参考自STM32 Nucleo F103RB官方开发板)

YF_STM32_Alpha开发板

STM32 Nucleo F103RB 开发板


2.1 STM32硬件支持包下载

读者朋友平时使用的是和谐版Matlab,还有些时候由于网络差强人意直接用软件上的"附加功能->获取硬件支持包"无法进行安装,而一种高效且成功率极高的离线方式安装matlab硬件支持包不失为更好的一个选择。

图2.0 Matlab附加功能硬件支持包安装选项

支持包离线安装软件下载连接:https://ww2.mathworks.cn/support/install/support-software-downloader.html?s_tid=srchtitle arduino 2017a

SupportSoftwareDownloader_R2021b_win64.exe(不同年份下载的版本可能不一样,但是总体上是向下兼容的)

双击

软件安装包,弹出如图2.1、2.2所示对话框,输入注册邮箱地址和密码

图2.1 邮箱输入

图2.2 密码输入

根据个人Matlab版本进行选择,如图2.3所示,然后点击"下一步"

图2.3 Matlab版本选择

搜索要下载的硬件支持包"STM"关键词,如图2.4所示,将要下载的支持包勾选上,然后点击"下一步"

图2.4 硬件支持包搜索下载

选择安装包的放置路径,如图2.5所示,该路径最好是方便寻找的位置,后面安装时会用到该路径,然后点击"下一步"

图2.5 硬件支持包保存路径选择

接下来要下载的硬件支持包列表如图2.6所示,直接点击"下一步"即可

图2.6 接下来要下载的硬件支持包

Matlab许可协议部分如图2.7所示,直接点击"我接受"即可

图2.7 许可协议

开源许可协议如图2.8所示,直接点击"下一步"

图2.8 开源许可协议

下载中的STM32硬件支持包,如图2.9所示

图2.9 下载中的安装包

2.2 指定下载路径安装STM32硬件支持包

找到matlab的安装路径下的"install_supportsoftware.exe"文件路径,然后打开windows控制台,切换到该路径下,作者的matlab安装路径:C:\Program Files\MATLAB\R2021b\bin\win64,如图2.10所示,作者的离线安装包位置如图2.11所示,控制台指令执行方式如图2.12所示。

图2.10 "install_supportsoftware.exe"安装路径

硬件支持包安装指令如下:

SupportSoftwareInstaller.exe -archives C:\Users\dell\Downloads\MathWorks\SupportPackages\R2021

图2.11 硬件支持包放置位置

图2.12 控制台安装命令

运行完该指令后,根据电脑性能状况可能需要的时间比较长,等待一段时间后会弹出如图所示对话框,输入用户名和密码后,进入到支持包安装选项,根据个人需要选择要安装的硬件支持包,如图2.13所示

图2.13 邮箱和密码输入

如果读者朋友电脑上下载有多个离线硬件支持包,根据个人需要选择需要安装的硬件支持包,如图2.14所示。

图2.14 选择要安装的硬件支持包

如图2.15所示,直接点击"下一步"即可

图2.15 协议许可

安装过程中根据个人电脑性能需要的时间不太一样,需要耐心等待一段时间,如图2.16、2.17所示,直到硬件支持包成功安装成功

图2.16 硬件支持包安装中...

图2.17 安装好一部分效果

安装完成后的效果如图2.18所示,点击关闭即可

图2.18 STM32硬件支持包安装完成


2.3 创建STM32-simulink工程验证

接下来我们一起创建一个简单的LED点亮工程来验证下STM32的Matlab硬件支持包是否安装正确,找到Matlab主页面中的"Simulink"图标,如图2.19所示,单击打开

图2.19 Matlab R2021b中simulink位置

稍等一会儿,弹出如图2.20所示的simulink起始页,然后点击"空白模型"创建新的Simulink模型

图2.20 Simulink起始页

进入到创建好的Simulink模型页面,如图2.21所示,这里可以将其保存并命名,然后点击"库浏览器"

图2.21 "LED_Blinker"Simulink模型页面

进入到"Simulink库浏览器"页面,找到并点击"Simulink Coder Support Package for STMicroelectronics Nucleo Boards->Common",如图2.22所示,然后将"Digital Write"模型单击拖入"LED_Blinker"模型页面中

图2.22 STM32 Simulink库浏览器中"Digital Write"模型位置

在"LED_Blinker"模型中添加"Pulse Generator"脉冲产生模型用于产生周期为1S,占空比为50%的信号脉冲,参数设置如图2.23所示。

图2.23 "Pulse Generator"模型参数设置

然后对"Digital Write"模型参数进行设置,如图2.24所示,此处引脚为YF_STM32_ALPHA开发板上的LED灯,与单片机的PB8相连接

图2.24 "Digital Write"模型参数设置

接下来要对硬件配置参数进行设置,找到"建模"栏中的"模型设置"按钮单击,如图2.25所示

图2.25 "模型设置"按钮位置

进入到"配置参数"对话框,找到"硬件实现栏",然后在"Hardware board"栏中选择"STM32 Nucleo F103RB"选项,如图2.26所示

图2.26"配置参数"硬件板设置

⚠️注 意:此处是硬件在环能否成功进行的关键,能否正确进行硬件在环仿真硬件上需要具备两个条件

条件一:必须使用STLINK下载器;

条件二:在环仿真默认通信端口为USART2(PA2、PA3),需要连接正确;

如图2.27所示,将STLINK与USB转串口模块正确连接,本实验中采用的开发板自带STLINK 2V1版本下载器,包含串口通信功能,已经与STM32F103RBT6的PA2、PA3正确连接

图2.27 硬件在环硬件连接示意图

"配置参数"设置部分将"External mode"部分设置为与之相连的端口,如图2.28所示STLINK 的串口端口号为"COM121",设置好后点击"应用"并点击"确定"。

图2.28"External Mode"参数设置

回到"LED_Blinker"模型页面,切换到"HARDWARE"栏,将"Stop Time"设置为"inf",然后点击"Monitor & Tune"进行在环仿真,如图2.29所示,仿真成功的效果如图2.30所示。

图2.29"HARDWARE"栏参数

图2.30 正在进行中的硬件在环仿真

为了让硬件在环仿真交互效果更加明显,这里将"Pulse Generator"换成"constant"模块,如图2.31所示,然后,再次点击"Monitor & Tune"按钮

图2.31 使用"constant"控制的模型

通过改变"constant"变量的值来控制LED灯的亮灭,如图2.32所示

图2.32 改变"constant"值控制LED亮灭

相关推荐
JaneZJW几秒前
Proteus仿真——《51单片机AD和DA转换器的设计》
单片机·嵌入式硬件·51单片机·proteus
NEWEVA__zzera222 小时前
利用光耦来隔离485芯片与串口引脚,实现自动收发485电路
单片机·嵌入式硬件
m0_748240542 小时前
STM32第十一课:STM32-基于标准库的42步进电机的简单IO控制(附电机教程,看到即赚到)
stm32·单片机·嵌入式硬件
温柔的男孩像海洋丶3 小时前
vscode的keil assistant 中搜索不到全局变量
ide·vscode·单片机
沐欣工作室_lvyiyi3 小时前
基于单片机的多功能智能小车(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·单片机毕业设计
鸿喵小仙女4 小时前
C# WPF读写STM32/GD32单片机Flash数据
stm32·单片机·c#·wpf
lucy153027510794 小时前
MCU 功耗基准测试
科技·单片机·嵌入式硬件·智能家居·信号处理·工控主板
m0_748240915 小时前
OpenMV与STM32通信全面指南
stm32·单片机·嵌入式硬件
Cchengzu7 小时前
阿里巴巴2017实习生笔试题(二)
stm32·单片机·嵌入式硬件
重生之我是数学王子10 小时前
单片机 STM32入门
stm32·单片机·嵌入式硬件