Stm32_开发环境搭建寄存器&Hal库


提示:以下是本篇文章正文内容,下面案例可供参考

一、寄存器版本

二、Hal库版本

2.1新建工程文件夹

创建一个空文件夹,添加五个空文件夹如下。
在这里插入图片描述
Drivers:存放与硬件相关驱动层,新建一个BSP空的文件夹,其余三个从固件包中复制。
在这里插入图片描述
在这里插入图片描述
Middlewares:存放中间层组件代码,如USMART、MALLOC、TEXT、USB等,暂不用,留空文件夹
Output:存放编译工程输出文件,如.hex、.bin、.o等,留空文件夹
Projects:存放编译器工程文件,创建空文件夹MDK_ARM
在这里插入图片描述
Users:存放用户编写代码,HAL库配置文件、main.c、中断处理等。从固件库获取这三个文件夹。
在这里插入图片描述

2.2新建工程框架

在这里插入图片描述
打开MDK5,新建工程,连接到Project中MDK_ARM中,自己选择命名。选择Pack包,没有需要下载。删除掉MDK_ARM文件夹中的Listings和Objects文件夹
在这里插入图片描述

2.3 添加文件夹

在这里插入图片描述

2.3.1设置工程名和分组名

工程名:Template
分组名:Startup、User、Drivers/System、Drivers/STM32F1xx_HAL_Driver、Readme
选择三个小箱子或者右键更改
在这里插入图片描述
修改分组如下
在这里插入图片描述

2.3.2 添加启动文件

Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\arm文件夹下的Start文件
在这里插入图片描述

2.3.3添加User源码

在新建User文件夹中添加stm32f1xx_it.c
Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates下找到system_stm32f1xx.c
在这里插入图片描述

2.3.4添加SYSTEM源码

在Drivers\SYSTEM文件夹中添加三个文件夹中的.c
在这里插入图片描述

2.3.5添加STM32F1xx_HAL_Driver源码

在Drivers\STM32F1xx_HAL_Driver\Src选择HAL库源码。\Drivers\STM32F1xx_HAL_Driver为只读属性,可右键选择取消只读属性。
在这里插入图片描述

2.4 魔术棒设置

在这里插入图片描述

2.4.1 Target选项卡

选择晶振
在这里插入图片描述

2.4.2 Output选项卡

勾选创建Hex,选择输出文件夹为Output,存放编译文件
在这里插入图片描述

2.4.3 Listing

选择输出文件夹为Output
在这里插入图片描述

2.4.4 c/c++文件夹

全局宏定义逗号为英文。
宏USE_HAL_DRIVER使用头文件
在这里插入图片描述
宏STM32F103xE使用头文件
在这里插入图片描述

在这里插入图片描述
头文件路径添加如下:
在这里插入图片描述

2.4.5 Debug选项卡

右上选择仿真器类型后点击Setting
在这里插入图片描述
下图为STlink仿真设置,需要下载STlink驱动,可选择JTAG或者SW都可以
在这里插入图片描述

2.4.6 Utilities设置

勾选Use Debug Driver后选择Setting
在这里插入图片描述
在Setting中勾选Reset and Run复位后可运行代码,选择512K
在这里插入图片描述

2.5添加Main.c编辑代码

创建新文件后保存至Users文件夹中,然后在工程文件夹中添加main(单击两下User或者点击小盒子添加)
在这里插入图片描述
在这里插入图片描述

2.6 如何链接新的.c和.h文件

1.在DRIVE文件夹中新建BSP,然后创建一个LED文件夹
在这里插入图片描述
2.返回MDK5
CTRL+N 新建.c和.h文保存在TIM6中
3.将.c和.h添加到工程中
点击第二个工程分组
在这里插入图片描述
在Groups中创建BSP分组,点击OK,然后返回工程目录中
在这里插入图片描述
在工程目录中双击BSP文件后在这里插入图片描述
弹出如下,索引到BSP的tim6.c文件后即可书写我们的.c代码在这里插入图片描述
4.设置.h和.c文件固定框架

#ifndef __TIM6_H
#define __TIM6_H
#include "./SYSTEM/sys/sys.h"
/*书写函数声明块*/
#endif
#include "./BSP/TIM6/tim6.h"  

至此,框架已经创建完毕,可以书写代码

3 补充

复制keikill文件,处理Output文件后剩余一个hex
在这里插入图片描述

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值