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

STM32CubeIDE使用

[复制链接]
STMCU小助手 发布时间:2022-12-23 17:00
安装
* r  Z- b% `5 t7 K2 x0 XSTM32终于出了这样一款工具,之前也出过开源的eclipse开发工具,但这次帮你打包了一站式的,更方便了,点击此处下载,下载需要有自己的账号,安装一路默认就可以了。
0 }; q) C! b# r( k6 \2 U( }, [
/ |" ?$ ], Q0 I+ b# n8 l3 \
使用
) O: b2 I; T: I% ^' i
新建stm32工程:文件 > 新建 > STM32 Project,弹出下面的向导,通过1,2,3等过滤选项,选出正点原子战舰V3对应的stm32f103ze系列芯片,点击Next,' K5 S3 v3 |2 P$ u$ q* r1 C
2 I+ A- J/ Y, W
20191004221427361.png
4 b, @, k" s9 e5 Z& x' n6 N

, p; t  v/ ~# B7 e9 x下面一路默认选项,如果你是第一次使用,会自动开始下载相应的固件包,我这自动下载的过程被打断,弹出一个对话框说代码生成失败,现在尝试手动来操作,点击Help > Manage embedded software update,这个菜单只有在*.ioc的CubeMX文件打开的情况才可以点击,弹出一个对话框,下载f1系列的包,可以看到下面有一个From Local,可以离线导入的,如果网实在太差,就别处下好导入,我最后还是离线导入的,官网下载stm32cubef1,是的,英文官网的速度飞起,比国内的网站还快,
* l# I/ C- R* o2 p" [) h' f+ Z5 E# X4 X! V) O( w
20191004222411389.png
. H! M8 c" N6 N) A5 X
$ `7 G' D3 Q/ P; n# z* M( R
配置单片机,先配时钟,最大性能的配置,系统时钟为72MHz,, n1 B  h0 e; [+ s7 T8 o& x
8 {4 y+ x7 J/ j9 I& _9 G
424c012357684fc08043ce163b823437.png
- d. p7 _2 A6 t" J0 q
: g. }  u0 C" A0 U/ N
配置GPIO等外设,可以在左边的列表配置,也可以在图形上单击选择配置,
$ S( {+ f* P' r. _# q1 N
1 W. w2 C# {3 E( W
b5032e364c444a7ba92bef6a33006eb9.png 2 ]: G* a; V! `

* Y$ w% w- y9 z- g. ]GPIO配置,可以设置User Label,
* p2 ~2 }2 v& s3 R( K' l, z6 Z# Q, \, Q; L' j' b# \
eb43560c452041399dc91a68dcc80457.png 7 X# a, u4 _% h* e- ]4 ~

2 K6 f/ Z# y$ [$ ^使用奇偶校验时必须把数据位配置UART_WORDLENGTH_9B。使用串口printf时,打印浮点数需要设置,
! W) L5 t# R) r" [3 z2 }: H7 L* P
, _& I3 v3 l% O3 F4 n( `2 K: s) L
c27f9cd72047404a958d4b289fee1df8.png ' f# F7 r4 A( Q

  o* {& H9 F5 a- f& NCAN配置,参考文章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。8 O/ w1 k# L3 ?8 P5 g/ G* a0 `; R" d5 ]
' Y$ S! O" b" x! H5 E, Q0 r
1ee50a4c234648e4b461e701272335f5.png
* N% Y: g9 b3 M8 j: @) h
0 ~( j. I) v# K7 t
USB配置,使用默认设置,在Project Manager中把堆栈改大点,防止程序跑飞,
  L+ w& Q# P, O. z. J6 g) }6 V+ f) H3 K8 q' K1 }1 [0 P3 t( V" V6 V
98167d57a6c649d89df99cc4a37fde4b.png
% h, e4 A8 [. S
! t5 K2 ]6 X6 u" n
外部中断配置,8 W8 r, k. d2 o- w( K

% @2 X1 f9 ~+ t; |* x7 G
f5c176cae6754653adbf22b8a0b8f7e5.png
5 V" f: M8 d% T( Y" ~0 o9 @

/ k/ H8 ]( W1 f, m+ ^! J6 m点击Project > Generate Code可生成代码,查看工程属性,可以看到,自动配置好了包含路径,
: M* M( d% }/ i$ e5 O
1 ?3 t- N2 g7 Y3 q
bbafeebad68a4f9c8a0506a30b597b10.png
: w% F3 k# L0 b3 W' V9 c: s
2 `/ s. |7 M  s/ G2 g8 x5 N0 z7 J
0 y( @. J0 G. F' B
配置
6 `  P6 [% y7 q* ?TAB

: p' S+ t5 `; l* c5 i6 j) {# k7 b配置自动缩进为2,使用空格代替TAB,点击Edit,创建自己的配置,
' ~1 d* U6 _1 A0 P, S4 \
4 K0 A* f8 Z8 {! c2 r
60013d5368694db9bb06e0e953986505.png 3 H+ ?: @6 r% D5 E9 C

+ {: u* |+ |* ]! l

* l0 D/ r$ l8 }8 H9 l问题/ q! Y" i; T( s5 W% y% P
源代码无法编译
, V+ f. @7 w$ A# A2 h( [7 E
除了要设置Includes还要设置Source Location,
7 r( T4 W% K* Y1 ]& F* o8 B: |/ D; N
a496ecd4b51d485db7fa6f01966f1c54.png 4 M9 n$ I1 J4 w3 O* a
0 f3 u. y. f6 o0 ?4 b, \# L- H  z" a
导入离线包% g. Z& _+ [" L( U7 A# G* b. _
在导入stm32f4的离线包时,官网上只有en.STM32Cube_FW_F4_V1.24.0外加一个补丁包en.patch_cubefw_f4.zip,6 I9 l( v' h6 a. Z0 }2 A& p" N& }
9 C' |1 i4 J* F3 p8 a. U$ u0 u
20191007214001502.png 6 V# v% |+ o$ P

4 n! k. S; A0 y* G5 r7 c' l
而这个补丁包是没法导入的,报错,尝试手动打补丁,stm32的包文件都安装在下面的路径C:\Users\***\STM32Cube\Repository\STM32Cube_FW_F4_V1.24.0,手动把补丁文件解压覆盖试一下,重启一下软件看一下,成功了。3 a$ U1 f/ y5 a7 r
————————————————9 i8 ^% S& g6 p% A6 m8 D
版权声明:三遍猪
$ s. N/ U# z) c9 Z7 U- }* O
. I# c3 G0 ~; O
5 z0 w, D2 w& @( r  ?- i" F, G
赞 收藏 评论0 发布时间:2022-12-23 17:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

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