Keil4/keil5如何新建C51/STM32工程项目(手把手教细节)

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

直入正题

在你正确的安装Keil4或者Keil5后(同时你也安装上要建立工程的芯片包后)请看下图:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

点击Project后

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 点击New uVision Project

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

然后它会要求你将核心工程文件保存在某个地方。

不过,我们别急着随便找个地方就直接保存这个工程文件,因为我们后期的单片机工程越复杂,文件越多,我们越不好去找。因此,我们必须学会建立多个文件夹,根据不同功能和用途来对这整个工程文件进行保存。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 我们将核心文件命名为Temp然后保存即可。

 保存成功后,我们就到了挑选芯片类型的环节:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

(图中Software Packs一栏为你安装的芯片包所属类型) 

我的计算机里安装了两个基础芯片包类型,一个是software Packs(主要是STM32F1、F4系列芯片以及ARM芯片类型),如图所示:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

如果要找51单片机的芯片,需要切换software Packs一栏,如图:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 (具体你想要找的芯片类型在哪里,你需要看自己的具体情况,前提是你安装了含有该芯片的芯片包)

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 (你也可以在Search中输入需要找的芯片型号快速查找)

如果新建的是51单片机工程,那么我们一般找的芯片类型是AT89C51以及AT89C52。(后者是前者的升级版,主要是扩宽了缓存容量以及增加定时器数量,你需要按需求选取,但一般新手学习时一般不用注重这个东西,选哪个都一样)

我们以AT89C51芯片为例:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 出现这个提示时,点“是”即可。

如果你没有上述这个提示,那么很大可能是你在安装keil软件时就缺失了C51的相关库和芯片包,你需要重新检查自己的软件安装时是否正确,或者重新安装C51的芯片包。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

如果你已经正确安装C51包,那么你安装keil软件路径中的C51文件夹底下应该会有这些文件夹,它不可能是空的!并且你需要按下图改配置:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 格式改为:PATH = “keil软件主路径下\C51\”(比如本人图中这种)

 建立完工程后你会看到如下:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

如果你要新建STM32工程文件,前面过程都差不多,以STM32F103RCT6(大学做小车的比较爱用这种芯片)举例,如图:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

(我们选这个STM32F103RC就行,就算换成STM32F103R8T6,它也只显示STM32103R8)

选中后如下,我们之后直接点OK就行:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 建立完成后如下:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

(和C51工程不一样,旁边的Sorce Group 1里没有东西是正常的,但是后期我们必须手动导入必要核心驱动文件和函数方法文件,这个和C51工程略有差别,但是不用担心,我下面都会讲)

 

 到这里基本上我们就建立完工程了,但没有任何可以开始编程的文件,接下来开始新建可供编程的文件吧。(最好对C语言有一定基础,这样便于理解)

正式新建可以编程的文件

我们继续以C51工程为例,首先我们需要点击这个图标

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

看见以下界面,我们点击C51这一栏

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

之后我们要在Include Paths里选择C51核心文件的所在地,不然我们无法引用头文件,也就无法进行下次的编译(这个需要每次建立新工程时进行设置) 如图:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

下面的设置是额外需要自己手动配置的,STM32工程中也可以设置 

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发 之后点击OK即可。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

我们点击上面的这个图标新建空白文件

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

之后我们点击保存图标keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发 ,或者Ctrl+S快捷键来保存这个文件

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

由于C51的工程文件一般比较简单,所以我们直接对其命名,然后保存在这个默认路径即可(除非你的C51工程文件比较复杂,那么笔者建议在这个路径下新建一个专门保存编译文件的文件夹用于保存) 如下:

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 保存后就可以进行编译了。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

我们来测试一下,我写了个单片机流水灯程序:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

include <reg52.h>

typedef unsigned int u16;
typedef unsigned char u8;

sbit led = P2^0:

void delay(u16 i)
{
    while(i--) ;
    void main(void)i
    while(1)
    {
        led = 0;
        delay(50000) :
        led = 1:
        delay(50000) ;
    }
}

点击编译图标keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发 (前者是编译当前这个文件,后者是编译全部的文件)

 编译后如下:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 这里看见没有错误,但是有警告。一般情况下,是没有错误和任何警告的,在实际编译过程中,我们要尽可能往无错误无警告的方向靠近,这是良好的编译习惯。(虽然一般情况下,即使它有部分警告但是不影响最终编译)

在上述警告中,我们可以看到L1行和L2行说了“没有解决外部的问题”,发生了什么呢?

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 我们前面其实忽略了一个十分重要的步骤,那就是将这个main.c加入我们的编译组中!

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 于是我们接下来应该添加我们的编译文件加入编译组。

