您的位置 首页 开关

浅析STM32 HAL固件库编程文件安排

浅析STM32 HAL固件库编程文件组织-对于我这种以前只接触过51和AVR单片机编程的小菜来说,现在开始学习STM32的编程,对于函数的功能以及C语言的语法都还好理解,难的是它提供的那一套硬件抽象层(HAL)驱动是怎么和其他的东东搭配在一起组成一个又一个的工程。

关于我这种曾经只触摸过51和AVR单片机编程的小菜来说,现在开端学习STM32的编程,关于函数的功用以及C言语的语法都还好了解,难的是它供给的那一套硬件笼统层(HAL)驱动是怎样和其他的东东调配在一起组成一个又一个的工程。

首先上两张从ST官方供给的HAL固件库文档截图

从这两张图的话,能对它的构架看出个一二,下面稍稍详细一点剖析

HAL固件库编程,它的文件安排大致分三个部分

– HAL驱动

– CMSIS驱动

– 用户编写程序

而假设你运用的是ST官网的开发板,那么你还有一套现成的驱动可供运用,板级支撑包(BSP),那么正好向我相同,可是,我不太喜爱运用这个东西,能自己写仍是自己写的好。

HAL驱动毫无疑问便是ST供给的一些包装好的硬件笼统层的驱动,这个便是ST供给的利器,有必要有,不必是不可能的。CMSIS的话,这个大概是ARM内核相关的一些驱动吧,这个一般咱们编程都操作不到,咱们大部分都是调用HAL的程序。除了这两个有必要有的,当然主函数也是有必要有的,还有其他的一些东东,这些还比较多,但都能够自己参照ST给的例程或是模板自己从零开端写。

下面就其中一些用户装备,但涉及到驱动的文件做一些阐明。

有一个stm32f3xx_hal_conf.h(以F3系列为例阐明)的HAL驱动装备文件,这个究竟是算HAL驱动仍是用户自定义文件呢,我更倾向于后者。在固件库中会模板,能够去修正里边的内容,我就喜爱自己从头写,东西也不多,可是现在自己写还不成功,再看看,这块应该问题不大。

stm32f3xx_it.c,这个文件在模板给的文件里有,可是东西不是许多,看姓名就知道这个是和中止有关,关于我的现阶段,用到的中止不多,用到就自己写就好了。

startup_xxx便是以startup最初的一个什么文件,这个貌似是整个工程的开始文件,默许是放在CMSIS下,仍是一个.s类型的文件。

有个system什么的文件,它也是包含在CMSIS下的,这个和上一个的文件都比较特别吧,不过好在这两都不必咱们去修正,只要到对应的文件夹下复制出来就好了。

总归,便是分三部分,CMSIS,HAL和用户自定义文件,这不管是在文件夹安排,仍是在工程结构安排上都能够依照这个逻辑。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/343852.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部