第7章CMSIS架构与STM32标准外设库4H要点分析.ppt

第7章CMSIS架构与STM32标准外设库4H要点分析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STM32标准外设库 3、stm32f10x.h头文件:外设寄存器的定义、位定义、中断向量表、存储空间的地址映射等。 如同51单片机的reg52.h头文件一样,stm32f10x.h像一个大表格,我们在使用的时候就是通过宏定义进行类似查表的操作。 例:没有这个文件的话,怎样访问STM32的寄存器,有什么缺点? 需要查手册来确定哪个地址对应哪个寄存器。 地址易写错、可读性差、易出错、开发效率低。 新建项目选库时必选项:Framework,加载下2个库文件。 4、stm32f10x_conf.h,库配置文件,记录用到的外设库文件。 5、misc.c,设置NVIC的函数库。 STM32标准外设库 6、stm32f10x_rcc.c必选项,设置系统时钟相关函数的库;除了在SystemInit()函数中对时钟初始化。 标准外设库文件: stm32f10x_adc.c stm32f10x_bkp.c stm32f10x_can.c stm32f10x_cec.c stm32f10x_crc.c stm32f10x_dac.c stm32f10x_dbgmcu.c stm32f10x_dma.c stm32f10x_exti.c stm32f10x_flash.c stm32f10x_fsmc.c stm32f10x_gpio.c stm32f10x_i2c.c stm32f10x_iwdg.c stm32f10x_pwr.c stm32f10x_rcc.c stm32f10x_rtc.c stm32f10x_sdio.c stm32f10x_spi.c stm32f10x_tim.c stm32f10x_usart.c stm32f10x_iwdg.c 每个外设对应一个 .c 和 .h 文件。 外设驱动接口和中间件 每个外设对应一个.c和.h后缀的库文件。 STM32标准外设库 库是寄存器与用户驱动层之间的代码,向下处理与寄存器直接相关的配置,向上为用户提供配置寄存器的接口。 事实上,库函数的底层实现恰恰是直接配置寄存器方式的最佳例子,想深入了解芯片是如何工作的话,只要追踪到库的最底层实现就能理解。 想修炼C/C++语言,就从ST的库开始。 调用STM32的库的函数,就可以对STM32进行配置。我们可以不知道库函数是如何实现的,但必须要知道函数的功能、可传入的参数及其意义、和函数的返回值。 STM32标准外设库 库函数很多,学会查阅库帮助文档就行! 库帮助文档:stm32f10x_stdperiph_lib_um.chm 层层打开文档的目录标签即可。 在用库函数的地方,直接从库帮助文档复制即可。 作业 1、简述CMSIS、及其组成、作用与意义。 2、启动文件的作用? 3、stm32f10x.h头文件的作用? 4、stm32f10x_rcc.c的作用? 4、没有stm32f10x.h头文件的话,怎样访问STM32的寄存器,有什么缺点? 5、从STM32库的实现原理上解答 库到底是什么?为什么要用库?用库函数与直接配置寄存器的区别等问题。 * Embedded System Development 聊城大学 理工学院 曹银杰 caoyinjie@lcu.edu.cn 嵌入式系统与应用 第7章 CMSIS架构与STM32标准外设库 7.1 CMSIS简介 7.2 C/C++项目建立与调试 7.3 CM7的启动文件解析 7.4 STM32标准外设库 7.1 CMSIS简介 为解决不同厂商的Cortex微控制器软件的兼容性问题,ARM与芯片厂商制定了Cortex微控制器软件接口标准CMSIS (Cortex MicroController Software Interface Standard)。 是Cortex-M处理器系列的与供应商无关的硬件抽象层,可以为处理器和外设实现一致且简单的软件接口。 1、基于CMSIS应用程序的架构 中间件 CMSIS层 内核访问函数、外设寄存器与中断向量定义 MCU层 用户层 RTOS、中间件层 外设函数库 2、CMSIS包含的主要组件: CMSIS-CORE库: 访问内核及其设备、寄存器、内核外设函数,如ARM提供core_cm3.h、 core_cm3.c等core_前缀的文件; 片上外设寄存器与中断定义,如由芯片生产商提供device.h、system_device.c等文件; CMSIS-DSP库:包括向量运算、矩阵计算、复杂运算、筛选函数、控制函数、PID 控制器、傅里叶变换和很多其他常用的 DSP 算法。有C源代码允许修改。 CMSIS-RTOS API库:用于线程控制、资源和时间管理的实时操作系统的标准化编程接口。 CMSIS-SVD库

文档评论(0)

挺进公司 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档