找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2332|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

stm32 51讓單片機(jī)項(xiàng)目運(yùn)行在內(nèi)存中

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:576025 發(fā)表于 2022-2-28 16:58 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
stm32 51讓單片機(jī)項(xiàng)目運(yùn)行在內(nèi)存中  stm32 51讓單片機(jī)項(xiàng)目運(yùn)行在內(nèi)存中
注意:
    RAM要查詢芯片手冊,找到其容量,而工程固件(hex)文件不要大于RAM的容量。。。

1 三種啟動(dòng)模式,根據(jù)說明配置相應(yīng)引腳的電平。 2
2 Project manager 里面增加一個(gè)編譯目標(biāo)選項(xiàng) 2
3 選擇編譯目標(biāo)選項(xiàng)3
4 進(jìn)行內(nèi)存配置4
41 Output 配置: 5
5 添加宏定義 VECT_TAB_SRAM(中斷向量搬移到 SRAM)/逗號要加上。6
6 勾選相關(guān)選項(xiàng)7
7 debug 頁面勾選 Load Application at Startup(如果取消勾選此選項(xiàng)則 Debug 時(shí)打斷點(diǎn)無效,即 不能真正的仿真調(diào)試,建議勾選)并在 Initialization File 添加文件8
71 注意 9
72 Debug 選項(xiàng)的其它默認(rèn)配置:10
8 程序下載相關(guān)配置12
9 Utilities 頁面,勾選 Update Target before Debugging。 13
91 注意 14
10 保存工程14
11 編譯工程(0 錯(cuò)誤 0 警告) 15
12 板子和電腦用 ST-Link v2 連接好 16
13 首次上電使用需下載程序到板子上(顯示 ok) 16
14 進(jìn)入 DeBug 17
15 效果 18
16 調(diào)試完成而最終產(chǎn)品定型時(shí)---把引腳轉(zhuǎn)換成 FLASH 啟動(dòng)及相關(guān)配置 20


1.  三種啟動(dòng)模式,根據(jù)說明配置相應(yīng)引腳的電平。(這里選擇 SRAM 即 RAM 啟動(dòng)需 BOOT0
和 BOOT1 皆為高電平/記得加電阻限流)




2.
Projectmanager里面增加一個(gè)編譯目標(biāo)選項(xiàng)







































3.
選擇編譯目標(biāo)選項(xiàng)




4.
進(jìn)行內(nèi)存配置




4
.1Output配置:




5.
添加宏定義 VECT_TAB_SRAM(中斷向量搬移到SRAM)/逗號要加上。




6.
勾選相關(guān)選項(xiàng)



7.debug頁面勾選 LoadApplicationatStartup(如果取消勾選此選項(xiàng)則 Debug時(shí)打斷點(diǎn)無效,

即不能真正的仿真調(diào)試,建議勾選)并在 InitializationFile添加文件
文件內(nèi)容如下:


FUNC void Setup (void) { SP = _RDWORD(0x20000000); //設(shè)置堆棧指針 PC =
_RDWORD(0x20000004); //設(shè)置 PC 指針 _WDWORD(0xE000ED08, 0x20000000); //設(shè)置
中斷向量表地址 } //工程配置選項(xiàng)請勾選"Load Application arStartup"


LOAD              ..\Objects\led.axf              INCREMENTAL             // 裝 載 代 碼 到              CPU              內(nèi) 部
RAM(Objects\led.axf 自己工程的路徑和文件名) Setup(); //再調(diào)用 Setup 函數(shù)修改
堆棧指針和 PC 指針 因?yàn)?SP 的值要從目標(biāo)代碼中讀取 g, main //運(yùn)行到 main 函數(shù)

文件里面的 Objects\led.axf 需要更換成你的編譯輸出目錄和文件名,參考第 4 步 Output 配置部分。




7
.1注意:如若取消勾選 LoadApplicationatStartup選項(xiàng)則 debug時(shí)打的斷點(diǎn)將失去作用。



7.2 Debug 選項(xiàng)的其它默認(rèn)配置:





8.
程序下載相關(guān)配置


9.Utilities頁面,勾選 UpdateTargetbeforeDebugging。




9.1注意:如若不勾選 Update Target before Debugging 則每次更改完程序后要重新下載程序到

芯片內(nèi)才能使用 DEBUG 調(diào)試。






































10.保存工程




11.
編譯工程(0錯(cuò)誤 0警告)


12.板子和電腦用 ST-Linkv2連接好










































13.首次上電使用需下載程序到板子上(顯示 ok)



首次上電使用需下載。若勾選了 Update Targetbefore Debugging(第 9 步)中途更改過代碼但沒 斷過電源則無需下載亦能 debug








































14.進(jìn)入 DeBug































1
5.效果(成功了,當(dāng)把電源拔掉時(shí)數(shù)據(jù)丟失,即成功把程序下載到 SRAM中運(yùn) 行了,調(diào)試時(shí)應(yīng)該多使用此方法以減少燒錄 flash的次數(shù) 延長芯片 flash的壽 命的效果。當(dāng)調(diào)試完成而最終產(chǎn)品定型時(shí)記得把引腳轉(zhuǎn)換成 FLASH啟動(dòng)...)




16.調(diào)試完成而最終產(chǎn)品定型時(shí)---把引腳轉(zhuǎn)換成FLASH啟動(dòng)及相關(guān)配置...






以上圖文的pdf格式文檔下載(內(nèi)容和本網(wǎng)頁上的一模一樣,方便大家保存):
本文的pdf格式.pdf (2.94 MB, 下載次數(shù): 9)

評分

參與人數(shù) 1黑幣 +70 收起 理由
admin + 70 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表