- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STM32F10x 标准外设库结构分析
STM32F10x 准外设库结构分析
Research On STM32F10x Standard Peripherals Library
BY:AIRWOLF
QQ
E-mail:Airwolf0992@163.com
Airwolf0992@163.com QQ AIRWOLF 1
STM32F10x 标准外设库结构分析
前言 说一说为什么写这篇文章
学习STM32 近一周了,同时也在网上找了很多的资料,下载了神州、
Alientek、半壶水、芯达、红牛、旺斯泰等 习板的光盘或说明书。加之
自己的奋斗版V3 实验板的资料。为了上手快点,打算从库函数的使用看起,
问题随之而来,如何建立一个合理的项目工程文件。网上有许多教程,关
于不通的开发环境的,按 教程说明能够建立起一个完整的工程,但是自
己总感觉怪怪的,为什么要这样建立工程,到底那些头文件里都有哪些函
数的申明和数据类型定义、寄存器映射等。只有这样才能建立符合自己需
求的工程。遂下定决心写一篇关于标准外设库结构的文章,和大家一起
习,共同探讨,同时也能帮助和我有一样疑虑的朋友。
我用的是3.5 版本的库,开发环境用的是 RealView MDK-ARM V 4.12。
Airwolf0992@163.com QQ AIRWOLF 2
STM32F10x 标准外设库结构分析
第一部分 STM32F10x 标准外设库概述
STMF10x 标准外设库是是一个固件函数包,它由程序、数据结构和宏
组成,包括了微控制器所有外设的性能特征。该函数库还包括每一个外设
的驱动描述和应用实例。通过使用本固件函数库,无需深入掌 细节,用
户也可以轻松应用每一个外设。因此,使用本固态函数库可以大大减少用
户的程序编写时间,进而降低开发成本。
每个外设驱动都由一组函数组成,这组函数覆盖了该外设所有功能。
每个器件的开发都由一个通用API(Application Programming Interface
应用编程界面)驱动,API 对该驱动程序的结构,函数和参数名称都进行了
标准化。
所有的驱动源代码都符合 “Strict ANSI-C”标准 (项目于范例文件符
合扩充ANSI-C 标准)。ST 公司已经把驱动源代码文档化,他们同时兼容
MISRA-C2004 标准。由于整个固态函数库按 “Strict ANSI-C”标准编写,
它不受不同开发环境的影响。仅对话启动文件取决于开发环境。
该固态函数库通过校验所有库函数的输入值来实现实时错误检测。该
动态校验提高了软件的鲁棒性。实时检测适合于用户应用程序的开发和调
试。但这会增加了成本,可以在最终应用程序代码中移去,以优化代码大
小和执行速度。
因为该固件库是通用的,并且包括了所有外设的功能,所以应用程序
代码的大小和执行速度可能不是最优的。对大多数应用程序来说,用户可
Airwolf0992@163.com QQ AIRWOLF 3
STM32F10x 标准外设库结构分析
以直接使用之,对于那些在代码大小和执行速度方面有严格要求的应用程
序,该固件库驱动程序可以作为如何设置外设的一份参考资料,根据实
需求对其进行调整。
Airwolf0992@163.com QQ AIRWOLF 4
STM32F10x 标准外设库结构分析
第二部分 CMSIS 架构简
文档评论(0)