方式一:

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 方式二:

点开这个图标keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 点击Add Files...

然后按上面相似的步骤添加文件即可,添加完成后如下:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 点击OK后,main.c就会出现在旁边。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

C51的工程文件就正式建立完成了!编译后无任何错误。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

我们接下来以STM32工程为例:

 STM32工程的创建比较复杂,我们这里用到STM32的标准库开发方法来进行工程创建。这个需要自己去下载(比如正点原子的STM32标准库),这个Keil中是不会配备给你的(我这里已经有了)keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

我们使用标准库或者HAL库(HAL库会有更强大的函数方法供我们使用)的目的就在于前期降低开发难度(特别是要参加嵌入式比赛或者电赛的大学生同学),很多STM32上的器件对应的函数方法就会在这些库中,我们只要懂如何调用它们就可以,而不需要自己从底层开始学习和开发。

我们先来导入标准库(函数方法库)到指定文件夹!

在我们保存的STM32工程文件的路径Object以外,我们再新建几个新文件夹:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

这些文件夹的作用如下:

CORE:STM32最核心部分,用于存放给STM32单片机初始化的核心文件

STM32F10x_FWLib:里面还含有src和inc两个文件夹,但是作用是存放stm32单片机的所有函数方法,这些函数方法来自于你提前准备好的stm32标准库源文件包。(一会会介绍)

SYSTEM:用于存放你自己写的函数方法,而且一般是功能性的函数方法(你可以不用这个文件夹,自己写的函数方法放在User文件夹里,这都是自由的)

User:用于存放main.c以及其他自定义函数方法

以上文件夹的命名都不是强制性的,自己喜欢可以自己重命名。(重点在于STM32工程一般文件较多,要养成分类的习惯)

我们接下来先将STM32源文件包的其中一部分导入到我们的STM32F10x_FWLib文件夹中

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

接下来我们导入CORE文件夹的东西(它包含着STM32芯片的核心初始化文件)

在源文件包中我们找到这个文件夹:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

接下来我们继续找到这个路径:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

将stm32f10x.h、system_stm32f10x.c、system_stm32f10x.h这三个头文件拷贝至User文件夹中(这三个头文件是最主要的stm32头文件)

继续打开startup文件夹,然后你会看到以下几个文件夹:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 这几个文件夹中含有stm32不同内存大小芯片的“启动文件”。不同缓存大小的stm32芯片型号所对应的启动文件是唯一的。以STM32RCT6为例,它对应的启动文件应该是:startup_stm32f10x_hd.s,如果我们改成startup_stm32f10x_md.s或者其他就会出现如下的情况:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 我们打开arm文件夹将对应的启动文件复制到CORE文件夹即可。(其他文件夹和不同缓存大小的芯片对应的启动文件需要你自己查证清楚后选择)

复制完启动文件后我们还需要对其进行设置,如下:

点击keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发,然后点击到C/C++一栏,看到Preprocessor Symbols的Define一栏,填入这行文字:“STM32F10X_HD,USE_STDPERIPH_DRIVER”。USE_STDPERIPH_DRIVER逗号前的文字即为启动文件的名称(全大写)。

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 最后CORE文件夹存在以下文件即可:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 最后User文件夹存在以下几个主要文件即可:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 最后STM32F10x_FWLib文件夹存在以下文件夹即可:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

接下来我们要将上述函数文件夹在Keil中进行设置,让Keil能找到这些文件,不然它就无法进行引用和编译。

还是点击这个图标keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发,然后还是在C/C++一栏,找到Include Paths(包含路径)这一栏,点击后面的省略号“...”图标,将我们刚刚复制文件的那几个文件夹路径全部添加进去:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 (添加完后如上,每当你新建了文件夹用于存放函数方法并且你想要引用它时,你就必须再添加这个新建文件夹对应的路径一次)

 对编译文件组进行设置(同上面51单片机的编译组添加方法一致)

添加前:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

添加后:

keil5新建stm32工程,stm32,嵌入式硬件,单片机,51单片机,个人开发,arm开发

 再添加main.c函数并将它添加进User函数组和对应文件夹即可(这里不再演示)

然后一个STM32工程文件就创建完成了。

到此,Keli创建51单片机/STM32单片机工程的教程就结束了,撒花完结!文章来源地址https://www.toymoban.com/news/detail-709351.html

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

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

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

