STM32新建工程详细教程

这篇具有很好参考价值的文章主要介绍了STM32新建工程详细教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

链接: https://pan.baidu.com/s/1JtjKg_jeo7U2irD4hLd_bg?pwd=45cw 提取码: 45cw 

STM32的开发方式

目前stm32的开发方式主要有基于寄存器的方式、基于标准库的方式(库函数的方式)、基于HAL库的方式。

基于库函数的方式是使用ST官方提供的封装好的函数,通过调用这些函数来间接地配置寄存器。

基于HAL库的方式可以用图形化界面快速配置STM32,但这种方式隐藏了底层逻辑。

库函数文件夹

使用库函数的方式,需要准备一个STM32库函数的压缩包,如下:

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

库函数文件夹里的内容解释如下:

Libraries里面就是库函数的文件,之后建工程会用到

project里是官方提供的工程示例和模版,使用库函数可以参考一下

Utilities是stm32官方评估板的相关例程,这个评估板是官方用STM32做的一个小电路板用来测评stm32的,这个文件夹存的就是这个小电路板的测评程序

最后面两个文件,一个是库函数的发布文档(有一些版本的说明),一个是使用手册(教如何使用库函数)

建工程步骤

1.给工程起一个通用的名字,文件夹的名称是方便改的,工程名称不太方便

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

2.接下来选择器件型号,使用的是stm32f103c8t6

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

3.这里弹出的是新建工程小助手,可以帮助快速新建工程

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

4.工程文件是空的,现在这个工程还不能用,需要添加一点工程的必要文件。

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

5.打开固件库的文件夹

启动文件的文件路径:Libraries-CMSIS-CM3-DeviceSupport-ST-STM32F10x-startup-arm-

如下就是STM32的启动文件,STM32的程序就是从启动文件开始执行的。

将全部启动文件全部复制下来,然后回到工程文件夹里

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

工程文件夹如下,里面是新建工程自动生成的文件

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

工程文件夹里,新建文件夹(start)用来存放复制过来的启动文件

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

接着回到固件库的STM32F10x文件,可以看到stm32f10x.h和两个system开头的文件system_stm32f10x.c和system_stm32f10x.h文件,将这三个文件复制下来,也粘贴到Start文件夹下。

stm32f10x.h是STM32的外设寄存器描述文件,作用和51单片机的头文件REGX52.H一样,是用来描述stm32有哪些寄存器和它对应的地址的

两个system文件是用来配置时钟的,stm32主频72MHz,就是system文件里的函数配置的

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

接下来,因为stm32是内核和内核外围的设备组成的,而且这个内核的寄存器描述文件和外围设备的描述文件不在一起,所以还需要添加一个内核寄存器的描述文件。打开固件库文件夹下的 CM3-CoreSupport- 文件夹,这两个cm3(Cortex-M3)文件就是内核的寄存器描述,当然还有一些内核的配置函数,所以多了个.c文件。将两个cm3文件复制粘贴到工程文件夹的Start文件夹下。

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

到此为止,工程的必要文件就复制完成了。

然后回到keil软件,将刚才复制的文件(start)添加到工程里。

点击选中Source Group 1,然后再点击一下,把这个组改一下名字,也叫Start

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

接着右键,选择添加已经存在的文件到组里

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

打开start文件节,把下面这个文件过滤器,选择ALL files,这样就可以看到文件节里的所有文件了

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

 首先添加一下启动文件,启动文件有很多分类,我们只能添加其中一个,我们所用型号需要选择这个后缀为md.s得启动文件(为什么选择这个启动文件,在后面 “新建工程里的启动文件选择” 这个章节解释),选中它点击Add

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

然后剩下的.c和.h文件都要添加进来,然后Close,这样我们的Start文件夹里面的文件就添加好了

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

添加完就是这样哈

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

最后我们需要在工程选项里添加上这个文件夹的头文件路径,要不然软件是找不到.h文件的。

点击魔术棒按钮,打开工程选项,在c/c++里,找到这个Include Paths栏,然后点击右边的三个点的按钮,然后再点击新建路径,然后再点三个点的按钮,把start的路径添加进来,点击ok,就把这个文件夹的头文件路径添加进来了。

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

