嵌入式:Keil uvision5环境下创建一个工程模板(步骤超详细)

1、创建一个空的文件夹,命名为“test”(可以为任何名字)

2、打开test文件夹,在该目录下依次创建两个空文件夹app(用来存放用用到的文件的驱动。)和 user(存放main函数和中断函数。)

3、打开stm32文件(在链接中下载),将stm32 文件夹中的Libraries文件夹整体复制到test文件夹的目录下面。

stm32的文件目录

test文件的目录

4、进入stm32的Project\STM32F10x_StdPeriph_Template\的文件夹中,然后将以下4个文件复制,粘贴到test文件夹的user文件夹中。

Project\STM32F10x_StdPeriph_Template目录

test/user目录

5、打开Keil5 软件。在菜单栏找到Project选项,单击,在展开的菜单中单击New uvision Project选项,把刚刚创建的物理工程文件与逻辑工程建立联系。在电脑中找到test文件夹的位置,打开即可,然后给工程设置一个工程名:test3.2。然后点击保存。如下:

6、在弹出的菜单中按照下图的步骤找到STM32F103ZE,然后选中,点击OK按钮。

在STMicroelectronics下(点击左侧+号打开)找到 STM32F103

点击STM32F103左侧加号打开,在其中找到STM32F103ZE

7、点击OK后,会弹出一个框,继续点击OK按钮。

8、此时项目中没有文件,要为这个项目添加刚刚已经建立好的文件。即为文件建立逻辑和物理的对应关系。点击箭头指向的地方。

9、在点击工程管理按钮后,会弹出弹框。在Project Items 下的中间一列建立逻辑文件夹

单击第一个按钮,依次建立app、user、cmsis、stdperiph四个文件夹。

10、依次选中user、cmsis、stdperiph这三个文件夹,每选一个文件夹,点击Add Files按钮,为该文件夹添加文件。

10.1、user文件夹的文件在user文件下,两个文件全选中添加

10.2、给cmsis文件夹添加后缀为_hd.s的文件,按照Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm路径打开arm文件夹。注意在arm文件夹下选择All files才能看到。

找到startup_stm32f10x_hd.s后选中加入。

给cmsis文件夹添加名为core_cm3.c的寄存器映射文件,按照Libraries\CMSIS\CM3\CoreSupport打开CoreSupport文件夹,将该文件加入。

给cmsis文件夹添加名为core_cm3.c的时钟系统配置文件,按照Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x打开STM32F10x文件夹,将该文件加入。

最后给cmsis文件添加的3个文件如下。

10.3、为stdperiph文件夹添加文件。按照Libraries\STM32F10x_StdPeriph_Driver\src路径找到src文件夹代开,然后Ctrl+A,全选加入。

加入后效果。

11、点击OK,添加完毕。接着为项目添加头文件。点击工程配置按钮。

12、在弹出的页面选择Output 选项卡,在Create HEX File 前的方框点击选上。用于生成16进制文件。

13、在c/c++选项卡的define框中输入两个宏定义USE_STDPERIPH_DRIVER STM32F10X_HD(可直接复制)。

在Include Path框中点右侧的按钮,添加头文件路径。



14、至此完成了文件和头文件路径的添加。此时点击OK后,项目中就有了文件。

打开main.c文件,将其中内容全部删除。输入外设的头文件,写一个空的main()函数测试。然后换行,不然编译会报错。

15、对文件进行编译。

出现如下结果,编译成功。至此项目创建成功。

16、设置软件调试。点击工程配置按钮。在弹出的框中找到Debug选项卡。进行如下设置。


左边:
Dialog DLL框中输入: DARMSTM.DLL
Parameter框中输入: -pSTM32F10ZE
右边:
Dialog DLL框中输入: TARMSTM.DLL
Parameter框中输入: -pSTM32F10ZE

至此,所有工作均已完成!

