打印

使用MATLAB和Simulink开发STM32嵌入式应用

[复制链接]
3632|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
god9987|  楼主 | 2016-12-25 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
god9987|  楼主 | 2016-12-25 11:20 | 只看该作者
(一)Simulink和STM32Cube安装
1、安装STM32-MATLAB Target,安装之后再simulink的library里面可以看到stm32的各种外设模块都已具备。

2、安装STM32Cube和STM32F4 Firmware,并按照Nucleo-STM32F446ZETx来配置IO引脚和外设。本工程使用了GPIO。

使用特权

评论回复
板凳
god9987|  楼主 | 2016-12-25 11:20 | 只看该作者
(二)simulink模型搭建与设置

使用特权

评论回复
地板
god9987|  楼主 | 2016-12-25 11:21 | 只看该作者
1、在simulink里面搭建模型如下,包含一个STM32_config,一个GPIO_Read并将Read值传递给GPIO_Write,同时在Simulink的Source里面选择一个Pulse Generator,同样将值传递给GPIO_Write

使用特权

评论回复
5
東南博士| | 2016-12-25 11:21 | 只看该作者
可以下载吗?

使用特权

评论回复
6
東南博士| | 2016-12-25 11:22 | 只看该作者
最近采购了一本这样的书。

就是说 发现仿真的时候 其实不如labview方便。

使用特权

评论回复
7
god9987|  楼主 | 2016-12-25 11:22 | 只看该作者
2、选定MCU Config,设定为刚才在STM32Cube里面生成的ioc文件。

使用特权

评论回复
8
god9987|  楼主 | 2016-12-25 11:23 | 只看该作者
3、设置GPIO_Read为PC13,也就是蓝色的User Button的引脚。同时赋值给PB7,也就是蓝色的LED的引脚。

使用特权

评论回复
9
god9987|  楼主 | 2016-12-25 11:23 | 只看该作者
4、设置Pulse Generator的幅度,周期和占空比,并将输出赋值给PB14,也就是红色LED的引脚。

使用特权

评论回复
10
god9987|  楼主 | 2016-12-25 11:24 | 只看该作者
5、在simulink的Model Configuration Parameters里面设置如下:

使用特权

评论回复
11
god9987|  楼主 | 2016-12-25 11:25 | 只看该作者
6、之后点击Build Model,生成c文件等。

使用特权

评论回复
12
god9987|  楼主 | 2016-12-25 11:26 | 只看该作者
(三)IAR设置、编译和调试
1、在IAR中添加matlab组,并将matlab生成的C代码添加入工程中。可见simulink的模型已经正确转化成C代码。


使用特权

评论回复
13
god9987|  楼主 | 2016-12-25 11:27 | 只看该作者
2.点击make、debug之后,即可调试运行。

使用特权

评论回复
14
東南博士| | 2016-12-25 11:31 | 只看该作者
为实现高效的C语言代码编写,将Matlab/Simulink应用在基于ARM Cortex-M3内核STM32微控制器的嵌入式系统软件开发中。利用专门针对STM32系列微控制器开发的Simulink模块库RapidSTM32及其工具套件,对嵌入式系统进行建模与仿真。仿真成功后,在模型编译器中把其翻译成高效的MDK 
C语言代码,实现了STM32嵌入式系统软件代码的快速生成。实验结果表明,所生成的软件代码在STM32嵌入式目标系统中运行状况良好。该方法在软件设计效率和易维护性等方面优于手工编写的代码方法

使用特权

评论回复
15
東南博士| | 2016-12-25 11:31 | 只看该作者
在嵌入式应用软件设计中,开发人员应该运用现代软件工程思想和先进的软件开发方法,快速完成软件的开发 和维护工作。STM32系列微控制器是一款基于ARM Cortex-M3内核的高性能、低成本、低功耗的嵌入式应用产品。目前,编写STM32应用程序主要有两种方式。大部分学习使用STM32的用户都从固件库函数开始,通过使用ST公司提供的固件库中的库函数来配置CPU,建立工程后调用片内资源的各种功能。另外一些用户不使用或很少使用库,通过直接操作寄存器的方式使用STM32。上述方法需要花费一定的精力熟悉固件库,或者要求熟悉众多的寄存器结构及其定义,程序开发效率较低。

使用特权

评论回复
16
東南博士| | 2016-12-25 11:33 | 只看该作者
详情 请参考 基于Matlab的STM32软件快速开发方法

使用特权

评论回复
17
stm32lover| | 2016-12-25 11:50 | 只看该作者
使用MATLAB和Simulink开发STM32嵌入式应用多详细讲讲吧

使用特权

评论回复
18
michael_llh| | 2016-12-25 12:10 | 只看该作者
没图?

使用特权

评论回复
19
王紫豪| | 2016-12-25 21:33 | 只看该作者
@,你是我们群里的东南博士?

使用特权

评论回复
20
王紫豪| | 2016-12-25 21:33 | 只看该作者

東南博士

@東南博士 你是我们群里的东南博士?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

1028

帖子

0

粉丝