前言:
記錄build生成的hex檔案各段的大小,了解Hex檔案格式及其前8個位元組內容含義,
最終生成的 hex 檔案的各段大小

hex檔案各段大小:
:020000040800F2
:100000000006002031010008390100083B0100080A
:100010003D0100083F010008410100080000000008
:100020000000000000000000000000004301000884
:1000300045010008000000004701000849010008D0
:100040004B0100084B0100084B0100084B01000860
:100050004B0100084B0100084B0100084B01000850
:100060004B0100084B0100084B0100084B01000840
:100070004B0100084B0100084B0100084B01000830
:100080004B0100084B0100084B0100084B01000820
:100090004B0100084B0100084B0100084B01000810
:1000A0004B0100084B0100084B0100084B01000800
:1000B0004B0100084B0100084B0100084B010008F0
:1000C0004B0100084B0100084B0100084B010008E0
:1000D0004B0100084B0100084B0100084B010008D0
:1000E0004B0100084B0100084B0100084B010008C0
:1000F0004B0100084B0100084B0100084B010008B0
:100100004B0100084B0100084B0100084B0100089F
:100110004B0100084B0100084B0100084B0100088F
:100120004B0100084B0100084B0100084B0100087F
:100130000948804709480047FEE7FEE7FEE7FEE77B
:10014000FEE7FEE7FEE7FEE7FEE7FEE704480549B7
:10015000054A064B7047000041020008990200085A
Hex檔案格式及其前8個位元組內容含義,
|020000040800F2 | |
|02–|-這個記錄當中資料位元組的數量-|
| 0000 |地址域,對于擴展線性地址記錄,這個域總是 0000 |
| |
|-04-|-記錄型別 04 (擴展線性地址記錄)-|
| 0800 | 是地址的高 16 位 |
| |
|-F2-|-是這個記錄的校驗和,計算方法:01h + NOT(02h + 00h + 00h + 04h + 08h + 00h)-|
| | |
新建工程:
打開keil,點擊選單欄的Project,如下圖所示;

在彈出的視窗點擊New uVision Project,創建新的工程
在彈出的視窗分別設定;
設定專案工程的路徑;
設定專案工程的名稱,這里使用TEST;
點擊保存;
配置環境:
設定工程的目標環境,本文基于STM32F103ZE,因此在彈出的視窗選擇相應的選項,點擊保存即可,
如果無法找到該視窗,可以在工具列點擊魔術棒圖示;如下圖所示;
ARM的CMSIS已經把開發所需要的軟體組件都封裝好了,因此直接選擇即可;
CMSIS下選擇CORE;
Device下Startup,其中包含了啟動檔案;
添加源檔案


添加源檔案,因為創建匯編專案;
選擇 Asm File (.s) ,創建匯編檔案;
設定源檔案的名稱;
點擊保存;

源代碼如下:
AREA MYDATA, DATA
AREA MYCODE, CODE
ENTRY
EXPORT __main
__main
MOV R0, #10
MOV R1, #11
MOV R2, #12
MOV R3, #13
;LDR R0, =func01
BL func01
;LDR R1, =func02
BL func02
BL func03
LDR LR, =func01
LDR PC, =func03
B .
func01
MOV R5, #05
BX LR
func02
MOV R6, #06
BX LR
func03
MOV R7, #07
MOV R8, #08
BX LR
仿真器設定:

然后點擊debug,在“Debug”選項卡中選擇“Use Simulator”,表示使用軟體仿真;選擇“Run to main()”則表示跳過匯編代碼,直接跳轉到main函式開始仿真,設定下面的“Dialog DLL”項為“DARMSTM.DLL”和“TARMSTM.DLL”;parameter項為“-pSTM32F103C8”,用于設定支持STM32F103C8的軟硬體仿真,
編譯除錯:


參考文獻:https://blog.csdn.net/u010632165/article/details/106481146
總結:本次實驗按照指導指示,只有到了結果那一塊才有了一些問題,經過老師的指導,我了解到自己的問題所在——未造成回圈,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/302767.html
標籤:其他
上一篇:醫院人事管理系統
