请选择 进入手机版 | 继续访问电脑版

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

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

[复制链接]
STMCU小助手 发布时间:2021-2-25 14:41
STM32F0系列寄存器操作01:新建工程

7 u# I6 z2 G% w$ I# h
最近,终于下定决定对STM32的寄存器下手了,主要还是因为STM32的库很多限制,加上确实很占空间(尤其是F0系列)。
而且qq群里的高手也不断明确:只有撸好寄存器才能更好做的模块化编程,更好的实现跨芯片的程序移植。(当然这其中的道理我明白,具体怎么做到更好还有待不断的实践探索)。

& m2 V" o5 v+ n
关于撸寄存器,网上其实没有很多的资料(至少我没有找到),目前手头就只有《原子例程之寄存器篇》(基于F103的)。所以对于如何开始我是一头雾水的。

7 O2 z6 n! C/ g  @8 w
虽然高手都说了,去看datasheet吧,把每个寄存器先搞明白了了,但是,真的但是,寄存器在一开始学STM32的时候其实有简答了解过的,但是真的到了应用其实还是云里雾里~

0 Y7 o8 _! A% ~* ]3 G# a; k
但是既然决定了,那就硬着头皮上吧,毕竟我真的觉得作为一个10年的老单片机程序媛(其实开始水平真的很一般)来说,是该努努力提升一下自己了,加油~
8 ]. y* c; c5 v2 [$ B7 \
但凡做过单片机开发的肯定都了解,第一步肯定是配置时钟,没有时钟,什么功能开发都是大白话,所以我的第一步就先新建个空工程做准备吧。
那就开始吧,希望我能尽量写明白,毕竟能写明白,说明自己真的明白了!

* i4 E1 I9 h  ~  B6 }' @2 x% `( s
目录
1. 新建工程Test,这个步骤的截图直接省略,毕竟太过基础;
2. 在工程文件夹下新建Libraries文件夹,并把F0系列的驱动文件拷到文件夹下。
3. 对项目的分组进行重新定义,目前只添加USER、SYSTEM和CMSIS:
4. 拷贝启动文件和芯片配置文件到USER下:
5. 将启动文件以及驱动文件添加到工程里:

1 ?5 k0 w. s9 b9 j/ a$ k4 @; a
1. 新建工程Test,这个步骤的截图直接省略,毕竟太过基础;

6 y7 w' r% R1 R& x" @9 T6 v
3.1.png
4 T# ?# v, M* t# O
备注:工程文件最好单独建一个USER的文件夹进行存放,这样方便后续管理(下图中Test为工程文件夹,USER下存放工程文件)。

' Y. x' ]) C% F" D
3.2.png

4 i* G' w# A/ ^" o' F  c: f' o
2. 在工程文件夹下新建Libraries文件夹,并把F0系列的驱动文件拷到文件夹下
. p4 V1 F0 a/ k. p
3.3.png

. {4 r! Z! R, r8 q. y0 b9 a
3. 对项目的分组进行重新定义,目前只添加USER、SYSTEM和CMSIS:
5 q' l4 |4 }6 S- k
3.4.png

2 `3 T6 |. F4 B3 }( V! x: o
完成后如图所示:

3 U( }% v. D  m: k0 @: p# H' h! I) w0 U
3.5.png

& q7 Q: n6 a2 |+ w# t0 r
4. 拷贝启动文件和芯片配置文件到USER下:

$ T* Q" C( K# `$ d+ t: ^
3.6.png

( T$ @, D$ r. q: q
5. 将启动文件以及驱动文件添加到工程里:

9 b( M  w& w4 {8 D
3.7.png

; \. B' z# L# `& y5 D9 ^+ G$ |( n4 ?
其中
  (1) 启动文件startup_stm32f072xb.s就是上一步拷贝到USER下的文件。
(2)各个外设的驱动文件在下面的文件夹内:
$ X* u# z+ I% F1 B- A- w6 U
3.8.png
# w9 ^% j' c6 D
(3)CMSIS下的文件在下面的目录内:

+ D5 f' s( W  U. J
3.9.png

# K4 W/ M; }# ?: V; W# ?
(4)在USER文件下新建一个main.c,并输入main函数的入口

% M2 k9 t) m# `2 r+ w+ _% d
3.10.png
% C8 K! P. Z; K4 B; I8 R% o
(5)添加文件包含路径以及必要的宏定义;

4 A: ~; K0 X+ P* u' z  }) o1 v0 F6 S
3.11.png

2 J9 ?  d3 Y6 X( R6 P0 c+ Y
其中宏定义有两个:USE_STDPERIPH_DRIVER 和STM32F0XX(空格隔开即可);
$ ]# |3 r( c6 O" k' h
文件包含路径就是所有用的h文件的路径:
3.12.png
. z% L4 T& a$ L3 l; b
(6) 编译工程,success!
3.13.png

8 W( g7 H3 ^, E
第一步顺利完成,后面就要真正开始撸寄存器了,未完待续~
5 U8 V3 i. u  H0 o" E( ?
文章出处: 慢慢听说
* P& ?: W1 s' a. g2 z9 M* o( h+ `
收藏 评论0 发布时间:2021-2-25 14:41

举报

0个回答

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版