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

【中文文档】AN2953_如何从STM32F10xxx固件库V2.0.3迁移到STM32F10...

[复制链接]
STMCU-管管 发布时间:2019-4-22 10:48
如何从 STM32F10xxx 固件库 V2.0.3升级为 STM32F10xxx 标准外设库 V3.0.0% }- h& }5 u0 t: D1 p; U

7 K( r  v# \9 z' H6 E) p+ T+ B介绍 " n8 P$ K( B) D9 Y/ Y' i

; y8 s2 Q) a2 i( b0 o本文的目的是介绍如何把基于STM32F10xxx固件库V2.0.3(FWLib)开发的应用程序升级到STM32F10xxx标准外设库V3.0.0。本文的目的不是提供2个版本的详细信息,而是重点介绍2个版本之间的差异。 3 k4 W4 c. B' @) r7 H

+ E2 R+ Z( P6 S; i- W注意: 文中,除非特别指明,固件库(FWLib)代表STM32F10xxx固件库V2.0.3,而标准外设库(StdPeriph_Lib)代表STM32F10xxx标准外设库V3.0.0。
8 v" Y) q6 f* A( D, N% G% o
& q2 ], G$ U$ Y% `" T
术语表 2 y$ Y. a  `. ]
5 @1 p+ Q& T3 }- _" R
小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx,STM32F102xx和STM32F103xx微控制器。
( J/ @4 ]' f4 n- J4 }8 y

