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

STM32F0系列寄存器操作01:新建工程

[复制链接]
STMCU小助手 发布时间:2021-2-25 14:41
STM32F0系列寄存器操作01:新建工程
* L% B  p1 {0 S5 d
最近,终于下定决定对STM32的寄存器下手了,主要还是因为STM32的库很多限制,加上确实很占空间(尤其是F0系列)。
而且qq群里的高手也不断明确:只有撸好寄存器才能更好做的模块化编程,更好的实现跨芯片的程序移植。(当然这其中的道理我明白,具体怎么做到更好还有待不断的实践探索)。

( J1 X/ D6 }9 e7 j1 O& a
关于撸寄存器,网上其实没有很多的资料(至少我没有找到),目前手头就只有《原子例程之寄存器篇》(基于F103的)。所以对于如何开始我是一头雾水的。
5 e. j. W2 X+ s2 e
虽然高手都说了,去看datasheet吧,把每个寄存器先搞明白了了,但是,真的但是,寄存器在一开始学STM32的时候其实有简答了解过的,但是真的到了应用其实还是云里雾里~
9 a- t: v+ i( ]+ m
但是既然决定了,那就硬着头皮上吧,毕竟我真的觉得作为一个10年的老单片机程序媛(其实开始水平真的很一般)来说,是该努努力提升一下自己了,加油~
( P% x: F+ F# R9 N7 O
但凡做过单片机开发的肯定都了解,第一步肯定是配置时钟,没有时钟,什么功能开发都是大白话,所以我的第一步就先新建个空工程做准备吧。
那就开始吧,希望我能尽量写明白,毕竟能写明白,说明自己真的明白了!
$ W# \; X5 }% l- s
目录
1. 新建工程Test,这个步骤的截图直接省略,毕竟太过基础;
2. 在工程文件夹下新建Libraries文件夹,并把F0系列的驱动文件拷到文件夹下。
3. 对项目的分组进行重新定义,目前只添加USER、SYSTEM和CMSIS:
4. 拷贝启动文件和芯片配置文件到USER下:
5. 将启动文件以及驱动文件添加到工程里:
. S& \  C) E' h/ \! P+ q" P1 z4 I+ m
1. 新建工程Test,这个步骤的截图直接省略,毕竟太过基础;

. N9 s2 z& @2 I3 `' `: d( R
3.1.png

' ]( z& z( x2 h, Q5 d; h6 I/ K
备注:工程文件最好单独建一个USER的文件夹进行存放,这样方便后续管理(下图中Test为工程文件夹,USER下存放工程文件)。
; I8 z7 y  R# N3 E0 U
3.2.png

% P6 I1 G( B6 ]- E# v# r( g, H7 e
2. 在工程文件夹下新建Libraries文件夹,并把F0系列的驱动文件拷到文件夹下

9 o7 b! A! a! X& R# u, ^
3.3.png

( k9 L' }& D% b7 \9 T% W  p* x
3. 对项目的分组进行重新定义,目前只添加USER、SYSTEM和CMSIS:

8 r2 j8 K0 o; |$ N& V6 v
3.4.png
' \& }5 G/ Z) _
完成后如图所示:

' X% n/ q- v! K2 A* |7 N0 Y8 Q
3.5.png

/ r; U: d3 R  G* Z6 }
4. 拷贝启动文件和芯片配置文件到USER下:
0 p7 @6 G  T8 q8 C
3.6.png

) Q' w$ I' F5 H" F/ `
5. 将启动文件以及驱动文件添加到工程里:
# c% k7 a- }0 ~- q
3.7.png
) f* }4 @8 z' C! T! b
其中
  (1) 启动文件startup_stm32f072xb.s就是上一步拷贝到USER下的文件。
(2)各个外设的驱动文件在下面的文件夹内:

+ }% ^# @* _% H7 I% g
3.8.png

5 L* B/ A) H( F4 f. r; D
(3)CMSIS下的文件在下面的目录内:
: G( z6 S- i& ?% P4 J1 o5 f+ r
3.9.png

! z, q' n: e- _$ ~& q/ T/ T
(4)在USER文件下新建一个main.c,并输入main函数的入口
8 c) g& o* A4 k2 G
3.10.png
: q) |) L# o; |" d( a4 J
(5)添加文件包含路径以及必要的宏定义;
: G6 C0 i2 q$ P& n2 k* g' z
3.11.png
+ d( f6 Y/ M3 q1 N2 U
其中宏定义有两个:USE_STDPERIPH_DRIVER 和STM32F0XX(空格隔开即可);
- j+ ?, }; v5 C' i/ h$ u- Z$ D3 f
文件包含路径就是所有用的h文件的路径:
3.12.png
1 }5 u# p* l2 d' s- b4 o% x9 {3 P
(6) 编译工程,success!
3.13.png

2 X8 U3 l! ]5 o% W) t! p
第一步顺利完成,后面就要真正开始撸寄存器了,未完待续~
$ U9 {" P& r$ |/ v! e- P, t4 x
文章出处: 慢慢听说

4 f+ B% D8 c" V) n+ V1 o
赞 收藏 评论0 发布时间:2021-2-25 14:41

举报

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