EDA365电子工程师网

标题: 使用MATLAB和Simulink开发STM32嵌入式应用 [打印本页]

作者: jerryli    时间: 2016-5-11 13:49
标题: 使用MATLAB和Simulink开发STM32嵌入式应用
使用MATLAB和Simulink开发STM32嵌入式应用4 @9 r$ ], E* Z# H: H- R

+ }# D$ A: m, k2 G(一)Simulink和STM32Cube安装
" k0 e% l4 j& k& j2 f" _  `6 b# k. K1、安装STM32-MATLAB Target,安装之后再simulink的library里面可以看到stm32的各种外设模块都已具备。
/ _6 G* B% ?" Z/ w, Y4 f! j- h' z. m) K* m$ f
2、安装STM32Cube和STM32F4 Firmware,并按照Nucleo-STM32F446ZETx来配置IO引脚和外设。本工程使用了GPIO。0 U' h' z, @& O; i& ^' j# q2 P" n
' F2 R# \) V1 Y6 a1 _

# j9 ]" K: J% o! z! I+ z( v0 S- m" O: O3 @4 A% H
3、配置生成IAR工程。
) j7 i# b% x0 L8 Q, U7 `% b9 u+ X* h0 e! c" j+ _  i
(二)simulink模型搭建与设置# b$ W7 ^  q% p+ a
1、在simulink里面搭建模型如下,包含一个STM32_config,一个GPIO_Read并将Read值传递给GPIO_Write,同时在Simulink的Source里面选择一个Pulse Generator,同样将值传递给GPIO_Write。1 W  H+ l! u6 P1 l, v4 Q7 T
2、选定MCU Config,设定为刚才在STM32Cube里面生成的ioc文件。9 B- A+ d+ i' @3 n6 ^0 l. h

# `( E, g. M! S% w3 W5 H: J+ b' M- ^- Q8 V0 n! L: x
3、设置GPIO_Read为PC13,也就是蓝色的User Button的引脚。同时赋值给PB7,也就是蓝色的LED的引脚。" I: Z  V- K- R

$ e1 M2 v& D6 h  p
" V, ^* |9 M+ Y  h+ C. [3 f5 A  S% ^; k1 _+ Y9 x, H
4、设置Pulse Generator的幅度,周期和占空比,并将输出赋值给PB14,也就是红色LED的引脚。# ^9 S4 Z! Z* E& r
' @. G3 O( r& l. h0 H# b1 z" o; L
5、在simulink的Model Configuration Parameters里面设置如下:  A" Z: b; [7 M# ]+ x" s  n

, q% `" P  E' H/ q5 O9 B1 W6 U5 S" _" f3 y- [
6、之后点击Build Model,生成c文件等。$ b: g2 g3 {# g  v$ _+ B5 f2 u

( H) o" t3 F) m" k* R! p
6 @0 g- h0 k' g(三)IAR设置、编译和调试  U2 k7 |$ [0 H1 O
1、在IAR中添加matlab组,并将matlab生成的C代码添加入工程中。可见simulink的模型已经正确转化成C代码。
# |, @, \! M6 N; ?1 J4 B& G3、点击make、debug之后,即可调试运行。
$ Q0 I, S$ h% O& P# p( G

stm32-matlab.pdf

1.34 MB, 下载次数: 0, 下载积分: 威望 -5


作者: wu68aq    时间: 2016-5-19 09:56
谢谢楼主!




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2