接下来我们再新建一个main函数,看看工程是否可行。

打开工程文件夹,新建一个文件夹(user),main函数就放在这个文件夹里。

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

在keil中,在Target点击右键,点击添加组,命名为User

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

然后在user右键,点击添加新文件,选择c文件,名字为main。路径需要注意为User文件夹,要不然默认是放在文件夹外面的,这样我们就有了main.c文件了。

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

在main.c里,右键,插入头文件,选择stm32f10x.h

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

写一个main函数,点击build按钮,编译并建立工程。目前工程还没有添加stm32的库函数,所以还是基于寄存器开发的工程。

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

点击扳手,选择utf-8,避免中文乱摸,tab缩进为4比较舒服

STM32新建工程详细教程,STM32,stm32,嵌入式硬件,单片机

以上就是新建工程的全部内容了。文章来源地址https://www.toymoban.com/news/detail-805534.html

到了这里,关于STM32新建工程详细教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 通信工程毕设 Stm32单片机的音乐播放器设计 - 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月19日
    浏览(40)
  • 通信工程毕设 stm32智能运动计步系统 - 物联网 嵌入式 单片机

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月21日
    浏览(49)
  • 正点原子STM32嵌入式学习-keil5安装教程

    前言:本人没有什么嵌入式的经验,但是看到硬件的同事做开发板比较好玩,比较感兴趣。刚好有这样一个机会,可以跟随《原子教你玩STM32(库函数版)》课程线下学习,在此,将本次课程的学习做一个记录。相信对我这样一个小白来说,帮助还是会非常大的。 目录 一.下

    2024年03月10日
    浏览(56)
  • 通信工程毕设 基于Stm32的便携体测仪(心率 体温) - 单片机 嵌入式 物联网

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(42)
  • STM32新建工程详细教程

    链接: https://pan.baidu.com/s/1JtjKg_jeo7U2irD4hLd_bg?pwd=45cw 提取码: 45cw  STM32的开发方式 目前stm32的开发方式主要有基于寄存器的方式、基于标准库的方式(库函数的方式)、基于HAL库的方式。 基于库函数的方式是使用ST官方提供的封装好的函数,通过调用这些函数来间接地配置寄存器

    2024年01月19日
    浏览(36)
  • 通信工程毕设 单片机自动写字机器人设计与实现 - 物联网 嵌入式 stm32

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年01月15日
    浏览(52)
  • 【十年开发积累】STM32产品开发代码案例合集,嵌入式物联网工程师珍贵资料(物联技术666)

    简介     例程涵盖:STM32各类功能配置,外围传感器初始化,模块初始化,物联网协议,操作系统移植,功能开发,产品案例等等,十分具有参考价值。 0001基于STM32F103单片机GPIO实现控制LED灯闪烁的程序代码0001.rar 0002基于STM32F103单片机GPIO实现按键KEY的检测程序代码0002.rar

    2024年02月21日
    浏览(37)
  • 基于ubuntu的STM32嵌入式软件开发(四)——应用软件工程的修改、Makefile及编译脚本的编写

            本文主要介绍基于标准库函数移植的STM32的应用软件工程的修改,主要涉及到文件内容修改、Makefile文件编写、编译脚本编写等内容,其中编译脚本是基于arm-none-eabi-gcc的交叉编译器撰写的。程序亲测可以正常编译,生成.bin和.hex的可烧录镜像文件。 1.首先修改 pr

    2023年04月15日
    浏览(37)
  • 【毕业设计教程】单片机发送短信消息(GMS模块) - 物联网 嵌入式 stm32

    Hi,大家好,这里是丹成学长,今天向大家介绍如何使用GMS模块,达到单片机发送短信的效果,应用场景非常广泛 ** 单片机发送短信消息(GMS模块)** 大家可用于 课程设计 或 毕业设计 单片机-嵌入式毕设选题大全及项目分享: https://blog.csdn.net/m0_71572576/article/details/125409052 GS

    2024年02月02日
    浏览(43)
  • 通信工程毕设 Stm32 WIFI智能家居温湿度和烟雾检测系统 - 单片机 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月02日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包