zoukankan      html  css  js  c++  java
  • STM32固件库

    一、STM32固件库开发和传统寄存器开发方式的区别

    二、CMSIS标准

      CMSIS标准--Cortex Microcontroller Software Interface Standard,是ARM公司为了解决不同SOC厂商生产不同的Cortex某系类芯片的软件兼容性问题,与芯片厂商建立的软件内核标准。

    1、Cortex-M3芯片架构(硬件结构)

    2、CMSIS标准(软件结构)

    三、STM32固件库

    1、文件结构

    2、关键文件夹和相关文件说明

    ① 顶层目录

    • _htmresc    内含CMSIS图标和ST图标
    • Libraries  文件夹下是驱动库的源代码及启动文件
    • Project    用驱动库写的例子和一个工程模板
    • Utilities       基于ST官方开发板的例程
    • stm32f10x_stdperiph_lib_um.chm 库使用帮助文档

    ② CMSIS目录

      主要是ARM公司为Cortex-M3提供的内核操作接口。

    1. CoreSupport         

      ARM公司为Cortex-M3提供的内核操作接口

      core-cm3.c、core-cm3.h的作用是为采用Cortex-M3核设计SOC的芯片厂商设计的芯片提供一个进入CM3内核的接口。

    2. DeviceSupport      

      ST公司为STM32F10X系类提供的与内核相关的文件,包含启动文件、外设寄存器定义和中断向量定义层的文件。

    • startup目录下的startup_stm32f10x_**.s          Cortex-M3芯片的启动汇编文件
    • stm32f10x.h           此文件把stm32f10x的所有外设的特殊功能寄存器地址全都定义了
    • system_stm32f10x.c     此文件配置stm32的系统时钟和总线时钟
    • system_stm32f10x.h        system_stm32f10x.c对应的头文件

    ③ STM32F10x_StdPeriph_Driver

       这个文件夹下的内容是ST公司为STM32F10X芯片的所有外设--SOC厂商在Cortex-M3核外加进去的设备--开发的库。

    • src 包含每个外设的库函数文件
    • inc  包含每个外设的库函数文件对应的头文件

      其中需要额外说明的是一个特别的文件misc.c,它提供了外设对内核中的NVIC--中断向量控制器--的访问函数,在配置中断时,需要将这个文件添加到工程中。

    ④ STM32F10x_StdPeriph_Template

    • main.c 用户主函数文件
    • stm32f10x_conf.h      用来配置使用了什么外设的头文件,当定义宏USE_STDPERIPH_DRIVE时被stm32f10x.h所包含
    •  stm32f10x_it.c         ST公司专门为编写中断服务程序预留了函数,这些函数接口在汇编文件中已经被定义了。
    • stm32f10x_it.h          stm32f10x_it.c对应的头文件

    四、总结STM32固件库

    1、遵循CMSIS标准的STM32软件结构

    2、用户使用库时的必备文件

    C文件

    • startup_stm32f10x_**.s
    • system_stm32f10x.c
    • core-cm3.c
    • stm32f10x_it.c

    头文件

    • system_stm32f10x.h
    • stm32f10x.h 
    • core-cm3.h
    • stm32f10x_it.h 
    • stm32f10x_conf.h

    参考:STM32库开发实战指南

  • 相关阅读:
    bootstrap-datetimepicker 十年视图、年月视图 附源码
    java面向对象程序设计的五个特性
    简述rtsp,rtmp,http三个协议
    iOS 实现毛玻璃效果
    一个裁剪图片的小工具类,通过一句代码调用
    iOS 中的正则匹配(工具类方法)
    博客园不支持Markdown语法,新博客将发在简书...
    一行代码,让你的应用中UIScrollView的滑动与侧滑返回并存
    仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器,适配了iOS6-10系统,3行代码即可集成.
    分享一下我封装iOS自定义控件的体会,附上三个好用的控件Demo <时间选择器&多行输入框&日期选择器>
  • 原文地址:https://www.cnblogs.com/amanlikethis/p/3714546.html
Copyright © 2011-2022 走看看