KEIL软件新建工程示例

很感谢这位博主的分享,参考链接:KEIL软件安装教程
在实践的过程中,会有些不一样,把我遇到的问题也贴出来,谨做记录与参考。

一 在环境中配置相关文件(第一种)

1、新建一个文件夹demo,把芯片的firmware固件库放进去;
在这里插入图片描述

2、新建一个文件夹project放项目所需要的头文件.h放在inc文件夹内和源文件.c放在src。
另新建一个MDK_are文件夹存放整个工程。
在这里插入图片描述
3、打开keil,点击project,建立一个新工程heat。
在这里插入图片描述
在这里插入图片描述
3、会出现如下界面,选择需要的芯片型号(前提是已经安装好keil并且安装所用芯片的pack包)
在这里插入图片描述4、选好芯片后,会出4、现如下界面,开始配置环境;
在这里插入图片描述

5、点击OK后,工程如下:
在这里插入图片描述

以上即可使用,因为manage run-time environment 里已经配置了device 和外设,所以不用在加入外设文件和startup文件。可正常使用。只需要添加所实现功能的文件即可。

2 添加路径的方式(第二种)

以上3条铜山
4、现如下界面 manage run-time environment,开始配置环境;
这里开始不同;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
同理添加启动文件,添加所用的外设。
在这里插入图片描述

添加头文件路径:在c++
在这里插入图片描述
在inc头文件夹内注意添加:相应的 libopt.h ,否则会出现各种错误。
在这里插入图片描述

3 生成.bin文件的方式:

添加bin文件:fromelf --bin -o “$L@L.bin” “#L”

在这里插入图片描述
若依然无法生成.bin文件,多试几次。直到出现.axf文件

在这里插入图片描述

4 出现错误处理

错误1:

出现:Browse information of one or more files is not available:…\Firmware\CMSIS\GD\GD32F3x0\Source\system_gd32f3x0.cDoing a project rebuild might fix this.,按着其它博主提供的方法如下:(但未起作用)
1、打开工程文件所在目录
2、找到*.uvgui.或者*.uvgui_名称的文件,把这些文件全部删除,之后再找到后缀名为.lst的文件,也删除掉,然后重新打开工程进行一次完全编译,就会发现一切都恢复正常了。
3、如果上述步骤还不能解决,那就检查一下.uvproj文件所在目录下有没有*.c或*.h等参与项目编译的代码源文件,如果有,先把项目clean一下,接下来把这些代码源文件移动至其他目录下,移动完成后,在项目中将对应源文件移除重新添加一下,最后项目完全编译一下。*

后经排查,是因为有些引用的源文件为添加进去,于是把所有的外设源文件都加了进去,结果就无错误了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/399144.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IDEA的版本控制Local Changes和settings按钮显示问题

经常用idea的小伙伴应该对标题的这两个功能不陌生,特别是Local Changes 周日刚开工,我的idea就过期了,索性就下载了一个2023.3.3版本的,安装好打开一看,发现Local Changes 和 settings的按钮消失了,虽然说…

我的NPI项目之Android USB 系列(一) - 遥望和USB的相识

和USB应该是老朋友了,从2011年接触Android开发开始,就天天和USB打交道了。那时候还有不 对称扁头的usb/方口的usb,直到如今使用广泛的防反插USB3.0 type-C。 但是,一直有一个不是很清楚的问题萦绕在心头,那就是。先有…

韶音、南卡、Cleer怎么样?2024年主流产品硬核测评对比

​作为一位资深的开放式耳机使用者,我要强调,在选购耳机时应避免仅仅因为某款产品的流行度或是品牌名气而做出选择。适合自己需求的耳机才是最佳之选。我和我的团队经过多次测试,对比了几种市场上热门的开放式耳机,从中总结了我们…

【Algorithms 4】算法(第4版)学习笔记 09 - 3.2 二叉查找树

文章目录 前言参考目录学习笔记1:二叉树与二叉搜索树定义1.1:二叉树定义1.2:二叉搜索树定义1.3:Java定义1.4:BST基本实现1.5:BST demo 演示1.5.1:节点搜索成功命中演示1.5.2:节点搜索…

ElementUI table表格组件实现双击编辑单元格失去焦点还原,支持多单元格

在使用ElementUI table表格组件时有时需要双击单元格显示编辑状态,失去焦点时还原表格显示。 实现思路: 在数据中增加isFocus:false.控制是否显示在table中用cell-dblclick双击方法 先看效果: 上源码:在表格模板中用scope.row…

Nginx缓存相关配置解析

文章目录 前言配置示例proxy_cacheproxy_cache_pathproxy_cache_keyproxy_cache_validproxy_cache_lockproxy_cache_methodsproxy_cache_bypassproxy_no_cacheproxy_cache_min_usesadd_header 可选项 使用示例通过响应头判断是否走缓存 缓存手动删除原博客 前言 客户端需要访问…

