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

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

3天内不再提示

hex文件与bin文件有什么区别?

STM32嵌入式开发 来源:玩转嵌入式 作者:振兴 2021-06-15 14:43 次阅读

单片机程序编译之后,除了生成hex文件之外还生成了bin文件,实际它们都是单片机的下载文件,下文介绍它们的区别。Hex Hex文件包含地址信息。 在用ISP方式烧写程序时,有这样的经验:

选择单片机型号

选择串口号

设置波特率(或者默认)

选择下载的文件

点击下载按钮下载

在串口工具中,操作如下图红框所示。

pYYBAGDITNKAILUpAADtJtv5eug796.jpg

经过这几步后,程序下载工作就完成了,在以上的步骤中我们并没有选择要把程序下载到单片机的哪块内存中,即不需要设置地址。因为HEX文件内部的信息已经包括了地址。

单片机一般是下载hex文件。BIN BIN文件格式只包括了数据本身,没有包含地址。烧写BIN文件的时候,用户是一定需要指定地址信息的。

所以在下载bin文件时需要选择内存的起始地址和终止地址,即要把bin文件下载到指定的内存空间。

通常需要指定程序内存地址的芯片ARM芯片和DSP芯片。文件大小

对于bin文件,通过右键属性查看到的文件的大小就是数据的实际大小。

而对HEX文件而言,你看到的文件大小并不是实际的数据的大小。一是因为HEX文件是用ASCII来表示数据,二是因为HEX文件本身还包括别的附加信息。

责任编辑:lq6

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

    关注

    0

    文章

    34

    浏览量

    16708

原文标题:单片机中hex、bin文件的区别

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    keil如何生成bin文件

    Keil是一种集成开发环境(IDE),专为ARM架构的嵌入式系统开发而设计。在Keil中生成bin文件是将代码编译并转换为可执行文件的过程。本文将详细介绍Keil生成bin
    的头像 发表于 12-15 13:43 1948次阅读

    Keil分散加载文件浅析

    ARM 映像文件其实就是源文件经编译器生成的目标文件,一般是bin文件或者hex
    的头像 发表于 11-17 10:00 1024次阅读
    Keil分散加载<b class='flag-5'>文件</b>浅析

    DIY发光圣诞树相关文件(PCB板、hex文件

    电子发烧友网站提供《DIY发光圣诞树相关文件(PCB板、hex文件).rar》资料免费下载
    发表于 11-10 09:56 0次下载
    DIY发光圣诞树相关<b class='flag-5'>文件</b>(PCB板、<b class='flag-5'>hex</b><b class='flag-5'>文件</b>)

    请问源文件.c和.cpp什么区别呢?

    文件.c和.cpp什么区别呢?keil里面为什么两种都支持?为什么不只用一种就行了?搞两个同样的话,这不科学啊
    发表于 11-08 07:58

    HEX文件BIN文件都是下载文件,为啥大小相差这么大?

    HEX文件BIN文件都是下载文件,为啥大小相差这么大
    发表于 10-13 06:43

    单片机Hex文件的格式详解

    玩单片机的朋友都会使用hex文件作为烧录文件。那么当我们写一个在线升级软件要支持hex文件的升级,就需要通过
    的头像 发表于 09-24 11:50 2197次阅读
    单片机<b class='flag-5'>Hex</b><b class='flag-5'>文件</b>的格式详解

    单片机中hexbin文件区别

    单片机中hexbin文件区别
    的头像 发表于 09-21 17:38 1228次阅读
    单片机中<b class='flag-5'>hex</b>、<b class='flag-5'>bin</b><b class='flag-5'>文件</b>的<b class='flag-5'>区别</b>

    MDK使用SRecord对镜像自动添加校验值并转bin文件

    MDK使用SRecord对镜像自动添加校验值并转bin文件
    的头像 发表于 09-19 14:15 1261次阅读
    MDK使用SRecord对镜像自动添加校验值并转<b class='flag-5'>bin</b><b class='flag-5'>文件</b>

    SMT32的HEX文件里加入固件版本的方法

    SMT32的HEX文件里加入固件版本的方法
    的头像 发表于 09-18 15:34 379次阅读
    SMT32的<b class='flag-5'>HEX</b><b class='flag-5'>文件</b>里加入固件版本的方法

    NUC972DF61Y与NUC972DF62Y具体什么区别

    是: 1、NUC972DF61Y 与 NUC972DF62Y具体什么区别? 2、打包烧写程序bin时就必须区别61Y还是62Y吗? 3、如果是这样的话,生产上还得做二个烧写包,能不能
    发表于 09-01 07:11

    bin文件转C语言可以做吗?

    说实话,在我的认知里,bin文件转C语言是不可能的,即便能转,也是那种非常简单的程序,比如:点灯。
    的头像 发表于 08-17 09:04 1108次阅读
    <b class='flag-5'>bin</b><b class='flag-5'>文件</b>转C语言可以做吗?

    NucleiStudio创建项目时,各类文件什么区别

    每次新建工程时都有一系列选项,那么这些不同的选项之间什么区别呢? 如上图,这四个大项目以及下面的小项目之间什么区别呢? 这些模板之间
    发表于 08-16 06:23

    嵌入式的HEX文件怎么来的

    单片机下载程序需要将c文件通过编译器编译成o文件通过连接器连接为一个main的o文件,再将main文件生成hex
    的头像 发表于 05-25 15:05 1739次阅读
    嵌入式的<b class='flag-5'>HEX</b><b class='flag-5'>文件</b>怎么来的

    IDF AT Bin和Qcloud IoT AT什么区别

    IDF AT Bin 和 Qcloud IoT AT 什么区别?ESP8266 RTOS SDK和NONOS SDK什么区别? 如果我安
    发表于 05-12 06:50

    浅析HEXBIN文件

    BIN文件是单纯的二进制程序文件,内部没有地址信息。如果使用BIN文件烧录程序时,需要指定下载地址。
    的头像 发表于 04-24 17:32 3099次阅读
    浅析<b class='flag-5'>HEX</b>和<b class='flag-5'>BIN</b><b class='flag-5'>文件</b>