0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Keil 一些常见文件类型的作用和功能说明

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-03-20 11:23 次阅读

看着一大堆文件舒服吗?

相信大部分朋友看见过类似上图“凌乱”的现象。工程文件和编译过程文件杂乱放在一起,其实只有.uvoptx和.uvprojx这两个比较重要,其他大部分都不重要。

微主我习惯在工程文件中放一个“删除编译产生垃圾文件.bat”文件,在最后源代码存档时删除编译过程产生的文件。

写在前面 1

本文说的“文件类型”指的是像.uvoptx、 .uvprojx、 .hex、 .map、 .axf、.ini、.c、.h···等一些后缀不同的文件,他们各自的作用和功能。

有时打开从其他地方获取的源文件,发现除了工程文件“.uvprojx”之外还有很大杂七杂八的文件,如:.crf、.d、.o···等一些让人看了都“烦躁”的源文件。

其实有很多文件都是在建立工程及编译之后产生的“中间文件”,对于我们来说,并不需要保存,只是在编译调试的过程中需要使用到。

当我们需要使用保存一个工程及相关源代码时,就需要把有些不必要的中间文件删除掉。于是,我们就需要知道这些文件的意思,哪些文件可以删除,哪些不能删除。

我们使用Go to Definition Of使用到的文件为.crf文件,有时候Go to Definition Of不能使用(或按F12不起作用),有可能就是相关的.crf文件被删除了,或者没有。

在线调试的时候,不能跟踪调试,很有可能是没有调试类型文件。

Keil中使用到的文件类型? 2

大体可以分为7类:

1、Project Files工程类型文件;

2、Source Files源代码类型文件;

3、Listing Files链接类型文件;

4、Object and HEX Files目标和Hex类型文件;

5、Build Files编译类型文件;

6、Debugger Files调试类型文件;

7、Other Files其他类型文件。

下面章节会将常见的一些文件类型做详细说明。

Project Files工程类型文件 3

工程类型文件是比较重要的,一般不能删除。删除之后有可能打不开软件工程,所以,不能轻易删除这一类文件。

.uvmpw:多工程(工作空间)文件;

.uvprojx:工程文件(Keil V5)

.uvproj:工程文件(Keil V4)

.uvoptx:工程选项配置文件(Keil V5)

.uvopt:工程选项配置文件(Keil V4)

.uv2:工程文件(Keil V3)

Source Files源代码类型文件 4

这一类源文件,我想,应该不用多说。主要就是源文件和头文件,大体上有如下一些类型:

.c、 .h、 .cpp、 .inc、 .a51、 .s、 .a66、 .src等。

Listing Files链接类型文件 5

Project -> Options for Target -> Listing,如图:

这类文件的输出就在上图的地方配置,需要输出就勾选上。常见文件类型有如下几种:

.map:MAP文件就是存储镜像文件,这个文件非常重要。当代码出现异常,对分析代码非常有帮助,我打算后面专门写一篇文章来讲述这个文件。

.i:C语言处理器输出文件;

.lst:C编译器或汇编程序生成的文件;

.cod:包括混合C和汇编代码的完整的程序清单文件;

Object and HEX Files目标和Hex类型文件 6

Project -> Options for Target -> Output,如图:

这一类文件比较重要,调试信息、预览信息、可执行文件等都在这里面。

.hex:可执行文件(和.bin类似 用于下载芯片的程序文件);

.axf:包含调试信息的程序文件,有时候我们在调试时出现错误,可能是axf没有文件;

.d:编译生成的依赖文件,一般一个.c文件对应一个.d文件;

.o:也是目标的依赖文件(重定位定址的依赖文件);

.lib:库文件,生成库就在这里;

.elf:ELF/DWARF链接的文件;

.crf:浏览信息文件,在文章开头说了,使用Go to Definition Of功能,就需要有这类文件。

剩下一些类型文件 7

Build Files编译类型文件:

这一类文件重点提一下“bat批处理文件”,也就是说在编译的时候,可以配合bat文件一起编译。Bat文件主要就是一些命令,如拷贝、新建等。

Debugger Files调试类型文件:

.ini:调试加载类文件。就是在调试时加载的文件:

Other Files其他类型文件:

.pack:支持包文件;

.sct:链接控制文件;

.lnp:连接器传递命令文件;

·······

这类文件还有很多,重要性不强,不一一说明了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • keil
    +关注

    关注

    69

    文章

    1214

    浏览量

    167437
  • MAP
    MAP
    +关注

    关注

    0

    文章

    49

    浏览量

    15193
  • C编译器
    +关注

    关注

    1

    文章

    39

    浏览量

    13999
  • 预处理器
    +关注

    关注

    0

    文章

    13

    浏览量

    2250