嵌入式:Keil uvision5环境下创建一个工程模板(步骤超详细)相关推荐

  1. Mac环境下创建一个cocos2dx项目

    随着移动端应用页面越来越酷炫,如今在移动端上集成游戏引擎已经变得很常见,类似cocos2dx.Unity3D等都是不错的选择.这里简单介绍一下Mac上创建一个集成cocos2dx的项目. 1.从官网( ...

  2. idea创建javaweb项目步骤超详细(2022最新版本)

    目录 前言必读 一.新建文件 1.在idea里面点击文件-新建-项目 2.新建项目-更改名称为自己想要的项目名称-创建 3.右键自己建立的项目-添加框架支持(英文版是Add Framework Sup ...

  3. Keil环境下完成一个基于STM32汇编程序的编写

    本文内容:\color{red}{本文内容:}本文内容: 1)记录build生成的 hex文件各段的大小,了解Hex文件格式及其前8个字节内容含义: 2)学习在没有硬件条件下进行仿真调试的方法,观察A ...

  4. 11gR2RAC环境DBCA创建一个数据库错误ORA-15055 ORA-15001

    11gR2RAC环境DBCA创建一个数据库错误ORA-15055 ORA-15001 象: 在11gR2 GridInfrastructure和Database软件安装完毕之后,运行DBCA创建数据库 ...

  5. linux环境下创建MyOS虚拟机

    为什么80%的码农都做不了架构师?>>>    操作系统课的老师参考于渊的作法,要求我们做一个简单操作系统的实验,老师的实验指导是在winXP环境下完成的,但由于我现在已经将ubun ...

  6. linux环境生成weblogic密钥,Linux环境下创建weblogic服务.doc

    Linux环境下创建weblogic服务 weblogic用户登录10.218.0.25. 执行一下命令 cd /bea/weblogic92/common/bin ./config.sh 选择创建一 ...

  7. .NET 容器环境下创建应用 dump 文件

    .NET 容器环境下创建应用 dump 文件 Intro 有时候我们的应用会出现一些异常的情况,比如内存飙升,线程死锁等等,通过一些 metrics 我们可能大概的了解内存是增长了,但是具体是哪里增长 ...

  8. win7环境下创建超级隐藏账户

    在win7环境下,系统安全得到了加强,今天来看看怎样在win7环境下新建一个超级隐藏用户. 首先,我们需要新建一个普通的账户. 在win7中我们使用net  user  添加或者删除账户都是被拒绝的. ...

  9. ROS 教程之 navigation :在 catkin 环境下创建costmap layer plugin

    在做机器人导航的时候,肯定见到过global_costmap和local_costmap.global_costmap是为了全局路径规划服务的,如从这个房间到那个房间该怎么走.local_costma ...

最新文章

  1. spec 2016使用
  2. Android仿QQ列表滑动弹出按钮、长按提示、刷新列表
  3. JAVA NIO知识点总结(2)——直接缓冲区和非直接缓冲区
  4. 工业以太网交换机与以太网光端机的区别
  5. 第27课 老狼老狼几点钟 《小学生C++趣味编程》
  6. java基础知识点(5)——分支语句if-switch
  7. linux部署python web项目 详细_linux下nginx+python+uwsgi部署总结(django+web.py)
  8. Dubbo面试18问!这些你都会吗?
  9. Android 硬编码
  10. ubuntu etc文件夹在哪_嵌入式Linux开发学习之 Ubuntu 和 Windows 文件互传
  11. 期货期权希腊字母与场景模拟
  12. 三只松鼠3次方新品魅力何在?
  13. 电脑文件剪切拷贝后丢失如何找回?分享文件丢失恢复办法!
  14. 互联网安全初创企业Cylance获 1 亿美元融资
  15. 2012清明北京---泰山踏青
  16. 自定义View-波浪动效
  17. 微软黑科技:DNA存储技术催生方糖大小的数据中心
  18. VCam 虚拟摄像头 V3.1.0 下载 - 天空软件站 - 聊天工具 - 联络聊天
  19. java中日期加上特定的天数或者时间
  20. XSS Challenges/刷题/Stage #6

热门文章

  1. 四旋翼无人机学习第4节--STM32、MPU9250等器件的绘制
  2. 篮球数据API接口 - 【篮球文字直播】API调用示例代码
  3. html table文字竖,表格里的文字怎么竖排
  4. 复合函数求导法则及其应用
  5. 计算机网络中的节点有转接节点和传输节点,计算机网络技术复习材料带答案全套...
  6. 42岁大龄程序员的看法
  7. 基于51单片机的数字频率计设计
  8. 如何修改docker镜像名称?
  9. 数字联接新动能 | 专访亿联IT总监赖志豪:AI是亿联未来数字化建设的方向
  10. matlab中的addemup是什么,毕业论文-rsa密码体制的设计及matlab语言下的实现