赞
踩
目录
前言:目前ST公司针对STM系列的单片机推出了三种库函数分别是标准库,HAL库和LL库。你问我为什么不说寄存器开发,以为太过于底层,非一般高手驾驭不了,我只是个小菜**,所以对于寄存器开发不敢妄自议论。在这三种库函数中ST公司已经不再对标准库进行维护了,按照目前的状况来说HA为学习的主流。针对HAL库ST公司也推出了一款图形配置工具CubeMX,可通过配置自动生成初始化代码。
HAL库是ST公司目前主力推行的开发方式,全称就是Hardware Abstraction Layer(抽象印象层)。库如其名,很抽象,一眼看上去不太容易知道他的作用是什么。但它相对于标准库来说更加简洁高效,同样的功能,标准库可能要用几句话,HAL库只需用一句话就够了。并且HAL库也很好的解决了程序移植的问题。因此HAL库是ST未来主推的库。
1..最大可移植性
2.提供了一整套一致的中间件组件,如RTOS,USB,TCP/IP和图形等
3.通用的用户友好的API函数接口
4.ST新出的芯片已经没有标准库
5.HAL库已经支持STM32全线产品
OK简单了解完HAL库以后我们开始这篇文章的主题如何手建HAL库工程
注:HAL库工程的创建可按照自己的想法来建在这里只提供一个参考。
这里针对各个文件的用途我就不赘述了,有兴趣的可以自己了解一下。
其中与我们建工程有关的文件夹是Drivers
在这里我们要简单了解一下各个文件夹的里面主要存放的东西
BSP:(板级支持包)这通常包含与特定开发板或硬件平台相关的驱动程序和配置。
CMSIS:是ARM Cortex微控制器软件接口标准。它包括了DSP库、Cortex-M内核及其设备文件、微控制器专用头文件、启动文件以及专用系统文件。
STM32F1xx_HAl_Driver:
文件包含了与STM32微控制器的各种外设(如GPIO、UART、SPI、I2C等)相关的驱动程序。这些驱动程序通常以源文件和头文件的形式存在,并提供了用于控制和管理这些外设的API(应用程序接口)。例如,stm32f10x_gpio.c
和stm32f10x_gpio.h
文件分别包含了GPIO寄存器的操作函数和相关的宏定义。
<1.1>打开固件库中的Drivers的CMSIS文件,然后将Include文件夹的所有文件复制到我们所创的CMSIS文件中。(这里为了我们少添加某个文件我建议全部复制)
打开固件库中的Drivers的CMSIS文件,然后打开Device文件夹
<2.1>
将这三个文件复制到我们建的StartUp文件中
<2.2>
将这个文件也复制到StartUp文件中
<2.3>
同样的将其复制到StartUp文件中
将这两个文件复制到我们建的Driver文件中
至此我们需要的文件就已经添加完了
注意:在将我们建的工程放在MDK_ARM文件中
<4.1>
<4.2>
点击魔术棒
到这么工程已经配置差不多了
OK,到这里我们的工程就建完了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。