基于HAL库建立MDK工程

MDK建立工程与使用STM32CubeIDE相比,MDK工程的文件,及文件所在的目录自己比较清晰,对比有以下几点感想。
1、STM32CubeIDE建工程,傻瓜式操作,有时候连文件在那里都不清楚。库文件等自动帮你链接好了,环境比较友好,但操作的乐趣就没有了。
2、对于一些库程序,竟然不可以通过右键去查看程序的原型,不知道是自己不会操作,还是有意为之,只可以看到.h文件的定义。
3、对于STM32CubeIDE,函数比较长时,你输入几个字母就可以联想出函数的原型了,比较的好,不过MDK5.26中也已开始有相应的功能了。
言归正转,现在来说怎么样建工程的事情。
一是建相关的文件夹,我一般是建四个文件夹。
1、FWLIB---------------------CMSIS--------------startup_stm32l476xx.s、system_stm32l4xx.h、include文件夹
|
----------STM32L4xx_HAL_Driver--------inc
|
------src
2、USER----------------------main.c、stm32l4xx_hal_conf.h、stm32l4xx_it.c、stm32l4xx_it.h
|
----------BSP(其它文件或文件包)
3、DOC-----------------readme(相关说明文件)
4、project---------------------MDK(相关的工程,及输出文件,使用其它软件建的工程也都放在此目录中)
二、在CMSIS文件包中,startup_stm32l476xx.s根据自己芯片的不同,选择不同的.s文件,特别需要注意的是,要选择arm目录下的.s文件。
stm32l4xx_it.c和system_stm32l4xx.c文件 可以通过STM32CubeIDE创建的工程中得到,放在CMSIS目录下。
三、在建立工程后,我一般建立四个工程目录,分别是startup、user、fwlib、CMSIS。将相应的文件放在各自的目录下即可以。
starup目录下,一般只放startup_stm32lxxx.s文件
user目录下,放man.c,和其它相关的基于此板子的程序(BSP)。
fwlib放库文件。
CMSIS放CMSIS中的文件及stm32lxx_it.c和system_stm32l4xx.c等标准文件。
四、设备相关的MDK的环境变量,在options for target–>c/c+±->define中设备相关的参数,一般为:USE_HAL_DRIVER,STM32L476xx,多个变量用“,”分开。
这样基于HAL库的简单程序就建好了。

五、对于要增加其它的功能,比如GUI、LwIP、UCOS、LiteOS等,将相关的文件单独一个文件夹,工程中单独的目录,这样相互减少耦合,方便移植。
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值