学习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区的子类别.

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

相关推荐
国科安芯7 小时前
高轨航天器抗辐照MCU选型约束分析
单片机·嵌入式硬件·性能优化·机器人·安全性测试
知识分享小能手7 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的人工智能—— 知识点详解 (25)
人工智能·学习·ubuntu
崇山峻岭之间7 小时前
Matlab学习记录32
开发语言·学习·matlab
CS Beginner7 小时前
【单片机】嵌入式显示屏开发框架:QT、SDL、LVGL 深度解析
单片机·嵌入式硬件·qt
乌暮7 小时前
JavaEE初阶---《JUC 并发编程完全指南:组件用法、原理剖析与面试应答》
java·开发语言·后端·学习·面试·java-ee
CCPC不拿奖不改名7 小时前
计算机网络:电脑访问网站的完整流程详解+面试习题
开发语言·python·学习·计算机网络·面试·职场和发展
左绍骏7 小时前
01.学习预备
android·java·学习
YouEmbedded7 小时前
解码从架构到嵌套向量中断控制器(NVIC)
stm32·软件架构·mcu中断·exti外设·启动文件分析
非凡ghost7 小时前
ImageConverter(图像转换编辑工具)
图像处理·人工智能·windows·学习·计算机视觉·软件需求
@zulnger7 小时前
python 学习笔记(闭包)
笔记·python·学习