你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32CubeIDE使用

[复制链接]
STMCU小助手 发布时间:2022-12-23 17:00
安装  |) n; F) Y' O4 L2 ]5 m# t9 O+ u
STM32终于出了这样一款工具,之前也出过开源的eclipse开发工具,但这次帮你打包了一站式的,更方便了,点击此处下载,下载需要有自己的账号,安装一路默认就可以了。" b+ u' Y, c1 L. f8 a5 z7 }& A

/ ?7 r& n" k, `$ H+ ^7 W- N# Q使用

" f& M! N/ r/ s: W3 a: b* o, ^新建stm32工程:文件 > 新建 > STM32 Project,弹出下面的向导,通过1,2,3等过滤选项,选出正点原子战舰V3对应的stm32f103ze系列芯片,点击Next,
+ \7 z" J# Z/ q' X% P1 D# F( W8 V- n! I
( _1 N+ }* g+ v6 L+ ~( \
20191004221427361.png
0 c  U6 Y6 Z3 L1 N# _6 Z) k* k7 @

  P" D/ _5 l% i下面一路默认选项,如果你是第一次使用,会自动开始下载相应的固件包,我这自动下载的过程被打断,弹出一个对话框说代码生成失败,现在尝试手动来操作,点击Help > Manage embedded software update,这个菜单只有在*.ioc的CubeMX文件打开的情况才可以点击,弹出一个对话框,下载f1系列的包,可以看到下面有一个From Local,可以离线导入的,如果网实在太差,就别处下好导入,我最后还是离线导入的,官网下载stm32cubef1,是的,英文官网的速度飞起,比国内的网站还快,3 ?& C. p0 W( z! v6 f) Q7 J
7 D/ a+ E+ m; N: [
20191004222411389.png
2 u; `& ^4 P+ u( s$ T0 D5 Y! r  C
0 R2 i4 x6 w6 K4 K: F3 I8 L
配置单片机,先配时钟,最大性能的配置,系统时钟为72MHz,( }& N, I4 J+ M  Y

& y9 W4 B( d5 N7 |. _
424c012357684fc08043ce163b823437.png ; L3 `5 U1 X2 }: a
9 R/ w) o, {( m) ^
配置GPIO等外设,可以在左边的列表配置,也可以在图形上单击选择配置,; P# L1 w4 P$ H/ w  D
* x$ D7 g  Y2 P! e0 {
b5032e364c444a7ba92bef6a33006eb9.png
0 S# G& u* M2 H* F  c
) L. P: t5 h8 k
GPIO配置,可以设置User Label,
( d1 g( B; W$ \
- R' z5 Y% H$ ~7 N. B/ c
eb43560c452041399dc91a68dcc80457.png
; ^  Q5 U6 r) N7 h# C0 S
0 j3 m) C, K" v8 v" D9 F
使用奇偶校验时必须把数据位配置UART_WORDLENGTH_9B。使用串口printf时,打印浮点数需要设置,
9 P& ?9 g) X8 J  \* v1 f0 [7 N( w4 e0 ]7 c/ M, }
c27f9cd72047404a958d4b289fee1df8.png 8 q  X+ w, e# r8 G4 O
: g; i4 @  R( X: I% I4 r% B( e
CAN配置,参考文章CAN总线波特率的设定——以STM32F103为例,STM32单片机中CAN的波特率主要由4个参数共同决定。他们分别是重新同步跳跃时间单元(tsjw)、时间段1的时间单元(tbs1)、时间段2的时间单元(tbs2)、波特率分频器(brp)。对应到STM32单片机的库函数中,分别对应的是CAN_SJW、CAN_BS1(即tbs1+1)、CAN_BS2(即tbs2+1)、CAN_Prescaler等4个参数。库函数中只需完成这4个参数的设定即可。比如设置CAN_SJW=1tq,CAN_BS1=6tq,CAN_BS2=1tq,CANPrescaler=9,则波特率=36M/[(1+6+1)*9]=500Kbps。采样率=(1+6)/(1+6+1)=87.5%。要注意CAN_SJW没有参与任何公式的计算,波特率公式的那个位置是SS段,故而为1。+ p4 t+ `: g. f/ E1 j" o
3 l# }; {" n6 u2 X2 W0 X
1ee50a4c234648e4b461e701272335f5.png
: G$ t( _6 X" }( t

& ^& S$ ~/ N, W1 s. cUSB配置,使用默认设置,在Project Manager中把堆栈改大点,防止程序跑飞,
; r  Z" m% K* Q6 Q6 v. X9 t! j# T% F/ v6 a% |" i
98167d57a6c649d89df99cc4a37fde4b.png & |8 z0 \8 B/ w- U; n

3 q% l6 u( O  D3 n, ~$ [7 ]" |外部中断配置,6 N( W; v) [) }) |+ I" a

" ^0 ~! q$ E2 s
f5c176cae6754653adbf22b8a0b8f7e5.png * y+ q& C9 T( U1 `3 Q5 _
6 d# @& {! I; |  W/ ^
点击Project > Generate Code可生成代码,查看工程属性,可以看到,自动配置好了包含路径,
  F: ]3 o* u5 f. }$ p7 A
# v0 ^7 w  v4 F' p( r3 v
bbafeebad68a4f9c8a0506a30b597b10.png
6 H% ~4 n0 w! I  N/ [; n% J! C; I( Y! o

# F3 l3 H; T  v# J, j9 S* y配置  I, [7 L& ~: A1 g: X) M# V
TAB
- e: T7 A" {/ C! _; d% d
配置自动缩进为2,使用空格代替TAB,点击Edit,创建自己的配置,4 w: ^* j( [( @$ w
2 V: i/ S! o- I$ p
60013d5368694db9bb06e0e953986505.png 4 s0 {0 y0 ?; {) f

0 t" w( L) F: v0 c# M/ \% g( Z

: f: S4 ^, B3 Z3 n, S1 }. E问题' E9 B6 z$ H9 {, A
源代码无法编译

0 ~4 K, ?' B  x7 w) d1 e1 v9 U除了要设置Includes还要设置Source Location,5 @: r: v% m& ^  C( |

, X! B0 `& h# z8 @, u3 ~
a496ecd4b51d485db7fa6f01966f1c54.png
' j( ?* a( C# E. n* D1 y# P( G: r/ ?* H5 A
导入离线包
: |7 y( D% F% t" C在导入stm32f4的离线包时,官网上只有en.STM32Cube_FW_F4_V1.24.0外加一个补丁包en.patch_cubefw_f4.zip,
! S  N% V& f' }4 {' h
/ t( n+ _. J  j7 M4 p
20191007214001502.png
/ h, }* f7 g5 @# r( h# t% c+ E
4 j! w1 S' o# i
而这个补丁包是没法导入的,报错,尝试手动打补丁,stm32的包文件都安装在下面的路径C:\Users\***\STM32Cube\Repository\STM32Cube_FW_F4_V1.24.0,手动把补丁文件解压覆盖试一下,重启一下软件看一下,成功了。/ v; w9 S0 \' f1 G9 N( k' x+ Q
————————————————+ P) U" P- Y% K% A/ O6 X5 a& c
版权声明:三遍猪
# P! M8 _+ Z$ O0 @4 l: ~0 G. g( @) i5 Q% d' d8 b" e
% n& D. t* M4 M4 _, u( ^3 M
赞 收藏 评论0 发布时间:2022-12-23 17:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版