相关文章

  • Keil5同时兼容C51与STM32工程

    第一步: 下载并安装keil4(C51),详细安装步骤参考网上,这里就不啰嗦了。keil4安装目录内容如下: 第二步: 安装kelil5(mdk514),不要和keil4安装在同一个文件夹,安装过程不罗嗦了。keil5安装目录内容如下: 第三步: 最关键的一步,打开keli4的安装路径,复制整个C51文件夹

    2024年02月14日
    浏览(64)
  • Keil5的安装教程,STM32与C51共存

    文章目录 概要 整体安装流程 C51和STM32共存 总结         很多人在装Keil5的时候遇到STM32和C51的共存装好后不适用,或者是其他大大小小的bug。本人历经磨练,刚开始踩了十来次的坑,几乎是把坑全踩了一遍,也帮很多人装过keil5的共存。因为个人原因,在帮朋友装的过程

    2024年02月06日
    浏览(49)
  • Keil5软件安装方法(兼容stm32与c51方法)

    目录 一、下载软件包 二、安装软件 1、安装C51v960a.exe (1)右键以管理员权限运行程序  (2)开始安装软件  (3)勾选协议 (4)选择安装路径  (5)填写名字与邮箱  (6)等待安装 (7)安装完毕  (8)以管理员打开软件 (9)打开注册机 (10)破解成功 2、安装mdk528.exe

    2023年04月24日
    浏览(44)
  • Keil5新建51单片机demo工程模板

    51单片机新建工程使用到的软件有keil5,首先安装好keil5软件,安装教程在:【Keil(C51)介绍、下载、安装、注册与2个补丁】Keil(C51)介绍、下载、安装与2个补丁_西晋的no1的博客-CSDN博客 一个单片机工程中会有很多个文件,因此新建工程时首先在电脑的某个路径下新建一个文

    2024年02月16日
    浏览(74)
  • Keil5同时兼容C51和stm32的方法(win11实测有效)

           相信有很多人在学习C51单片机之后,再学习stm32都会发现Keil无法兼容,这给我们的学习带来了很大的麻烦,今天给大家带来我当时尝试了很多次后找到的好方法,win11系统亲测有效,并附上下载包。 目录 一、安装C51v954 二、安装MDK528 三、兼容C51和stm32  四、破解Keil

    2024年02月10日
    浏览(55)
  • keil5下载安装教程(附带兼容keil4方法)

          为了方便stm32和C51学习,我收集资料整理了keil5的安装教程,同时附带兼容keil4程序的方法,避免大家在使用C51的时候再去安装keil4这个麻烦的过程。 目录 一、可兼容keil4的keil5版本查询 二、keil5安装包官网下载 三、keil5安装过程。 四、破解keil5。 五、下载所用单片机支

    2024年01月23日
    浏览(53)
  • 【32】STM32F103在Keil4软件下开发环境的建立

    目录 一、下载STM32F10x 固件库下载 二、对所需的库文件分类存放 三、配置Keil4开发环境 STM32 固件库 STM32 Standard Peripheral Libraries,适用于STM32F1系列 STM32 的固件库是芯片官方给出的用于新建STM32工程与相关的库文件,示例程序的文件包。 STM32F103的固件库可以去STM官网下载 https

    2024年02月04日
    浏览(65)
  • Clion + Keil5 写stm32

    最近在学 stm32,使用 Kei5 写代码十分难受,代码提示差,看源码复杂,甚至括号匹配都没有。就想着 JetBrains 家的东西能不能用,就找的了稚晖君的《配置CLion用于STM32开发【优雅の嵌入式开发】》,配置之后又想用 stm32 的原生库不想用HAL库,因为跟着江协科技学起来方便。折

    2024年02月05日
    浏览(69)
  • Keil5 开发 STM32 工程创建

    打开Keil5软件,点Project菜单的的下来选项New uVision Project…,然后选择工程文件夹放置的目录,新建项目目录,如:LED闪烁 点击OK后,会弹出配置运行时环境的选项框,关闭即可,该方法使用手动配置。 完成后,如下图: 打开项目目录,分别创建3个文件夹:Library, Start, User,

    2024年02月16日
    浏览(95)
  • keil5mdk5.38安装及32和51安装

    首先按下面文章操作 参考文章: http://t.csdn.cn/a6Cn0 http://t.csdn.cn/a6Cn0 因为从5.37版本开始,安装包默认没有AC5,而之前工程是用AC5编译的,并且一些库用的版本比较低,这时登入会警告 Keil: waring:Registered ARM Compiler Version not found in path:‘ARMCC’!  按照参考文章里博主的步骤就

    2024年02月07日
    浏览(64)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包