MATLAB生成stm32程序

18 篇文章 0 订阅
10 篇文章 13 订阅


前言

在学习PID的时候,突然看到这么一片文章,使用STM32MatTarget和stm32cube生成嵌入式算法代码,就直接去官网搜了一下,结果STM32MatTarget 4.4.2这个包已经不受官网支持了,但却发现了替代的东西,
在这里插入图片描述
那就在这个基础上进行生成stm32代码吧。

一、MathWorks Embedded Coder Support

首先我在MATLAB的安装功能里找了好久也没发现有这个功能,就只好再去官网帮助里面搜了一下,原来这个是额外的安装包,需要额外支持的。

在这里插入图片描述
我使用的是stm32的芯片,自然是下载cortex-M的芯片支持包,这个确实不太好找,需要的同学可以点击这里下载:https://ww2.mathworks.cn/hardware-support/arm-cortex-m.html
这个是需要登录自己的mathworks账号的,没有的自己新建一个就行,只下载这个是不会收费的。也可以在我的资源下下载,我放在我的资源里了,包括下面用的安装包,https://download.csdn.net/download/bing_xin_/88269091
在这里插入图片描述

下载下来的文件其实也只是一个下载链接,需要使用MATLAB打开,在MATLAB 左边的资源框里双击,按照提示安装就行了,不过这里第一次安装的时候还是需要登录下自己的账号。

二、模拟器支持和F4安装包支持

在摸索的过程中总会报错,这里就不让你们走弯路了,还需要下载两个安装包,就是上面图片显示的两个,在下载完armcortexm之后按照MATLAB例程里面用的时候总是报错,所以下载了第二个模拟器的安装包,
在这里插入图片描述
官方下载路径:https://ww2.mathworks.cn/matlabcentral/fileexchange/57465-embedded-coder-interface-to-qemu-emulator?s_tid=srchtitle_support_results_10_getQEMUEmulatorAddOn

但是这个只是cortex内核的代码,要在stm32f4上面运行,还得下载f4的支持包:

在这里插入图片描述
官方下载链接:https://ww2.mathworks.cn/matlabcentral/fileexchange/43093-embedded-coder-support-package-for-stmicroelectronics-stm32-processors
另外,在这一步的安装时候,会提示安装第三步的st官方包,直接跳转过去进行下载安装就可以了,详情请看第三步以及官方引导。

三、st官方支持MATLAB包

除了在MATLAB官方下载支持包,还需要在st官方下载stm32f4的支持包,也可以在这个关联资源上,我已经放上去了,
在这里插入图片描述
这是官方的下载,自然也是需要登录账号:https://www.st.com/en/embedded-software/stsw-stm32068.html?dl=Vc1z3KzO2a9jy%2BmymPHzAQ%3D%3D%2Cnegwagi4jxMBqKVVdccqfOk%2FCPrtr%2FCXK5Em8kc5TiBrNXqJH8Du4bJ6FnYs9qGgMekWqQ06DwDacxg4CXEXrMzXIcIItk4M4rcdbz2q9IHmoTlGZyYR0BcN3pE0J3WgmvnC6copofQ0qv0HJizd2736MtNUbtyjBg1jJrVG6ReiGSZYySXGusyY7WwCjOqXoYszrw1FN0hySJEKdKmh3M8lGimu8lS30WxMwxZ%2BfNDJXbEQCT28%2BcUZ4jh%2FcCIAZZ2h82Y%2BZnAMYz7zp2CFPHUV2QkavOLZv2bOJXdxUtyJwFrElBVcoCQ5g8b%2BB5%2Fw
下载解压后的文件如下,将文件复制到你自己存放MATLAB资源的目录,目录除了不能带有中文以外,还不能带有空格,特别是你新建项目所在的工程目录下,这是因为GCC编译器不能识别带有空格的目录,我这个报错也是查了好久才查到的。

四、根据官方项目生成stm32代码

因为只是了解,这个就不自己新建一大堆项目去一个一个来了,直接查看官方的帮助文档:
在这里插入图片描述
可以在这里直接打开模型,然后将这个模型另存到自己的资源目录下,因为原目录下是有好多模型的,而在生成代码的过程中也会生成好多文件,会将原来的目录弄得乱七八糟的,也不好查找。
在按照官方步骤走之前,还需要将你自己资源的目录添加到MATLAB路径下,
在这里插入图片描述
点击主页下的设置路径,
在这里插入图片描述
直接选择添加并包含子文件夹,直接一次就可以添加完成了,然后就可以按照官方的帮助一步步走下去。

总结

由于我手边没有带有USB资源stm32f4的板子,所以就没办法直接下载,在我修改GPIO为我自己板子呼吸灯的GPIO后,使用直接生成的.hex文件下载到板子中,程序正常运行,完成。

