学习Stm32 的第一天

第一:首先就是关于软件的安装

32的软件是keil MDK,并不是之前的Keil C51 ,然后关于后面激活的那些东西网上找就好了。

第二:软件的配置

首先要将支持包安装,不然在创建项目的时选不到芯片。

Keil5 MDK\支持包 ,其中的F1系列(以后是什么就是那个系列)

随后双击安装即可。然后这是离线安装,也可以在线安装,这里就要先不讲述了。

最后就是STLink驱动,在安装目录keil\ARM\STLink\USBDriver中有

是哪个系统选哪个就可以了。其他驱动直接在设备管理器里看有感叹号的地方,点击他会提示你安装。

第三:创建项目以及导入标准库函数

1.先创建好自己的文件夹,然后进入Keil中创建新的项目

随后在创建一个文件夹以存放本次的代码(名字随意即可)。

芯片型号选择STM中的STM32F103C8

添加必要文件

1.起动文件(stm32就是从启动文件开始执行的),固件库->STM32F10x_StdPeriph_Lib_V3.5.0->Libraries->CMSIS->CM3->DeviceSupport->ST->STM32F10x->startup->arm

上面的是文件的路径

然后把上面这些文件都复制下来。之前创建的项目文件夹里面已经自动生成一些东西了

在之前创建的项目文件夹创建一个Start文件夹,用于存放启动文件。然后还需要在其中放入外设寄存器描述文件(和51单片机的头文件性质一样)和内核寄存器描述文件。分别在之前的STM32F10x中的

和CM3下的CoreSupport文件夹里面

将上述的文件全部复制在statr文件夹中,启动文件就配置完成了。

最后将它复制在工程中就大功告成了。

在Keil中新建组,在把名字改成Start

再右键start导入已存在的文件(刚才start中的文件中的所有.c .h文件和startup_stm32f10x_md.s文件导入即可)

然后打开工程选项(魔术棒)->C/C++选项中include paths,把start的路径加进来

注:选择路径时一定要点进start文件夹里面一层去。

然后按照刚才的步骤新建一个User文件夹,里面放入mian.c文件

再将调试工程里面的Debug中的Use改为ST-Link Debugger。

随后添加库函数

先创建一个Library文件夹用来存放,在固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\src中全部复制过去

以及inc文件夹中的头文件也全部复制过来

随后在keil中添加Library以及其中的文件

最后还需要将三个文件加入User文件夹中,就是 固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template中的

图中的三个文件弄在工程中即可。

最后还差一个宏定义,先鼠标右键导入头文件

随后右键头文件打开

最底部8296行 USE_STDPERIPH_DRIVER 这一句

加在调试工程中的C/C++中Define这一行

最后还是将路径加入即可

这个小箱子的按钮可以移动目录的位置

我们可以将不用改的移动到最上方,这样比较好操作。

至此,stm32的标准库函数以及项目的创建完毕

注:main函数的最后一行必须留空(注释也不能有),否则调试会有一个警告。

这里就是以上全部内容了,视频是看的B站上江科大的(江协科技),资料也是它提供的,地址是:资料下载

Keil中的函数注释含义:

@brief <title>: 简要注释. 指该函数的简要介绍。

@param <name> <description>: 参数描述.

@retval <description>: 返回值描述.

@exception <name> <description>: 异常描述.

@see <name>: 参见. 具体用法详见 1.5.2

@see、@sa(参见) .@warning <text>: 警告.

@bug <text>: 警告.@name <title>: 组名. 用于给成员们分组, 既文档中Tasks区的子类别.

最后,如果你觉得这期对你有用,点个赞吧

相关推荐
没头脑的男大12 分钟前
jupyter notebook继续学习
ide·学习·jupyter
charlie11451419114 分钟前
精读 C++20 设计模式:行为型设计模式 — 状态机模式
c++·学习·设计模式·状态模式·c++20
客官、打尖还是住店40 分钟前
STM32简介
stm32·单片机·嵌入式硬件
雨落在了我的手上44 分钟前
C语言入门(七):写一个关机程序、随机函数的基本认识
c语言·学习
GilgameshJSS1 小时前
STM32H743-ARM例程13-SDIO
c语言·arm开发·stm32·嵌入式硬件·学习
机器视觉知识推荐、就业指导1 小时前
STM32 外设驱动模块:DHT11温湿度传感器模块
stm32·单片机·嵌入式硬件
GilgameshJSS1 小时前
STM32H743-ARM例程8-EXTI外部中断
c语言·arm开发·stm32·单片机·嵌入式硬件·学习
月盈缺1 小时前
学习嵌入式的第四十三天——ARM——I2C
arm开发·学习
charlie1145141912 小时前
精读 C++20 设计模式:行为型设计模式——观察者模式
c++·学习·观察者模式·设计模式·程序设计·c++20
lingzhilab2 小时前
零知IDE——STM32F407VET6与GP2Y1014AU的粉尘监测系统实现
stm32·单片机·嵌入式硬件