本文轉(zhuǎn)自公眾號(hào),歡迎關(guān)注
https://mp.weixin.qq.com/s/uzaGLFTDBAn8wyR84yaiIw
1. 下載軟件
1.1 下載SRecord
進(jìn)入網(wǎng)址https://sourceforge.net/projects/srecord/,下載最新版本SRecord。
1.2 解壓壓縮包,復(fù)制下面的exe文件到工程下
與uvprojx工程文件保持同一目錄
2. 配置MDK
2.1 編輯腳本
1)新建名字為crchex2bin的txt文件,改后綴名為bat。
2)在crchex2bin.bat下添加以下內(nèi)容
copy .XXXX_XXXoutputXXXX_XXX.hex .
.srec_cat .XXXX_XXX.hex -intel -crop 0x08000000 0x0803FFFC -fill 0x00 0x08000000 0x0803FFFC -crc32-l-e 0x0803FFFC -o .XXXX_XXX_Check.hex -intel -obs=16
.srec_cat .XXXX_XXX.hex -intel -offset -0x8000000 -o .XXXX_XXX.bin -binary
.srec_cat .XXXX_XXX_Check.hex -intel -offset -0x8000000 -o .XXXX_XXX_Check.bin -binary
其中copy .XXXX_XXXoutputXXXX_XXX.hex .表示將optput下生成的hex文件復(fù)制到工程所在目錄。
.srec_cat .XXXX_XXX.hex -intel -crop 0x08000000 0x0803FFFC -fill 0x00 0x08000000 0x0803FFFC -crc32-l-e 0x0803FFFC -o .XXXX_XXX_Check.hex -intel -obs=16
表示將intel格式的XXXX_XXX.hex的地址 0x08000000 到0x0803FFFC處的值復(fù)制到新的文件XXXX_XXX_Check.hex的 0x08000000 到0x0803FFFC地址處,不足處填充0x00。并且對(duì)原始數(shù)據(jù)的地址 0x08000000 到0x0803FFFC處的值計(jì)算小端模式crc32值,填充在新的文件的0x0803FFFC地址處。新的文件的格式也是intel,并且一行記錄16個(gè)字節(jié)的數(shù)據(jù)。
.srec_cat .XXXX_XXX.hex -intel -offset -0x8000000 -o .XXXX_XXX.bin -binary
表示將hex文件轉(zhuǎn)換成bin文件,地址偏移-0x08000000,即hex文件的地址0x08000000,對(duì)應(yīng)到bin文件的地址0。
.srec_cat .XXXX_XXX_Check.hex -intel -offset -0x8000000 -o .XXXX_XXX_Check.bin -binary
同上
2.2 使能配置生成hex文件
2.3 配置添加用戶腳本
3. 生成和驗(yàn)證
3.1自動(dòng)生成
編譯后會(huì)自動(dòng)調(diào)用腳本添加crc值和hex轉(zhuǎn)bin文件。
生成文件如下:
3.2 校驗(yàn)
使用文本比較工具Araxis Merge對(duì)比TY38_EPS_Check.hex和TY38_EPS.hex,發(fā)現(xiàn)在后面填充了0x00,并且在最后填充了CRC值0xA055E2F8
使用二進(jìn)制編輯工具010 Editor 對(duì)比XXXX_XXX_Check.bin和XXXX_XXX.bin,發(fā)現(xiàn)在后面填充了0x00,并且在最后填充了CRC值0xA055E2F8
在010 Editor中將TY38_EPS_Check.bin的最后四字節(jié)刪除
另存為
tocheck.bin。
打開網(wǎng)頁 http://www.atool9.com/file_hash.php
將tocheck.bin文件拖放到網(wǎng)頁里,只勾選CRC32
查看crc值為0xA055E2F8。與自動(dòng)計(jì)算的一致。
4. 參考
Keil官方文檔《an277.pdf》
二進(jìn)制編輯工具《010 Editor》
文本比較工具《Araxis Merge》
CRC在線工具《http://www.atool9.com/file_hash.php》
審核編輯:湯梓紅
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19104瀏覽量
304777 -
文件
+關(guān)注
關(guān)注
1文章
565瀏覽量
24725 -
MDK
+關(guān)注
關(guān)注
4文章
209瀏覽量
32063 -
腳本
+關(guān)注
關(guān)注
1文章
389瀏覽量
14858
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論