其实感觉这个暂时不是太好用,最有意义的地方可能就是用 simulink模拟算法仿真生成C语言代码,然后移植到嵌入式当中,真的做嵌入式,灵活性和方便性都还是不如自己写代码的。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: Embedded Coder针对AUTOSAR(AUTomotive Open System Architecture)标准提供了支持包。AUTOSAR是用于汽车电子系统开发的开放标准。通过Embedded Coder的支持包,开发人员可以更方便地使用MATLAB和Simulink进行AUTOSAR应用程序开发和验证。 Embedded Coder支持包为AUTOSAR提供了自动生成和自动配置AUTOSAR软件组件的功能,无需手动编写或配置大量的代码。使用Embedded Coder,开发人员可以通过MATLAB和Simulink的图形化界面来设计和测试AUTOSAR应用程序,并自动生成与AUTOSAR标准兼容的C代码。 Embedded Coder的支持包还提供了AUTOSAR的元模型,该模型包含AUTOSAR标准的核心构造块,如软件组件、服务接口、端到端连线等。开发人员可以在MATLAB和Simulink中使用这些元模型,以及AUTOSAR建模工具箱,快速构建AUTOSAR应用程序。 此外,Embedded Coder的支持包还包括AUTOSAR的约束和规格管理工具。开发人员可以使用这些工具来验证代码是否遵循AUTOSAR标准,并自动生成符合标准的文档和报告。 综上所述,Embedded Coder的支持包为AUTOSAR标准提供了强大的开发和验证工具,帮助开发人员更高效地设计和实现AUTOSAR应用程序,并加快产品开发周期,提高软件质量。 ### 回答2: 嵌入式编码器支持包(Embedded Coder Support Package)用于AUTOSAR标准。AUTOSAR(Automotive Open System Architecture)是用于汽车电子系统的开放式软件架构标准。该标准旨在加强汽车电子系统的可重用性、可扩展性和互操作性。 嵌入式编码器支持包是MATLAB和Simulink的一个功能扩展,用于与AUTOSAR标准进行集成。该支持包提供了一系列工具和功能,使开发人员能够创建符合AUTOSAR标准的嵌入式代码。 使用嵌入式编码器支持包,开发人员可以从Simulink模型自动生成AUTOSAR标准的C代码。该支持包具有与AUTOSAR标准相一致的架构和命名约定,包括AUTOSAR的软件组件、接口、端口和信号等概念。 嵌入式编码器支持包还提供了与AUTOSAR工具链进行交互的功能。开发人员可以使用该支持包将生成的C代码与AUTOSAR工具链中的其他软件组件进行集成和验证。这种集成可以通过AUTOSAR内容描述文件(ARXML文件)来实现,ARXML文件描述了AUTOSAR系统架构的各个方面。 通过嵌入式编码器支持包,开发人员可以更加高效地开发和部署AUTOSAR标准的嵌入式系统。他们可以在Simulink环境中使用高级建模和仿真功能,然后使用嵌入式编码器支持包将模型转换为可部署的C代码,从而减少了手动编码的工作量和错误的机会。 总之,嵌入式编码器支持包为AUTOSAR标准提供了一种高效的开发方法,同时提供了与AUTOSAR工具链的集成能力,使开发人员能够更轻松地创建和部署符合AUTOSAR标准的嵌入式系统。 ### 回答3: Embedded Coder Support Package for AUTOSAR Standard(AUTOSAR标准的嵌入式编码器支持包)是MathWorks开发的一种用于AUTOSAR(Automotive Open System Architecture)标准的软件工具包。AUTOSAR是一个用于开发汽车软件的全球行业标准,旨在提高汽车软件开发的效率和可重复性。 嵌入式编码器支持包为使用MathWorks的MATLAB和Simulink工具进行AUTOSAR软件开发提供了便利。它包含了与AUTOSAR标准兼容的构建块、代码生成器以及与AUTOSAR软件架构约束相匹配的自动代码生成规则。此支持包还提供了与AUTOSAR标准相关的模型检查器、验证工具和生成的代码的静态分析。 使用嵌入式编码器支持包,开发人员可以通过MATLAB和Simulink的模型驱动开发方法快速建模和设计AUTOSAR系统。开发人员可以使用自动生成的AUTOSAR代码直接部署到AUTOSAR平台上,提高开发效率并降低错误率。 此外,嵌入式编码器支持包还提供了用于自动配置AUTOSAR软件组件和服务的工具。它通过与AUTOSAR的构建工具链和开发环境紧密集成,从而帮助开发人员更好地集成和部署AUTOSAR系统。 总而言之,嵌入式编码器支持包是一种用于AUTOSAR标准的软件工具包,它提供了MATLAB和Simulink的功能,用于在AUTOSAR架构下进行快速、高效的软件开发。通过使用这个支持包,开发人员可以更好地遵循AUTOSAR标准,并减少开发时间和错误率,从而提高最终软件的质量和可靠性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

k-kun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值