編寫MCU程序后,我們必須將程序下載到MCU的內(nèi)存中,然后MCU將根據(jù)程序員的邏輯執(zhí)行命令以實現(xiàn)功能。
我之前也討論過幾種下載MCU的方法,例如ISP下載和JTAG下載。
下載文件的最常見格式是十六進制文件。
這種格式是眾所周知的。
還有一個bin文件,即MCU的下載文件。
這兩種格式之間的差異如下所述。
HEX文件和BIN文件是我們經(jīng)常遇到的兩種文件格式。
下面簡要介紹這兩種文件格式之間的區(qū)別:1.十六進制文件包含地址信息。
當(dāng)使用ISP方法刻錄程序時,我們都有這樣的經(jīng)驗:1)選擇MCU型號; 2)選擇串口號; 3)設(shè)置波特率(或默認); 4)選擇下載的文件; 5)點擊下載按鈕下載。
如下所示。
這些步驟之后,程序下載工作完成。
在上述步驟中,我們沒有選擇將程序下載到微控制器的哪個存儲器,也就是說,無需設(shè)置地址。
因為HEX文件中的信息已包含地址。
對BIN文件進行編程時,用戶必須指定地址信息。
微控制器下載更多的十六進制文件。
2. BIN文件格式僅包含數(shù)據(jù)本身,不包含地址。
bin文件本身只是數(shù)據(jù),不包含地址信息。
因此,在下載bin文件時,需要選擇內(nèi)存的起始地址和結(jié)束地址,即將bin文件下載到指定的Memory空間。
通常,需要指定程序存儲器地址的芯片是ARM芯片和DSP芯片。
3.HEX文件的大小不同于BIN文件。
對于bin文件,通過右鍵單擊屬性查看的文件大小是數(shù)據(jù)的實際大小。
對于HEX文件,您看到的文件大小不是實際的數(shù)據(jù)大小。
一個是因為HEX文件使用ASCII表示數(shù)據(jù),另一個是因為HEX文件本身還包含其他附加信息。
十六進制文件的大小應(yīng)如何顯示?我以前曾介紹過查看方法,而忘記了這些方法的人可以單擊下面的鏈接查看:相關(guān)文章推薦:您編寫的MCU程序有多大,您知道嗎? (點擊查看)下載MCU程序的方式有哪些? (單擊查看)Modbus-RTU常用功能代碼簡介03、06、16什么是TCP / IP協(xié)議?免責(zé)聲明:本文內(nèi)容經(jīng)21ic授權(quán)后發(fā)布,版權(quán)歸原作者所有。
該平臺僅提供信息存儲服務(wù)。
本文僅代表作者的個人觀點,并不代表該平臺的立場。
如有任何疑問,請與我們聯(lián)系,謝謝!