今天有點小激動,搞了大半年的課題終于有點成果了,眼淚嘩嘩的,太不容易了,哈哈。所以趁著心情大好手感大好的時候,抓緊更更博客了。另外從零入手系列好久沒更新了,也有博友問我啥時候更新,哎,大家的熱情我還是很感激的,最近一直在搞 FPGA這塊,Kinetis那部分放下一段時間了,不過用不了多長時間就會繼續(xù)更新了。其實FPGA搞了一段時間發(fā)現(xiàn)還是搞ARM更順手些,習慣了C的順序編程,F(xiàn)PGA的并行編程一時之間還真轉不過這個彎來,哈哈~
本篇內(nèi)容自己早就想好了,只不過不是被事耽擱就是手感不好就沒有寫出來,今天就拿出來說說吧,不然再過段時間就被我塵封在大腦皮層的深處了,呵呵。其實內(nèi)容很簡單,無非就是對IAR環(huán)境的設置(咳咳,可以說一點技術含量都沒有),不過本篇博客核心思想是開闊一下大家的思路“原來這樣就可以”。。。另外本篇最后給出了用CW自帶的格式轉換工具的用法鏈接,那部分是從飛思卡爾技術社區(qū)的安版主寫的,有興趣的可以去看看。下面進入正題吧:
首先說說這三個文件格式的來頭。bin文件是我們最常見的二進制文件,它是純數(shù)據(jù)文件,也即是“所見即所得”,所以如果我們想看看需要下載到單片機flash的數(shù)據(jù)的大小,最簡單的方法就是查看我們編譯連接后生成的bin文件大小;hex文件則是Intel很早就推出的一種文件格式(Intel還是一如既往的很牛逼啊有木有),它除了有效數(shù)據(jù)信息之外還包含了一些多余信息(包括地址信息,校驗碼之類的等等信息),所以hex文件是很大的,而最終下到單片機的flash里的仍是其中的有效數(shù)據(jù)段,而其他的信息段則是作為flash編程軟件的輔助信息的(包括地址信息)。因此我們常見的問題就來了,如果燒寫或者下載Bin文件時,軟件會彈出首地址框輸入相應地址信息,而在燒寫Hex文件的時候則不必再輸入地址信息了,因為Hex里面已經(jīng)包含了。嘿嘿,有“中槍”遇到這種情況的沒,這就是原因啦。至于S19文件則是飛思卡爾提出的文件格式,與Hex原理類似,只不過格式不一樣罷了。這里光原理就說了這么多了,所以至于具體Hex和S19文件格式我就不過做介紹了,大家可以google之,哈哈~
好了,前面說了說理論基礎,下面就說說具體怎么操作了,非常之簡單,簡單的我都不好意思說了,所以只能上圖了,哈哈:
、
如上圖所演示的那樣,相應的設置選擇好了,點擊“OK”,然后再make一下,就可以在工程根目錄下的FLASH_512KB_PFLASHExe文件下找到剛才所選格式的文件了,如果你想再次生成別的格式的文件的話那再重新設置一次就可以了,而且不會覆蓋其他格式的文件,然后你就可以用flash燒寫軟件把剛剛生成文件燒寫到單片機里面去了。如果是Kinetis的話,建議看看我以前寫的一篇《【原創(chuàng)】教你用J-Flash ARM工具單獨燒寫程序到Kinetis》博客,里面詳細說了生成燒寫文件之后該干的事了,哈哈,很配套吧。。。
喝口水先~~其實很簡單是吧,呵呵,IAR的強大還待我們?nèi)ラ_發(fā),未來某段時間我還會奉上關于IAR的一些豐富多彩的實用技巧,敬請期待,哈哈,未完待續(xù)~