# I% D) @) E: U  D* l中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx,STM32F102xx和STM32F103xx微控制器。 $ W7 R( U# v/ T, J% l
$ J- N7 J$ M6 N* M4 p8 S
大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控制器。
% W  X* J" [: L$ V" ]
* }; t4 ?) h4 o
1 为什么把STM32F10xxx固件库(FWLib)V2.0.3升级为标准外设库(StdPeriph_Lib)V3.0.0
! f+ e- f* h) n4 z* U
+ n% |( u/ Y+ ~# U* ^* nSTM32F10xxx固件库(FWLib)V2.0.3是一个完整的固件包,它适用于STM32F10xxx小容量,中容量和大容量产品。固件库由程序,数据结构和宏组成,覆盖了所有外设的特征,还包括了全部标准外设的驱动和一系列示例程序。
( d2 a% _* z) ~- O  Z& u
# q5 ]( a5 B- U6 l: L( g1 x
STM32F10xxx标准外设库(StdPeriph_Lib)V3.0.0由固件库(FWLib)V2.0.3升级而来:8 {3 r1 [" b* l( d0 _0 `1 L, C
● 它使库与CortexTM微控制器软件接口标准(CMSIS)兼容
6 Y% @1 f5 |, }9 x ● 改进了库包的体系结构' @0 J; G/ H# }$ |( r1 ~- A
● 源代码符合Doxygen格式
# N% ]+ E% g9 o% c4 _1 i- y8 D2 q$ n ● 升级不影响STM32外设驱动的API(应用编程接口) , z" i# L# Z( z- F

% Y8 J5 o- u( c" g注意: 标准外设库(StdPeriph_Lib)V3.0.0只对STM32F10xxx CAN驱动进行了升级,目的是支持即将面世的STM32F10xxx连接型产品(带双CAN)。
0 O9 u: m# s" g5 I# ^

+ H& ^- s& b8 S$ n6 M# @6 M: D9 H要升级到STM32F10xxx标准外设库V3.0.0,用户只需要更新:
# t8 F7 J8 H: r# R: {$ x2 o) _3 a7 ` ● 与工具链相关的文件
/ U2 d1 p# n# |# A- }1 s% d ● 项目(project)设置
9 t0 b# T  c' l8 u% C- { ● 库文件的位置 ( D' A! d5 s1 Q4 Z: d2 L, D+ @9 \* u
● 用户无需改变或者更新应用程序的代码   P% A+ ?- N2 n/ G0 n
/ u3 @6 Q* b- @" W9 `
下文详细描述了标准外设库(StdPeriph_Lib)的所有更新细节。
2 X4 h) B# H( A, U. e5 F( j3 {1 W0 a6 i, l
1.1 兼容ARM® Cortex-M3TM微控制器软件接口标准(CMSIS)
/ x5 E) @: w; |/ I6 ]) \( F% o* k5 w9 z0 |
CMSIS可以解决用户在基于Cortex-M0/Cortex-M1或者Cortex-M3内核的微控制器上进行软件开发时可能遇到的种种问题。CMSIS还可以扩展,应用在将来的Cortex-M系列处理器内核上(标准称为Cortex-Mx)。CMSIS是ARM公司与多家不同的芯片和软件供应商一起紧密合作定义的,提供了内核与外设、实时操作系统和中间设备之间的通用接口。可以访问网站www.onarm.com获取更多细节。
# K& w8 e  n3 ]& x% P2 \, [5 ?( F. Z# L
1.1.1 CMSIS描述
+ H; Z" X/ k! P: h) \4 q& ]* T" [2 m0 \# Z" D! E) Y! S
CMSIS可以分为多个软件层次,ARM提供了下列部分,可用于多种编译器:
# I; K' g" ?* O7 m3 _+ `& T ● 内核设备访问层:包含了用来访问内核的寄存器设备的名称定义,地址定义和助手函数。同时也为RTOS(实时操作系统)定义了独立于微控制器的接口,该接口包括调试通道定义。
# I5 L4 `, [5 |  w; | ● 中间设备访问层:为软件提供了访问外设的通用方法。芯片供应商应当修改中间设备访问层,以适应中间设备组件用到的微控制器上的外设。目前中间设备访问层仍处于开发过程中,本文不做详述。
$ h/ i% `% o1 h$ a  T9 a
$ Y: m% m" d5 R芯片供应商扩展下列软件层:
$ _" N  G* b) {8 T2 [& v ● 微控制器外设访问层:提供片上所有外设的定义。% ]' N8 W; {6 ~& F2 ^- q$ m; q
● 外设的访问函数(可选):为外设提供额外的助手函数。0 v2 o% N: \' V' Q9 f) ~& A3 n

5 x2 l: T- v( l1 i. rCMSIS为Cortex-Mx微控制器系统定义了:
, s' d  z% w# Y% O% X- T! t! ~ ● 访问外设寄存器的通用方法和定义异常向量的通用方法。
& E( Y: @& P) Z ● 内核设备的寄存器名称和内核异常向量的名称
: T; _% P$ W* P8 s) W2 Q4 F/ K, J  t ● 独立于微控制器的RTOS接口,带调试通道
7 K7 E: E% h) S& X* F8 B0 }& T9 N* S$ Z0 a ● 中间设备组件接口(TCP/IP协议栈,闪存文件系统)
* p2 D3 ~* U+ V8 |- R$ M  ~* t2 u/ r1 X; I, K/ g; t* n
1.1.2 CMSIS结构 * E& q& ]3 ]$ f( B
% X& c1 Z6 T* L! c
图1展示了基于CMSIS的应用程序的基本结构。
" U/ v; m; H! V% j; P* d( P

9 q# b7 ^: B5 l& i9 d图1 CMSIS层结构
- a- A; o' j6 }0 g1 c: y1 J/ n* v" E
' r7 {. y# |7 m
1.png

7 r/ ]* T, _& I# E+ E! ]; G" |" b# F0 X9 c
.........

1 R8 a1 y7 y5 `8 z* B
想了解更多,请下载原文阅读

; O* d; B) o9 `2 P, |5 b  _
赞 收藏 评论2 发布时间:2019-4-22 10:48

举报

2个回答
Kevin_G 回答时间:2019-4-23 09:46:59
下载链接有问题
单片机爱好者 回答时间:2019-5-26 23:22:01
支持~~~~~~~~~~~~

所属标签

相似技术帖

官网相关资源

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