STC單片機(jī)Keil中C語(yǔ)言函數(shù)定位的方法
推薦 + 挑錯(cuò) + 收藏(0) + 用戶評(píng)論(0)
STC單片機(jī)Keil中C語(yǔ)言函數(shù)定位的方法:STC單片機(jī)Keil中C語(yǔ)言函數(shù)定位的方法
下面以演示程序進(jìn)行說(shuō)明
演示程序中有ReadIAP、ProgramIAP和EraseIAP三個(gè)函數(shù)
最終目的是將這三個(gè)函數(shù)都定位到0x8000之后
第一步:新建一個(gè)項(xiàng)目“Demo”,并將源文件“Demo.C”添加到項(xiàng)目中
第二步:直接編譯,并打開(kāi)編譯后生成的“Demo.M51”文件
從M51文件的“CODE MEMORY”信息中,可以看到3個(gè)函數(shù)的鏈接名稱、鏈接地址和函數(shù)長(zhǎng)度
ReadIAP的鏈接名稱為“?PR?_READIAP?DEMO”,鏈接地址為“0003H”,長(zhǎng)度為16H字節(jié)
ProgramIAP的鏈接名稱為“?PR?_PROGRAMIAP?DEMO”,鏈接地址為“0019H”,長(zhǎng)度為16H字節(jié)
EraseIAP的鏈接名稱為“?PR?_ERASEIAP?DEMO”,鏈接地址為“0044H”,長(zhǎng)度為14H字節(jié)
第三步:根據(jù)M51中函數(shù)的長(zhǎng)度信息計(jì)算出各個(gè)函數(shù)重定位的地址,
ReadIAP的重定位的地址為0x8000
ProgramIAP的重定位的地址為0x8016
EraseIAP的重定位的地址為0x802C
第四步:打開(kāi)項(xiàng)目選項(xiàng)中的“BL51 Locate”屬性頁(yè)
在上圖的“Code”域中輸入下列語(yǔ)句“?PR?_READIAP?DEMO(0x8000), ?PR?_PROGRAMIAP?DEMO(0x8016), ?PR?_ERASEIAP?DEMO(0x802C)”
?
第五步:點(diǎn)擊確定按鈕,并重新編譯即可,此時(shí)可以重新打開(kāi)“Demo.M51”文件,便可發(fā)現(xiàn)3個(gè)函數(shù)已被重定位到我們所指定的地址了。
非常好我支持^.^
(0) 0%
不好我反對(duì)
(1) 100%
下載地址
STC單片機(jī)Keil中C語(yǔ)言函數(shù)定位的方法下載
相關(guān)電子資料下載
- 【AWTK使用經(jīng)驗(yàn)】如何播放視頻或攝像頭畫面 41
- 在Node-RED中如何用ModbusTCP采集存儲(chǔ)Influxdb 1249
- 51單片機(jī)STC8H8K64U通過(guò)RA8889/RA8876如何控制彩屏 I2C源碼下載 133
- STC32和STC8H驅(qū)動(dòng)DS18B20測(cè)溫串口發(fā)送數(shù)據(jù) 142
- 觸摸屏與羅克韋爾AB PLC之間 ModbusTCP/IP無(wú)線以太網(wǎng)通訊實(shí)例 907
- 通過(guò)視頻幀提取及批量取模轉(zhuǎn)換實(shí)現(xiàn)基于STC32的點(diǎn)陣LED動(dòng)畫播放 107
- 面試中的高頻問(wèn)題:指針函數(shù)與函數(shù)指針,你能完美應(yīng)對(duì)嗎? 121
- DLT645(1997-2007)轉(zhuǎn)modbus規(guī)約網(wǎng)關(guān)使用說(shuō)明 337
- PLC編程語(yǔ)言和C語(yǔ)言的區(qū)別 444
- 數(shù)字濾波器是如何工作的 221