实现IAR下S19、Bin、Hex文件格式转换小技巧


     

    本文首先来说说这三个文件格式的来头。bin文件是我们最常见的二进制文件,它是纯数据文件,也即是“所见即所得”,所以如果我们想看看需要下载到单片机flash的数据的大小,最简单的方法就是查看我们编译连接后生成的bin文件大小;hex文件则是Intel很早就推出的一种文件格式(Intel还是一如既往的很牛逼啊有木有),它除了有效数据信息之外还包含了一些多余信息(包括地址信息,校验码之类的等等信息),所以hex文件是很大的,而最终下到单片机的flash里的仍是其中的有效数据段,而其他的信息段则是作为flash编程软件的辅助信息的(包括地址信息)。因此我们常见的问题就来了,如果烧写或者下载Bin文件时,软件会弹出首地址框输入相应地址信息,而在烧写Hex文件的时候则不必再输入地址信息了,因为Hex里面已经包含了。嘿嘿,有“中枪”遇到这种情况的没,这就是原因啦。至于S19文件则是飞思卡尔提出的文件格式,与Hex原理类似,只不过格式不一样罢了。这里光原理就说了这么多了,所以至于具体Hex和S19文件格式我就不过做介绍了,大家可以google之,哈哈~

    好了,前面说了说理论基础,下面就说说具体怎么操作了,非常之简单,简单的我都不好意思说了,所以只能上图了,哈哈:

    如上图所演示的那样,相应的设置选择好了,点击“OK”,然后再make一下,就可以在工程根目录下的FLASH_512KB_PFLASHExe文件下找到刚才所选格式的文件了,如果你想再次生成别的格式的文件的话那再重新设置一次就可以了,而且不会覆盖其他格式的文件,然后你就可以用flash烧写软件把刚刚生成文件烧写到单片机里面去了。如果是Kinetis的话,建议看看我以前写的一篇《【原创】教你用J-Flash ARM工具单独烧写程序到Kinetis》博客,里面详细说了生成烧写文件之后该干的事了,哈哈,很配套吧。。。

    喝口水先~~其实很简单是吧,呵呵,IAR的强大还待我们去开发,未来某段时间我还会奉上关于IAR的一些丰富多彩的实用技巧,敬请期待,哈哈,未完待续~

你可能感兴趣的:(实现IAR下S19、Bin、Hex文件格式转换小技巧)