10、内网安全-横向移动域控提权NetLogonADCSPACKDC永恒之蓝

用途:个人学习笔记,有所借鉴,欢迎指正! 背景: 主要针对内网主机中的 域控提权漏洞,包含漏洞探针和漏洞复现利用。 1、横向移动-系统漏洞-CVE-2017-0146(ms17-010,永恒之蓝&#xff0…

如何添加或编辑自定义WordPress侧边栏

WordPress侧边栏是许多WordPress网站上的固定装置。它为您的内容提供了一个垂直空间,您可以在其中帮助读者导航、增加电子邮件列表或社交关注、展示广告等。 因为它是许多WordPress网站不可或缺的一部分,所以我们认为侧边栏值得拥有自己的大型指南。在这…

SpringBootWeb学习笔记——12万字详细总结!

0. 写在前面 注:这套笔记是根据黑马程序员B站2023-3-21的视频学习的成果,其中省略了前端基础部分、Maven部分和数据库基础部分,详情可见目录。 注注:目前文章内结尾处多幅图片加载不出来,因为图片还存在本地没被传上来,过段时间再改~ 所有的Spring项目都基于Spring Fra…

3、windows环境下vscode开发c/c++环境配置(二)

前言:上一篇文章写了windows环境下,配置vscode的c/c开发环境,这一篇讲vscode开发c/c的配置文件,包括c_cpp_propertues.json,task.json及launch.json。 一、总体流程 通过c/c插件我们就可以来编写c/c程序了&#xff0c…

网贷大数据查询多了对征信有影响吗?

网贷大数据在日常的金融借贷中起到很重要的风控作用,不少银行已经将大数据检测作为重要的风控环节。很多人在申贷之前都会提前了解自己的大数据信用情况,那网贷大数据查询多了对征信有影响吗?本文带你一起去看看。 首先要说结论:那就是查询网…

面试经典150题——同构字符串

"Dream big and dare to fail." - Norman Vaughan 1. 题目描述 2. 题目分析与解析 2.1 思路一 看见这个题目的第一反应就是使用一个hash表,用来存储映射关系,具体思路如下: 首先二者要是同构的长度肯定是得相同的,但…

Android 多线程并发优化实现

和你一起终身学习,这里是程序员Android 经典好文推荐,通过阅读本文,您将收获以下知识点: 一、Thread 使用二、Android Thread三.线程优先级 一、Thread 使用 在讲解多线程之前,我们先来讲解Thread使用几个需要注意的点&#xff1a…

Unity UGUI的DrawCall优化

Unity UGUI是一种强大的用户界面设计工具,它可以帮助开发者快速创建各种界面元素,从按钮和文本到滑块和面板等。然而,在使用UGUI时,一个常见的性能瓶颈就是DrawCall过多导致的性能下降。在本文中,我们将深入探讨UGUI的…

集成使用 GitHub Copilot 提升 IDEA 开发效率

集成使用 GitHub Copilot 提升 IDEA 开发效率 在现代软件开发中,集成开发环境(IDE)如IntelliJ IDEA已经成为开发人员不可或缺的工具。它们提供了代码编辑、调试、版本控制等一系列功能,极大地提高了开发效率。而GitHub Copilot作…

C# Winfrom实例:武汉智能安检闸机数据接收和解析

项目介绍:本实例主要是接收安检闸机的数据解析并显示到界面上,只做功能实现,不做界面美化 硬件:闸机一个、网线一根、电脑主机开发环境:vs2017 系统:win10涵盖知识点:tcp通讯、文件写入、多线程…

《软件方法(下)》8.2.5.2 属性是否直接描述类(202402更新)(2)

导致出现违反本要点的错误的原因有: (1)缺少抽象能力 缺少抽象能力的建模人员经常会把手上素材的信息,一一对应地映射为类和属性,导致本来属于多个类的信息被合并在一个类中。 如图8-63,建模人员对照着一…

ETL、ELT区别以及如何正确运用

一、 浅谈ETL、ELT ETL与ELT的概念 ETL (Extract, Transform, Load) 是一种数据集成过程,通常用于将数据从一个或多个源系统抽取出来,经过清洗、转换等处理后,加载到目标数据存储中。这种方法适用于需要对数据进行加工和整合后再加载到目标…

Django学习笔记-HTML实现MySQL的图片上传

1.django项目编写index.html代码 创建form表单,路由指向upload,请求方式post,enctype设置"multipart/form-data", post请求添加{% csrf_token %},编写两个input,上传和提交 2.添加upload路由 3.views中创建upload 1).获取上传的文件,没有上传则返回"没有指定…

打码半年,开源一款自定义大屏设计软件!

hi,大家好,我是Tduck马马。 最近我们开源了一款大屏软件-TReport,与大家分享。 TReport是一款基于Vue3技术栈的数据可视化系统,支持静态、动态api等数据源;可用于数据可视化分析、报表分析、海报设计使用。 提供自定…