收藏 人收藏

    评论

    相关推荐

    ads1174中的DIN脚的功能说是Daisy-chain,它的作用是什么?

    我看的ads1174中的DIN脚的功能说是Daisy-chain,也就是雏菊链的意思,请问他的作用是什么?求解答
    发表于 02-05 06:23

    AWG电缆的常见材料类型

    美国线规(AWG)是种用于指定电线直径的标准化系统,它在美国广泛使用。AWG系统基于电线的直径,数字越小,电线越粗。电线的材料类型对于其性能、成本和应用至关重要。以下是一些AWG电缆的常见
    的头像 发表于 01-13 17:19 349次阅读

    keil在Debug的高级用法

    节软件说明Keil提供了包括C编译器、宏汇编、链接器、库管理和功能强大的仿真调试器等在内的完整开发方案,通过
    的头像 发表于 12-26 21:01 495次阅读
    <b class='flag-5'>keil</b>在Debug的高级用法

    常见的PCB元件封装类型

    各自特定的封装类型。了解并正确选择这些封装对于PCB设计至关重要。 以下是一些常见的PCB元件封装类型: 1、BGA(ball grid array) 球形触点陈列,表面贴装型封装之
    的头像 发表于 11-19 10:04 875次阅读

    一些常见的动态电路

    无论是模电还是数电,理论知识相对来说还是比较枯燥,各种电路原理理解清楚不算容易,换种生动形象的方式或许会增加一些趣味性,也更容易理解这些知识。下面整理了一些常见的电路,以动态图形的方
    的头像 发表于 11-16 09:26 531次阅读
    <b class='flag-5'>一些</b><b class='flag-5'>常见</b>的动态电路

    分享一些常见的电路

    理解模电和数电的电路原理对于初学者来说可能比较困难,但通过一些生动的教学方法和资源,可以有效地提高学习兴趣和理解能力。 下面整理了一些常见的电路,以动态图形的方式展示。 整流电路 单相桥式整流
    的头像 发表于 11-13 09:28 440次阅读
    分享<b class='flag-5'>一些</b><b class='flag-5'>常见</b>的电路

    Modbus协议诊断功能说明

    08功能码仅用于串行链路,主要用于检测主设备和从设备之间的通信故障,或检测从设备的各种内部故障,该功能码不支持广播。为了区别各诊断类型,查询报文中提供了2字节的子功能码字段。
    的头像 发表于 11-05 10:33 368次阅读

    检测系统中常见的信号类型有哪些

    在检测系统中,常见的信号类型多种多样,这些信号类型根据被测物理量的不同而有所区别。以下是一些常见的信号
    的头像 发表于 10-15 13:57 774次阅读

    常见的遥感数据源有哪些类型

    常见的遥感数据源类型,以及它们的一些特点和应用: 光学遥感数据源 全色影像 :使用单个波段捕捉图像,通常具有较高的空间分辨率。 多光谱影像 :在同时间通过多个波段捕捉图像,用于分析地
    的头像 发表于 09-04 14:33 1019次阅读

    常见的shell命令之文件操作相关命令

    重定向可以创建带内容的文件。参数:echo 内容或者“内容” > 文件示例:3、file查看文件类型命令:file功能:读取文件头并识
    发表于 08-19 10:01

    国内市场上一些主流EDA软件功能与性能综合对比

    的兼容性方面表现相对较弱,但仍支持常见的格式文件导入导出,能够满足般设计需求。尽管其兼容性不如Altium Designer和PADS全面,但TARGET3001!简洁的操作界面和基本的兼容
    发表于 08-13 09:54

    接口测试的测试点有哪些类型

    接口测试是软件测试的个重要组成部分,主要用于验证系统各模块之间的接口是否按照预期工作。接口测试的测试点类型繁多,以下是一些常见的测试点类型
    的头像 发表于 05-30 15:04 2067次阅读

    安装keil5后在写代码之前需要进行什么配置?

    吗?? 3.有些资料说要建立一些文件夹,并下载en.stsw-stm32054.zip文件,将里面的东西手动移动到建立的文件夹下,这个压缩包就是固件库吗?这
    发表于 04-25 06:18

    集成芯片有哪些类型

    集成芯片是现代电子技术中至关重要的组成部分,其类型繁多,功能各异。以下是一些常见的集成芯片类型及其简要介绍。
    的头像 发表于 03-20 17:13 948次阅读

    晶振电路中电容电阻的一些基本原理和作用解析

    晶振电路中的电容和电阻是调整和维持晶振振荡稳定性的关键元件。KOAN凯擎小妹带大家了解下晶振电路中电容电阻的一些基本原理和作用
    的头像 发表于 02-20 16:22 1910次阅读
    晶振电路中电容电阻的<b class='flag-5'>一些</b>基本原理和<b class='flag-5'>作用</b>解析